Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fovea

Fovea

A lightweight desktop app for recording beautiful product demos on Windows.

Fovea records your screen and automatically adds zoom, pan, and cursor effects based on where you click. Like Screen Studio, but open source and for Windows.

Fovea demo

Why I built this

I wanted something like Screen Studio for Windows and tried a few products, but they were all slow, heavy and expensive (if you want all features that make a product demo look professional). Couldn't find anything, so built this. It's free and always will be.

Install

You need Node 18+, npm, and ffmpeg on your PATH.

git clone https://github.com/cw12574/fovea
cd fovea
npm install
npm start

No packaged build yet. You run it from source.

Use it

  1. Pick a screen and hit record. There's a 3 second countdown.
  2. Do your demo. Click on what matters. That is what the camera follows.
  3. Stop with Ctrl+Shift+X or the tray icon. The editor opens.
  4. Change the background if you want, then export an MP4.

The one habit that matters: click deliberately. Every click is a cue for the camera.

How it works

Recording and effects are two separate passes.

  1. Record. Capture the screen at full resolution. Log cursor position at 60 Hz and clicks with timestamps.
  2. Compose. Replay the recording onto a canvas. A virtual camera zooms and pans off the click timeline. Cursor glow, click ripples, and the frame are drawn on top.
  3. Export. Capture the canvas frame by frame, encode to H.264 with ffmpeg, and mux the original audio back in.
src/
  main.js            Electron main: capture, input logging, ffmpeg
  editor.*           The compositor: virtual camera, effects, export
  recorder.*         Recording UI
  shared/effects.js  The math: easing, click clustering, camera keyframes

If you want to change how the camera behaves, shared/effects.js is the whole brain. It's a few hundred lines of pure functions with no dependencies.

Status

Early. It works and I use it, but fair warning:

  • Windows only.
  • Export runs in real time. A 2 minute recording takes about 2 minutes to render, then a fast ffmpeg pass.
  • Full screen capture only. No window or region capture yet.
  • Build from source. No installer.

Issues and PRs welcome.

Non-goals

It is not trying to be a video editor. No timeline, no tracks, no transitions. The whole point is that you don't have to do that work.

License

MIT

About

A lightweight desktop app for recording beautiful product demos on Windows.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages