This is an API for showing details and detailed list of movies and TV shows. It is built with NestJS, GraphQL, TypeScript, NodeJS, ExpressJS, and MongoDB.
You can go to '/graphql' route after starting the app to get documentation and input/output schemas.
To run the API on your local machine, follow these steps:
git clone https://github.com/aim3r4j/media-api.git
Navigate inside the folder
cd media-api
Install all the dependecies
npm ci
Set the environment variables in a .env file according to the .env.example file & Run the dev script to start the application in development environment
npm run start:dev
The app will now be running on localhost:3000.
OR
Build and Run the docker container for development
docker-compose -f docker-compose.dev.yml up --build
The app will then be running on localhost:4000.
JWT-based authentication is used, providing a secure and stateless approach to authenticate API requests.
JWT tokens are stored in cookies, ensuring secure transmission and simplified handling of authentication in subsequent requests.
Sensitive configuration details, such as database credentials and authentication secrets, are stored as environment variables to prevent accidental exposure.