Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sametcn99/mern-stack

This project is a learning progress project aimed at mastering the MERN stack (MongoDB, Express, React, Node.js).
https://github.com/sametcn99/mern-stack

crud mern-stack

Last synced: 12 days ago
JSON representation

This project is a learning progress project aimed at mastering the MERN stack (MongoDB, Express, React, Node.js).

Awesome Lists containing this project

README

        

# Mern-Stack

This project is a learning progress project aimed at mastering the MERN stack (MongoDB, Express, React, Node.js).

## TO-DO

### Backend

- [x] Set up MongoDB connection
- [x] Create user model
- [x] Implement user authentication (JWT)
- [ ] Create user registration endpoint
- [x] Create user login endpoint
- [x] Implement middleware for authentication
- [ ] Create CRUD operations for user data
- [x] Set up error handling middleware
- [ ] Write unit tests for controllers and routes
- [x] Seed the database with initial data

### Frontend

- [x] Set up React project
- [ ] Create user registration form
- [x] Create user login form
- [ ] Implement form validation
- [ ] Set up Redux for state management
- [ ] Create user profile page
- [ ] Implement authentication flow (login, logout)
- [ ] Display user data on profile page
- [ ] Write unit tests for components and reducers

### DevOps

- [ ] Set up Docker for containerization
- [ ] Create Dockerfile for backend
- [ ] Create Dockerfile for frontend
- [ ] Set up Docker Compose for multi-container application
- [ ] Configure CI/CD pipeline (GitHub Actions, Travis CI, etc.)
- [ ] Deploy application to cloud service (AWS, Heroku, etc.)

### Documentation

- [ ] Write detailed README file
- [ ] Document API endpoints
- [ ] Create a guide for setting up the project locally
- [ ] Add comments to the code for better understanding

### Miscellaneous

- [x] Set up ESLint and Prettier for code formatting
- [ ] Configure environment variables for different environments (development, production)
- [x] Implement logging for debugging and monitoring