CRUD Project using MERN stack, manage employees and it's login user.
This project is a CRUD application using the MERN stack (MongoDB, Express, React and Node.js). It's a simple application to manage employees and it's login user.
The backend is a REST API that uses Prisma as ORM to connect to a MongoDB database.
The frontend is a React application using TypeScript and Vite as build tool.
The project is containerized using Docker and Docker Compose, for frontend, backend and database.
Also I've created a public collection for this project in Postman, that you can use to test the API. Note that you need to have the backend running in order to use it.
- JS libraries: React
- Programming Language: TypeScript
- Build tool: Vite
- Document database: MongoDB
- Containerization: Docker
- Dev Environment: VSCode with dev containers in Zorin OS
You can use the VSCode dev containers to run the project in a containerized environment.
You need to have installed Docker and VSCode, and the Dev Containers extension.
- Clone this repository
git clone [email protected]:jhordyess/mern-crud-project.git
- Open the project in VSCode
code mern-crud-project
-
Create a
.env
file in the root folder by copying the example from the.env.example
file. -
Open the integrated terminal (Ctrl+Shift+`) and run the following command:
docker compose -f docker-compose.devcontainer.yml up -d
-
Open the command palette (Ctrl+Shift+P) and select the option
Dev Containers: Open folder in Container
. -
Select the folder
backend
and wait for the container to be built. -
Open the integrated terminal (Ctrl+Shift+`) and run the following command:
yarn dev
-
Repeat the steps 5, 6 and 7 for the folder
frontend
. -
Open the browser and visit http://localhost:5173/ and lets code!
- Develop frontend
- Add seed for DB
- Prepare for production
- Add more to-do's 😅
If you would like to contribute to the project, open an issue or make a pull request on the repository.
© 2022> Jhordyess. Under the MIT license. See the LICENSE file for more details.
Made with 💪 by Jhordyess