Engineering Notes
Why the engineering decisions were made. The reasoning, the trade-offs, and the failures that taught us each lesson. We collected them over decades in different shapes and forms, starting with Post-It notes and the latest maintained in our own Markdown Notes Manager connected to Github repo.
The Reepolee Approach summarizes the principles. These notes preserve the arguments, tradeoffs, and implementation decisions behind them.
Read Our ApproachStop Optimizing for the Wrong Speed
On two things the industry calls 'dev speed' that aren't the same problem at all - compile and build times, which are a real but minor tooling cost, and the delivery deadlines a team is actually held to, which have been the real source of shipped bugs and missing features for at least a decade.
Why In-House Operational Apps Are Your Biggest Advantage
On build versus buy for operational software, why the process a company invented is the thing worth encoding in its own application, and the honest limits of building in-house.
The Reepolee Approach
An introduction to the Reepolee philosophy: on-premise infrastructure, zero-dependency applications, code generation over AI, SQL over ORMs, and a commitment to simplicity that compounds over decades - for freelancers, solo devs, small agencies, and informal groups who carry the maintenance cost.
Use the Right Tool
On enforcing a modern browser baseline for internal applications, the real cost of backwards compatibility, and why the browser your staff uses is a business decision, not a technical given.
How We Name Our Columns and Why It Matters
On establishing inhouse naming rules before generators run - column patterns, soft deletes, and a case for snake_case across the entire codebase, not just the database.
Our Bet: Bun Is Closing the Gap to Application Servers
Why we build on Bun's native API surface rather than assembling an application from packages, what the application server model actually provided, and an honest account of the risk in concentrating a business on one runtime.
The Generator Pattern, Not a Library
Why Reepolee uses a code generator instead of a library, and what that choice means for security, maintainability, and the surface of change in your own project.
No Deps, No Build
On building zero-dependency, no-build web applications with Bun for nonprofits, education, intranets, and small teams - and why appropriate complexity is a feature, not a compromise.
The Database Is Not a JavaScript Object
A case for writing SQL directly - not because ORMs are wrong, but because the developer who reaches for one without learning what it replaces has chosen a ceiling.
Use the Tools That Work for You
On choosing tools by what makes you productive, not by what the community has decided signals the right kind of developer.