Skip to content

A full-stack CRUD application featuring a React front-end and a Node.js backend with Fastify, showcasing CRUD operations on predefined entities. Includes robust backend functionalities with MySQL database integration, security features like rate limiting and JWT authentication, and API documentation via Swagger.

Notifications You must be signed in to change notification settings

arturovaine/crud_fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Context

  • Creation of a CRUD Full Stack application based on tables with .ddl already defined

Preview

alt text

Requirements, list of features and aspects of the application

  • Application in "monorepo" configuration

Backend

Basic implementations/functionalities

  • Rest API that allows “CRUD” operations to be carried out on all entities;
  • API/backend in Node.js using the Fastify framework;
  • DBMS of any applicable preference; MySQL chosen -> there is native plugin Fastify
  • Security control: "rate limit" and jwt for access to API endpoints (Bearer token);
  • Swagger implemented for accessing API documentation;
  • SQL file containing the final DDL and some example data inserts;
  • Postman or Insomnia collection, in JSON format, for API testing.

Login "Superuser" -> "username": "client01", "password": "password01"

Additional

  • Controllers (responsibility for request and response)
  • Error and validation middleware
  • Services (business rules)
  • Models (responsibility only for CRUD in the database)
  • Routes (route organization)
  • ORM implementation (Sequelize, TypeORM, Prisma,...)
  • TypeScript
  • Docker
  • Tests (unit, integration)

npm install && node ./back/src/index.js

Front-end

Basic implementations/functionalities

  • Frontend developed in React;
  • Front-end allows you to perform all CRUD operations on existing entities;

Additional

  • Layouts and organization of screens, as well as the possible use of extra components/libraries, ...
  • Docker
  • Tests (unit, integration)

About

A full-stack CRUD application featuring a React front-end and a Node.js backend with Fastify, showcasing CRUD operations on predefined entities. Includes robust backend functionalities with MySQL database integration, security features like rate limiting and JWT authentication, and API documentation via Swagger.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages