Skip to content
FLAVIO COPES
flaviocopes.com
2026

The Summer of Code, update #2

By Flavio Copes

Four days after my first Summer of Code update: 73 more tools, 12 quiz courses, fstack, a rebuilt Cook with AI, and a Git work log.

~~~

Four days ago I published my first Summer of Code update.

I ended it with “more soon”.

I didn’t expect soon to mean four days, but here we are.

The tools section reached 220 tools

At the time of the last update, the tools section had 148 tool pages.

I added 73 more.

I also removed the private usage dashboard, bringing the public collection to 220 tools.

The biggest addition was a full set of Tailwind CSS tools. There is now a Tailwind v3 to v4 converter, a class conflict checker, a Grid builder, a breakpoint tester, and many more.

I also added tools I wanted for my own work, including a HAR analyzer, a TOTP generator, a passkey flow visualizer, an AGENTS.md generator, and an MCP config generator.

Then I went back through the entire section and added structured data, breadcrumbs, Open Graph images, and an audit script that checks every tool page.

I think I can stop adding tools now.

Maybe.

I built 12 free quiz courses

This one started as a small experiment.

Reading about a topic can make you feel like you understand it. Answering questions shows you what you really know.

So I built a new free quiz courses section.

It has 12 courses:

Each course has 5 chapters. Each chapter has 10 questions. That’s 600 questions in total.

Every answer comes with an explanation, whether you get it right or wrong. Each chapter also links to tutorials and free handbooks on this site if you want to go deeper.

There is no signup. Progress stays in your browser.

I like this format a lot. The questions are the course, and the explanations fill the gaps as you go.

Then I added the part that makes me want to keep going back.

The quizzes now have XP, levels, answer streaks, achievements, chapter grades, a missed-question review deck, course certificates, and confetti when you finish a chapter.

Everything still runs in the browser. No account, no server, no leaderboard full of strangers. It is just a small progression system for you.

I built fstack

I also built fstack, a free and open source collection of 13 agent skills.

The idea came from using larger skill collections and forgetting most of the commands. fstack asks a different question:

Can this be less?

Each skill has one job. The main loop is:

fstack-nail → fstack-plan → fstack-build → fstack-check → fstack-ship

Then there are focused skills for specific moments.

/fstack-roast stress-tests a product idea before I build it. /fstack-interview asks about the business and records the answers in AGENTS.md. /fstack-counselors asks three different models the same question and returns one verdict.

/fstack-simplify exists only to remove unnecessary things. There are also skills for design, documentation, and capturing lessons.

The human stays in the loop. The agent works in small steps and asks at real decision points.

You can install the whole set with one command:

npx skills@latest add flaviocopes/fstack

I rebuilt Cook with AI

Cook with AI used to redirect to this site. I restored its homepage and turned it back into a site of its own.

It now has 28 free browser tools. Ten of those are new tools focused on developers using AI: a prompt injection scanner, secret scanner, Cursor rules generator, Claude hooks generator, agent skill generator, repository context estimator, and more.

I originally added 18 new tools. Then I looked at the result, decided it was too much, and removed 8.

That is fstack doing its job on the site that documents fstack.

I also added 3 quiz courses with 120 questions:

The quizzes have progress tracking, XP, streaks, achievements, and shareable results.

Cook with AI now has a full fstack guide, too. It explains every skill with examples and shows how the pieces fit together.

Finally, I added three new essays about AI, programming, and how the value of software changes when implementation gets cheaper.

Every blog post now has a Markdown version

I also made this site easier for AI agents to read.

Every published post now has a static Markdown version. Add .md to any post URL:

curl https://flaviocopes.com/npm.md

I added llms.txt, llms-full.txt, and a pointer in every HTML page telling agents where to find the Markdown version.

My first implementation converted HTML back to Markdown at the Cloudflare edge. It worked, but it turned every request into a metered Workers invocation.

That made no sense. The posts start as Markdown.

The final version publishes the original Markdown as a static file at build time. No Worker, no runtime conversion, no extra cost.

I wrote the full story in Serving my site as Markdown to AI agents.

inferencecost.dev got paid reports

inferencecost.dev started as a free calculator for estimating the LLM bill of an AI product.

Now you can also generate a report for your own workload.

The free preview shows the estimated monthly bill and cost per user. The $20 report adds cost projections from 100 to 100,000 daily active users, sensitivity analysis, model comparisons, an AI-written summary, and a Markdown export.

I wired the checkout through Polar and run the AI part through Cloudflare AI Gateway.

The calculator is still free. The report is for someone who needs more than a quick estimate.

I kept working on StackPlan

StackPlan was already the main part of my first update, but I kept improving it.

The homepage now has a much larger interactive demo. You can move the engineering dial and watch the suggested stack and monthly cost change at every step.

I also moved the production LLM calls behind Cloudflare AI Gateway and added support for services whose prices change by region.

Small changes compared to building the whole product in six days, but they make it feel much more complete.

I made a work log for my agents

This post created another problem.

To remember everything I did, I had to inspect the Git history of several repositories. So I built a plain text work log.

Every successful commit now adds its time and subject under the project name:

[2026-07-12]

  cookwithai.dev
    13:32 - Fold deslop into simplify and add fstack-document

  fstack
    13:29 - Add fstack-document

Git’s native post-commit hook writes the entry. Cursor and Codex install that hook automatically when they are about to commit in a new repository.

I first tried to listen for git push from Cursor. A real push skipped the event and the log stayed empty.

Moving the trigger into Git fixed the problem completely. It also means commits made from a terminal or Git app get logged.

The next update should be easier to write.

And I kept writing

I wrote about StackPlan, Sitebase, and inferencecost.dev.

I explored new Cloudflare releases, including Cloudflare Drop, temporary accounts, Moondream on Workers AI, and Artifacts.

I also spent an afternoon investigating why my iPhone was running hot. That became two more posts, one about the investigation and one about iPhone Developer Mode.

That’s the nice thing about writing while building. Even a strange detour can become something useful.

Four days, 73 tools, 12 quiz courses, 600 questions, a new agent skill stack, a rebuilt Cook with AI, a paid report, and a work log to remember all of it.

The Summer of Code continues.

Tagged: News · All topics
~~~

Related posts about news: