Pedro Ferrari

Pedro Ferrari. Staff Frontend FullStack AI Engineer, Stockholm.

I build whatever I feel like building.

Apps, tools, games, small experiments. Lately a lot of it is about learning.

See the projects Email me

Pedro Ferrari’s seal: the letters P and F cut out of a red square. Each of the 81 squares is a checkbox you can switch on or off.

Projects

Five things I am working on now

Web, coding agents, Slack, short courses

One short question a day about the tools you use as a software engineer, asked again later so you keep the answer. It also works inside coding agents: after you change code with an agent, it asks you about what you just did.

How it works
You answer from memory, then see why the answer is right. Questions you get wrong come back sooner.
Where it runs
The web, a command-line tool and MCP server inside your coding agent, and a daily question in Slack.

atomicreps.com

Atomic Reps: an axolotl on a small island, next to the line “Explain the code you ship, from memory.”

Atomic Reps

Retrieval practice for working software engineers. You answer one real question from memory, then see why the answer is right. Questions you get wrong come back sooner.

Where it runs
The daily question on the web, with no account needed for the first one.
A command-line tool and MCP server, so the question arrives inside your coding agent.
A daily question in a Slack channel. Admins choose topics and never see individual scores.
Short courses with exercises inside each lesson.
Built with
React, Vite, Convex, Cloudflare Workers, TypeScript

iPhone, iPad, Mac, Android. Free.

A singing coach. You sing, and the app draws your pitch over the notes you are aiming for. After each run it tells you which phrases were in tune and what to practise next.

One session
A voice check-in, a straw warm-up, a range check, an exercise, and one song moved into your key.
Results
In cents and milliseconds: how far off a note was, and how late.

croonia.com

Croonia: an illustrated singer at a microphone under a full moon.

Croonia

Each visit is one guided session built from your own measurements:

  1. a voice check-in
  2. a short warm-up with a straw
  3. a range check
  4. an exercise
  5. work on one song, moved into your key

Results are given in cents and milliseconds, so you can see how far off a note was and how late.

Built with
SwiftUI for iPhone, iPad and Mac. Kotlin and Jetpack Compose for Android.

iPhone, in beta

A pronunciation coach. Say a word and see which sound to change, and how. Each sound gets a score from 0 to 100, set by how native speakers say the word.

Languages
Stockholm Swedish, Brazilian Portuguese, Spanish, German and American English so far. More are coming, and later the regions and accents inside each language.
Private
Scoring runs on the phone. Recordings never leave it, and a downloaded language works offline.

shablau.com

Shablau: the app scoring each sound of the Swedish word “kaffe”, with a crow beside the phone.

Shablau

Shablau scores your voice on your iPhone and never sends your recordings anywhere. After you download a language, it works without the internet. Words you find hard come back more often.

Languages so far
Stockholm Swedish, Brazilian Portuguese, Spanish (Spain), German (Germany), American English
More languages are coming, and later the regions and accents inside each language.
Price
Pay once per accent. No subscription, no ads, no account.
Built with
SwiftUI and Core ML, with the scoring models running on the phone

Windows 10 and 11. Free and open source.

Windows tuning for games. It reads your CPU, graphics card and network adapter, then builds a PowerShell script with the settings that change frame times, input delay and network delay on that hardware.

Safe to try
Every run makes a restore point and records each value it changes. -Undo puts everything back; -DryRun only prints.
Also included
Rig Check for setup mistakes, Play Snapshot for background load, and a repeatable benchmark.

rocktune.pedroferrari.com

RockTune: “Unlock your rig” in bright type on a dark background.

RockTune

You choose your hardware and games on the website, and it builds a script for that machine. The script changes power plans, timer resolution, MSI mode, MMCSS, GPU scheduling, network adapter settings and AMD X3D core parking. It also turns off overlays and background apps that run during a game, and installs your gaming software and peripheral apps.

Every run makes a System Restore point first and records each value it changes, so -Undo can put everything back. -DryRun prints every change without applying it.

Also included
Rig Check: finds setup mistakes that cost frames, such as RAM below its rated speed, a monitor below its highest refresh rate, or the display cable in the motherboard port.
Play Snapshot: lists what uses CPU and disk in the background while you play.
Benchmark: installs a repeatable test set, so you can compare frame times before and after.
Built with
PowerShell, Svelte, TypeScript, Vite
History
It grew out of RockInstaller from 2018.

Web, in Portuguese and English

