Spin up a REST JSON API for a mobile app with built-in user authentication and OAuth token handling.
Build a stateless API server backed by PostgreSQL without writing raw SQL, using the built-in ORM and migration system.
Add background job processing to an API server for tasks like sending emails outside of normal request handling.
Requires a running PostgreSQL database to use the ORM, migrations, and authentication features.
Nodal is a Node.js framework for building API services, meaning the kind of backend server that a web app, mobile app, or IoT device calls to read and write data. It is opinionated, meaning it makes decisions about structure and patterns for you rather than leaving everything open-ended. The goal is to let a developer get a working API up quickly without having to piece together separate libraries for routing, database access, and data modeling. The core idea Nodal is built around is that API servers should be stateless. Each request comes in, gets handled, and goes out with no shared memory between requests. The framework actively enforces this by running multiple worker processes even in development, which would break any code that tries to store data in memory between requests. If you need to persist data, you connect Nodal to a PostgreSQL database and let the database be the single source of truth. Nodal comes with a command-line tool that generates a new project in a few steps. It includes a database migration system for creating and changing your database tables over time, an ORM (a way to query the database using JavaScript objects instead of writing raw SQL), and pre-built models and controllers for user accounts and OAuth tokens so you do not have to write authentication from scratch. It also includes background workers and a scheduling module for jobs that run outside of normal request handling. A controller in Nodal handles the standard create, read, update, and delete operations for a resource. The README shows a short example of what a blog post controller looks like, with methods for listing, showing, creating, updating, and deleting posts. The framework is not intended for streaming or long-lived socket connections. The README explicitly says those use cases should live in a separate server that can communicate with your Nodal API server if needed.
← keithwhor on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.