The Boring Framework is a Rails-inspired web framework that includes everything needed to create database-backed web applications and APIs according to the Model-View-Controller (MVC)pattern.
MVC divides your application into three main layers: Model, View, and Controller.
Under the covers - and sometimes not so much - Boring is just a project wrapper around common Node.js technologies, the core of which are:
- Fastify The entire web server runs as a Fastify application: routing, http, logging, etc.
- Jest All of the testing is provided via Jest. Tests, Mocking, etc.
- EJS The rendering of HTML-based pages is done via EJS. It has a similar syntax to Embedded Ruby (
.erb
) as well as other template languages. - Objection Objection is how Active Record is implemented. Models inherit from Objection which is an ORM over knex.
- Nodemailer Nodemailer - and its plugin sytem - is how emails are sent.
We try to maintain clear, concise documentation for Getting Started and using The Boring Framework. Check out our docs pages for any questions you have!