Map editor & map video editor frontend
Software Engineer · 2022 — 2024 · Mapcreator
Cartography SaaS for newsrooms and publishers: maps built in the browser, animated into video, served as vector tiles.
My role
Team product. I was in the frontend team, and the map editor, the video editor and the After Effects plugin were mine, along with renderer work in our MapLibre fork. I had spent years cutting my own GoPro footage before this, so I knew the tool as a user before I had to build one.
What I did
- — Carried the editor from Vue 2 / Vuex / Mapbox GL to Vue 3, Pinia and the Composition API. A large app, migrated piece by piece while it stayed in production.
- — Built the video editor and shaped its architecture: a timeline, with per-element animation on the map (fade, grow, move) keyed to it.
- — Wrote an After Effects plugin that turns objects drawn on the map into tracking points, so motion designers hang their own layers on a moving map instead of rotoscoping it.
- — Built the interactive side of the editor: a spreadsheet dropped on the canvas becomes points, its columns bound to popup templates, and the map goes out as a live link or an embed.
- — Patched our MapLibre fork for what the stock style-spec has no room for: collision handling between map objects, and map detail set independently of zoom.
- — Worked on the SVG exporter, which redraws what MapLibre renders as vector paths. A map leaves the editor as a cleanly layered file, sharp at any size and still editable, rather than a picture of one.
- — Integrated Stripe, with plan state settled by webhook rather than by what the checkout redirect claims.
In the product
the vendor's own pagesStack
Vue 2 → Vue 3 · Pinia · Nuxt · TypeScript · Mapbox GL · MapLibre GL · After Effects plugin · Stripe · Node.js · BullMQ