Why Bones
Every app starts with the same six months of plumbing. Bones is those six months, already written, in a repo you own.
Bones is a monorepo you clone and build on. It isn't a generator and it isn't a hosted service. Every line is in your repo, and you can change any of it.
Each page covers one feature: the problem, what Bones does, and how it compares.
The features
| Feature | The problem it solves |
|---|---|
| Auth | Sign-up, sign-in, verification, and password reset, with the user table in your database |
| Roles and permissions | Deciding who can see and change what, without hardcoding role names |
| Organizations | More than one person working inside the same account |
| Admin | Managing users, roles, flags, terms, and settings without touching the database |
| Logging | Knowing who changed what, and when |
| Blogging | A blog that's fast, crawlable, and cheap to host |
| Docs | Docs in the repo, changed in the same pull request as the code |
| Transactional mail that renders everywhere and matches the product | |
| Clients | One backend serving a web app, a desktop app, and three public sites |
| Design system | One brand across everything a user touches, email included |
| Internationalization | Built in from the start, on every surface, right to left included |
| Accessibility | The public sites and every component story checked against WCAG 2.2 AA, in light and dark |
| Security | Protections built into the code, and scanned on every pull request |
| CI/CD | Tests, builds, and scans on every pull request, for only what changed |