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…


This content originally appeared on DEV Community and was authored by Sm0ke

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:


This content originally appeared on DEV Community and was authored by Sm0ke


Print Share Comment Cite Upload Translate Updates
APA

Sm0ke | Sciencx (2021-07-26T19:39:21+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 ,<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 ]. 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 . 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: ]
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/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.