Skip to content
astrofox-ioPublic

About

Astrofox is a motion graphics program that lets you turn audio into stunning visuals.

Topics

Resources

Stars

2.0k stars

Watchers

25 watching

Forks

Repository files navigation

Astrofox

What is it?

Astrofox is a motion graphics program that lets turn audio into amazing videos.

Quick links

Running Astrofox

Get the source

git clone https://github.com/astrofox-io/astrofox.git

Install dependencies

pnpm install

Build the application

pnpm build

Start the application

pnpm start

Running for development

Run:

pnpm dev

Astrofox is a client-side Next.js app. Projects are opened and saved as local .afx files (.json and legacy gzip-compressed .afx projects can still be opened). There is no backend or auth service required for development.

File I/O: web and desktop use the same browser pickers (File System Access API, with <input> / download fallbacks). The Electron bridge is reserved for window chrome, temp files, and ffmpeg export (absolute paths only when needed). See docs/desktop-capabilities.md.

Fonts: Inter is the only bundled font and the default for new text layers. Desktop scans installed font families through Chromium's Local Font Access API; it never downloads text fonts. The web picker searches the Google Fonts catalog and loads selected families and their available regular/bold/italic faces from Google's CSS API on demand. Internet access is required for uncached web fonts. Projects keep their font family names; unavailable families fall back to Inter.

src/lib/config/googleFonts.json is a metadata snapshot from https://fonts.google.com/metadata/fonts (no font files or API key). Refresh it with pnpm fonts:refresh when updating the catalog. This metadata endpoint is not a documented API contract; refreshes validate the expected response shape.

Web (Vercel)

Commits deploy through Vercel using the standard build:

pnpm build

Do not change this script for desktop packaging.

Desktop (Electron, offline)

Development (Next dev server + Electron shell):

pnpm dev:desktop

Production package (static export + electron-builder):

pnpm package

Desktop uses BUILD_TARGET=desktop for a static export into out/, then packages electron/ + out/. The web Vercel path is unchanged. Installers are written to release/.

Platform-specific and unpacked variants:

pnpm package:dir
pnpm package:mac
pnpm package:win
pnpm package:linux

MCP automation: turn on Enable MCP server in desktop Settings → MCP server, then copy the connection details shown there. The setting and token persist across app restarts. See MCP setup and tools.

Video export

  • Web: browser MediaRecorder (WebM/MP4 when supported)
  • Desktop: offline frame render → bundled ffmpeg → MP4 (H.264/AAC). Packaging commands download the platform binary and include it under bin/.

License

MIT

About

Astrofox is a motion graphics program that lets you turn audio into stunning visuals.

Topics

Resources

Stars

2.0k stars

Watchers

25 watching

Forks

Releases

Packages

Used by

Contributors

Languages