API Server Node JS
Open-source Node JS API Server enhanced with JWT Authentication and SQLite storage.
Free API Server coded on top of Express / Node JS with SQLite persistence and JWT authentication via Passport library - passport-jwt
strategy.
Version: v1.0.1, release date
2022-06-02
API Definition - the unified API structure implemented by this server
Node JS API Server - source code
Full-stack samples compatible with this product:
React Berry Dashboard - open-source sample
React Datta Dashboard - open-source sample
API Methods - for full description please access API Unified Definition
USERS API:
/api/users/register
: create a new user/api/users/login
: authenticate an existing user/api/users/logout
: delete the associated JWT token/api/users/checkSession
: check an existing JWT Token for validity/api/users/edit
- edit the information associated with a registered user

✨ Tests Matrix
v17.0.0
v8.11.0
v1.22.18
✔️
v16.15.1
v8.11.0
v1.22.18
✔️
v16.13.0
v8.1.0
v1.22.5
✔️
✨ How to use the code
👉 Step 1 - Clone the sources
$ git clone https://github.com/app-generator/api-server-nodejs.git
$ cd api-server-nodejs
👉 Step 2 - Install dependencies via NPM or Yarn
$ npm i
// OR
$ yarn
👉 Step 3 - Run the
SQLite
migration
$ yarn typeorm migration:run
👉 Step 4 - Start the API server (development mode)
$ npm dev
// OR
$ yarn dev
👉 Step 5 - Production Build (files generated in
build
directory)
$ npm build
// OR
$ yarn build
👉 Step 6 - Start the API server (production mode)
$ npm start
// OR
$ yarn start
The API server will start using the PORT
specified in .env
file (default 5000)\
✨ Codebase Structure
< ROOT / src >
|
|-- config/
| |-- config.ts # Configuration
| |-- passport.ts # Define Passport Strategy
|
|-- migration/
| |-- some_migration.ts # database migrations
|
|-- models/
| |-- activeSession.ts # Sessions Model (Typeorm)
| |-- user.ts # User Model (Typeorm)
|
|-- routes/
| |-- users.ts # Define Users API Routes
|
|
|-- index.js # API Entry Point
|-- .env # Specify the ENV variables
|
|-- ************************************************************************
✨ SQLite Path
The SQLite Path is set in .env
, as SQLITE_PATH
✨ Database migration
👉
Generate
migration:
$ yarn typeorm migration:generate -n your_migration_name
👉
Run
migration:
$ yarn typeorm migration:run
✨ Compatible Fullstack Products
The product can be used as a standalone server but also as an authentication server for React, Vue products. Such a product already configured with Django API Server is React Datta Able, an open-source React Dashboard.
React Datta Able - product page
React Datta Able - source code

Last updated
Was this helpful?