An Express and Bookshelf based backend implementation of the RealWorld API Spec.
Note: Bookshelf.js is in maintenance mode (last release ~2020). This repo remains a Bookshelf reference implementation for the RealWorld community. For new projects, consider Objection.js (same Knex foundation, actively maintained), raw Knex, or Prisma.
This project was created in order to familiarise myself with some key technologies in use at my day job. It's not intended to be production ready, but PRs that address this and any other issues are welcome!
- Node.js >= 22
- Docker and Docker Compose
Ensure Docker Compose is installed, then:
- Clone this repo.
- Change to the above dir.
- Copy
.env.exampleto.envand adjust values as needed. - Run
npm run docker:startto start the app.
Run the full test suite with:
$ npm run docker:test
CLI args will be passed through to Jest. For example, to run in watch mode:
$ npm run docker:test -- --watch
MIT