- Creation of a CRUD Full Stack application based on tables with .ddl already defined
- Application in "monorepo" configuration
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
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)