- MNZL technical Challenge for the software engineer position.
- You can try it from here (Note that it might take sometime at the beginning): https://movies-app-mnzl-technical-task.onrender.com
- Node.js
- React.js
- Postgresql
- Typescript
- Easy discover, search, filter and add movies to your favorite list.
- clone the repository and open the project in any IDE
git clone https://github.com/MohamedRagaab/movies-app-mnzl-technical-task.git
cd movies-app-mnzl-technical-task
- You can install docker desktop then run the following command to start the whole app and then open: http://localhost
docker compose up
- or you can run every service manually
BE:
cd /BE
npm install
npm run build
npm run start
FE:
cd /FE
npm install
npm run start
- For the database, I created a Postgresql db on Render so you don't have to deal with this part. it will connect to it directly. have a look at the DB design:
- Render deployments (FE, BE and DB):
- Here is the list of the RESTful APIs
-
Users:
- Login User:
POST /users/login
- Register User:
POST /users
- Find User:
PUT /users/:id
- Login User:
-
Favorites:
- Add to Favorites:
POST favorites/add
- Remove from favorites:
POST /favorites/remove
- List Favorites:
GET /favorites
- Add to Favorites:
-
- Using themoviedb for building CRUD app
- Use Postgresql for data persistence.
- Frontend is built using react.js
- Server built using node.js
- Usig git version control
- Deploy the app on a hosted service