Skip to content

ivoneijr/files-and-folders-api

Repository files navigation

files-and-folders-api

This repository houses the backend development of a web application focusing on the implementation and understanding of RESTful APIs. Through this project, students have the opportunity to apply the principles and patterns of REST learned in lectures, setting a foundation for a forthcoming frontend integration.

Includes API Server utilities

Name Description
morgan HTTP request logger middleware for node.js
helmet Helmet helps you secure your Express apps by setting various HTTP headers. It's not a silver bullet, but it can help!
dotenv Dotenv is a zero-dependency module that loads environment variables from a .env file into process.env
cors CORS is a node.js package for providing a Connect/Express middleware that can be used to enable CORS with various options.

Development utilities

Name Description
typescript TypeScript is a language for application-scale JavaScript.
ts-node TypeScript execution and REPL for node.js, with source map and native ESM support.
nodemon nodemon is a tool that helps develop node.js based applications by automatically restarting the node application when file changes in the directory are detected.
eslint ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.
typescript-eslint Tooling which enables ESLint to support TypeScript.
jest Jest is a delightful JavaScript Testing Framework with a focus on simplicity.
supertest HTTP assertions made easy via superagent.
prisma DB ORM
bcryptjs password hash and check
jsonwebtoken Auth manage
zod Schema validation

Running locally instructions

pnpm i
pnpm db:migrate:dev
pnpm  dev

Useful commands

pnpm test
pnpm build
pnpm start
db:migrate:draft