The website of Mestre Avatar Aang Willians, a 5th-degree kung fu master in São Paulo. It includes The Scroll, a 36-minute film about the history of Chinese martial arts, drawn live in the browser.

The Scroll
A prologue and 25 chapters, drawn on a canvas in the style of shadow puppets, cut paper and ink wash.

mestreavatar.com

Master Avatar: an ink-wash drawing of Mount Song and the Shaolin temple.

Mestre Avatar Aang Willians

The site covers the master, his lineage (Grandmaster Chan Kowk Wai), Chen Village, an atlas of Chinese martial styles, weapons, a gallery and online class sign-up.

O Pergaminho (The Scroll) has a prologue and 25 chapters: the history of Chinese martial arts, Shaolin, Chinese medicine, Chen taiji, and the line that brought kung fu to Brazil. It is drawn on a canvas in the style of shadow puppets, cut paper and ink wash. Chapter one plays on the home page the first time you visit.

Built with
Astro, TypeScript, the canvas element

Tools and smaller projects

Open source, on GitHub.

  • RockReader

    Reads long PDFs and EPUBs aloud on a Mac with Apple Silicon, using a voice model that runs on your machine.

  • Broken by Design

    A support-desk app that works and is wrong in twelve ways, on purpose. Clone it and practise fixing it with a coding agent.

  • Zig Invaders

    An arcade shooter I wrote to learn Zig.

Talks

Internal talks I gave at work and later published. Hover a title to see the video.

  • Stacking context, CSS selectors, selector performance, CSS grid and grid layouts.

    Opening frame of CSS basics, part 2
  • The box model, display properties, positioning, the viewport, units, calculations and flexbox. Given at Kry.

    Opening frame of CSS basics, part 1
  • An introduction to TypeScript for Kry developers, given on . The slides are on GitHub.

    Opening frame of TypeScript basics
  • A five-minute presentation given at LeoVegas.

    Opening frame of Controlling the UI with your voice

Pens

Small experiments on CodePen. Most answer one question about how the browser behaves.

Archive, 2018 to 2022

Everything older, by year. Some of these were course projects or one-evening experiments. Struck-out entries are no longer online. Opening one year closes the others. In Chrome, find in page (Ctrl+F or ⌘+F) also searches inside closed years.

2022 7 projects
2021 9 projects
2020 7 projects
  • Dota esports client: React and Apollo Client over my own GraphQL server for an esports REST API. Client, server
  • Property auditor: work out what a property is worth to you and compare it with others. React, Grommet, Firebase.
  • Typist: a typing game with a Firebase leaderboard. React, styled-components.
  • Giphy search with React hooks and TypeScript.
  • Hemnet scraper: reads listings from Hemnet with headless Chrome and serves them through an API.
  • Cat images server: NestJS, GraphQL and MongoDB, for a very important use.
  • Recyclone: a recycling game in React.
2019 4 projects
  • Snake in React and TypeScript on a canvas.
  • Tetris with React hooks, TypeScript and Jest.
  • To-do app with React hooks and TypeScript.
  • The Healthy Dev: research-based notes on body and mind for developers.
2018 10 projects
  • RockInstaller: builds a script that installs, updates and removes Windows programs with Chocolatey. The first version of the idea behind RockTune.
  • Dictate: types what you say, using the browser’s speech recognition, and reacts to chosen words.
  • Catch of the Day: a fake shop with sign-in and a real-time Firebase database.
  • Pong in React.
  • Tetris built on a 2D matrix in React.
  • Movies database: The Movie Database API with React and Redux.
  • Post fetcher: a simple REST fetch in React.
  • Mobile Strike: a small mobile game based on Counter-Strike.
  • Instagram clone in React and Redux Code
  • Voice recognition with the IBM Watson API Code

Work

Each square is a year, from 2006 to 2026

  1. Staff Frontend Engineer, to now

  2. Docker

    Senior Frontend Engineer, to

  3. Kry

    Senior Software Engineer, to

  4. Abios

    Senior Frontend Engineer, esports data, to

  5. LeoVegas

    TypeScript Engineer, mobile gaming, to

  6. Conversionista!

    Full Stack Engineer, A/B testing, to

  7. Eureka! Digital

    Co-founder of a web agency, São Paulo, to

Stack

  • TypeScript
  • React
  • TanStack
  • Next.js
  • XState
  • GraphQL
  • Node
  • Convex
  • Cloudflare Workers
  • SwiftUI
  • Kotlin
  • Core ML
  • MLX
  • MCP servers