Features

Everything it does, in one place

Every item on this page is in animaEngine 1.5.1 today. Most of the livelier parts are off until you turn them on.

Characters and animation

Anything you can draw or record can live on your desktop.

Drop, paste or pick a file
Drag a picture or a short video onto the overlay, paste one copied in any app with Ctrl+V, or choose it with Add file… through the desktop’s file chooser.
The formats you already have
Static PNG and JPEG, animated GIF and WebP with their frame delays, animated PNG, folders of numbered PNG frames, grid-sliced sprite sheets, and H.264 video up to about twenty seconds.
Ten built-in characters
A ghost, a slime, a heart, a star, a cat, a bunny, a frog, a robot, a cloud and a mushroom, each with its own drawings for walking, falling, being picked up and sleeping.
Animation curves
Linear, ease in, ease out, ease in-out, sine and bounce-out reshape per-frame timing while keeping the loop’s total duration.
Asset library
A searchable grid of everything in your asset folder; adding from it goes through the same validation as a drop.

Behaviour

Characters can stand still, or do a lot more — as much as you want.

Built-in behaviours
Idle, walk around, wander inside bounds, bounce, follow the cursor, follow another character, or play tag with one.
Taps and greetings
With “Characters can be tapped” on, a click on a character makes it hop and speak while clicks elsewhere still reach your windows. Two characters who meet say hello.
Physics
Optional gravity: throw a character by letting go mid-swing; characters can bump into each other and land on each other’s heads.
Scripted behaviours
A character’s motion can be a small Rhai script from your library — sandboxed, with no file or network access and capped operations. Scripts can play sounds panned to the character’s position and react to overall machine load.
Moods and hours
Characters fade in and out, keep hours of their own, and can be livelier in the morning and slower at night.

Editing

Edit mode turns the overlay into a workspace; outside it, clicks go straight through.

A tabbed settings panel
Inspector, Scene, Library, Appearance and Keybindings, with sliders for every field and collapsible sections.
Several at once
Shift+click or drag a rectangle to select several characters, then move, change, duplicate, align or space them evenly. Drags snap to screen edges and to other characters.
Groups
Ctrl+G binds the selection into a named group that is selected and moved as one.
Undo and redo
Every edit — a move, a delete, a changed property, a preset’s Replace — can be undone with Ctrl+Z.
Command palette
Ctrl+K searches every action, theme and preset, and runs it in one keystroke.

Scenes and sharing

Arrangements you like can be kept, scheduled and passed on.

Named scenes
Save what is on screen under a name, with a picture, and switch from the Scene tab, the command palette, the tray, or at set times of day.
One file to share
A scene travels as a single .animascene file with its pictures; one character as .animachar or as a GIF; a .animabackup carries everything to another machine.
Presets
Ready-made scenes such as Cozy Companion, Productivity Zen and Halloween Party, appended or replacing what is there.

Around your day

Optional, and off until you turn it on.

Speech bubbles and reminders
Lines of their own, reminders of a break or a glass of water at intervals or at a set time; {time}, {day}, {date} and {name} are filled in, and screen readers hear what is said.
Focus timer and bedtime
A focus timer from the tray, the palette or the Scene tab, a bedtime, and snoozing for 15 minutes, an hour or until morning.
Away and back
While you are away the characters doze; when you return they welcome you back.
Sounds at your volume
One volume for everything, one for each character, quiet at bedtime, and mute from the tray, a shortcut or D-Bus.

Desktop integration

It behaves like a well-mannered part of your desktop.

Stays out of the way
Hides or pauses while a full-screen app or one you choose is in front, and can hold still on battery.
Multi-monitor
Characters per monitor, spanning all of them or on one; drag them across screens and pin one to a monitor.
Tray, shortcuts and D-Bus
A tray icon, rebindable global shortcuts (through the desktop’s portal on GNOME and KDE), a single instance, and start at login.
Shortcuts on any layout
Shortcuts work on AZERTY, QWERTZ, Cyrillic and other layouts and are shown the way your keyboard labels them.
Hot reload
Edit ~/.config/animaengine/config.toml while the app runs; it picks the change up within two seconds.

Accessibility and languages

Built to be used by everyone, with or without a mouse.

Screen readers
Orca and other AT-SPI screen readers can read and operate the settings on both Linux backends.
Without a mouse
Shift+F10 or the Menu key opens a character’s menu, Ctrl+A selects every character, N steps through them, and Tab moves through the panel.
Themes
Dark and Light, plus high-contrast versions of both that meet WCAG AAA, switchable without a restart.
Ten languages
English, Română, Español, Deutsch, Français, Italiano, Português (BR), Polski, Nederlands and 日本語, detected from LANG and switchable in Appearance.

Privacy and safety

A program that runs from login to shutdown should be trustworthy.

Zero network calls
No telemetry, no crash reporting, no update checks, no accounts. The diagnostic report goes only to your clipboard.
Bounded loaders
Files are refused above 4096 pixels a side or 256 MB once decoded, and video is kept to its first 600 frames, so a malicious file cannot exhaust memory.
Atomic writes
Config and cache are written atomically, so a crash cannot corrupt either; after one, anima-engine --recover restores the last scene.
Stable formats
Configs written by any 1.x release keep every value, and the stability policy lists what stays put across releases.

Supported files

What you can drop on the overlay. Larger or other files are refused with a message that says why.

TypeExtensionsNotes
Static image .png, .jpg, .jpeg Single frame
Animated PNG .png Plays every frame for as long as it asks (since 1.5.1)
Animated GIF .gif Per-frame delays preserved
WebP .webp Animated and static
PNG sequence folder of frame_*.png Decoded in parallel
Sprite sheet .png with columns × rows Grid sliced automatically
Video .mp4, .m4v, .mov H.264 only, audio ignored, about 20 seconds at most