Free API Servers – Open-source REST products: Django, Node JS, Flask

Hello Coders!

This article presents a collection with simple REST Servers built with a unified API definition across multiple frameworks: Django, Node JS/ Express, Flask, and FastAPI (coming soon). The good part is the usability of any of these server…

Hello Coders!

This article presents a collection with simple REST Servers built with a unified API definition across multiple frameworks: Django, Node JS/ Express, Flask, and FastAPI (coming soon). The good part is the usability of any of these servers with React and Vue UI Kits with less effort.

Thanks for reading! – Content provided by App Generator.

React products enhanced with JWT authentication compatible with mentioned API Servers:

React Datta PRO - Fullstack React Dashboard.



Why Using a Unified API Interface

A while ago, based on our community feedback, we decided to implement a unified API definition across all supported servers (Flask, Django, Node JS) and let users decide the preferred backend framework without changing the UI once a backend migration occurs from Flask to Django or from Django to Node JS for instance. Using a common definition, basically all frontend products, despite the technology, can be used without extra efforts with currently provided backends and stay compliant with the future ones: FastAPI, Koa, etc.

The current definition covers only a simple JWT authentication that manages users via the following methods:

  • /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

All provided methods use a simple I/O interface and intuitive, beginner-friendly structures.

API Register I/O Sample

POST api/users/register
Content-Type: application/json

{
    "username":"test",
    "password":"pass", 
    "email":"test@appseed.us"
}

API Login I/O Sample

POST /api/users/login
Content-Type: application/json

{
    "password":"pass", 
    "email":"test@appseed.us"
}

For more information related to this concept, feel free to access the official documentation: API Unified Definition.

Now, back to our API servers, the next sections will present each server starting with the open-source ones.



API Server Django

Simple starter built with Python / Django Rest / Sqlite3 and JWT Auth. The authentication flow is based on json web tokens. The product comes with a simple, intuitive codebase, DRF integration, SQLite for persistence JWT Authentication API, Docker, and unitary tests.

API Server Django - Free REST server provided by AppSeed.



API Server Flask

Simple Flask API Starter with JWT authentication, and SQLite persistence that provides “out-of-the-box” all the ready-to-use bare minimum essentials – Built on top of flask_rextx and flask_jwt_extended libraries.

API Server Flask - Free REST server provided by AppSeed.



API Server Node JS

Simple API server crafted in Node JS/Express/Typescript with SQLite for persistence and TypeORM as SQL interface. Authentication Flow uses json web tokens via Passport library – passport-jwt strategy.

API Server Node JS - Free REST server provided by AppSeed.



API Server Node JS PRO

This commercial product contains two branches: the first one uses SQLite and TypeORM as SQL interface and the second branch handles the persistence via MongoDB and Mongoose.

To make this article more useful, I will mention a few React Products already coded to handle the JWT Authentication provided by all mentioned servers. Let’s go!



React Dashboard Berry

Berry is a creative React Dashboard build using the Material-UI. It is meant to be the best User Experience with highly customizable feature-riched pages. It is a complete game-changer React Dashboard Template with an easy and intuitive responsive design as on retina screens or laptops. The product comes with a simple JWT authentication flow: login/register/logout.

React Dashboard Berry - Open-source Fullstack dashboard.



React Dashboard Datta Able

Datta Able is an open-source React Dashboard that provides a colorful and modern design. Datta Able React Free is the most stylized React Free Admin Template, around all other admin templates in the market. It comes with high feature-rich pages and components with fully developer-centric code. The product comes with a simple JWT authentication flow: login/register/logout.

React Dashboard Datta Able - Open-source Fullstack dashboard.



React Datta Able PRO

Datta Able PRO is a premium React Dashboard that provides a colorful and modern design. Datta Able React PRO is the most stylized React Free Admin Template, around all other admin templates in the market. It comes with high feature-rich pages and components with fully developer-centric code. The product comes with a simple JWT authentication flow: login/register/logout.

React Datta Able PRO - Fullstack dashboard (commercial product).

Thanks for reading! For more resources or support please access:


Print Share Comment Cite Upload Translate
APA
Sm0ke | Sciencx (2024-03-29T14:42:03+00:00) » Free API Servers – Open-source REST products: Django, Node JS, Flask. Retrieved from https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/.
MLA
" » Free API Servers – Open-source REST products: Django, Node JS, Flask." Sm0ke | Sciencx - Monday July 26, 2021, https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/
HARVARD
Sm0ke | Sciencx Monday July 26, 2021 » Free API Servers – Open-source REST products: Django, Node JS, Flask., viewed 2024-03-29T14:42:03+00:00,<https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/>
VANCOUVER
Sm0ke | Sciencx - » Free API Servers – Open-source REST products: Django, Node JS, Flask. [Internet]. [Accessed 2024-03-29T14:42:03+00:00]. Available from: https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/
CHICAGO
" » Free API Servers – Open-source REST products: Django, Node JS, Flask." Sm0ke | Sciencx - Accessed 2024-03-29T14:42:03+00:00. https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/
IEEE
" » Free API Servers – Open-source REST products: Django, Node JS, Flask." Sm0ke | Sciencx [Online]. Available: https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/. [Accessed: 2024-03-29T14:42:03+00:00]
rf:citation
» Free API Servers – Open-source REST products: Django, Node JS, Flask | Sm0ke | Sciencx | https://www.scien.cx/2021/07/26/free-api-servers-open-source-rest-products-django-node-js-flask/ | 2024-03-29T14:42:03+00:00
https://github.com/addpipe/simple-recorderjs-demo