A full-stack web application built with the MERN stack (MongoDB, Express.js, React, Node.js) and styled with Tailwind CSS.
The project is split into two parts:
- Frontend (
frontend/) → React (Vite) + Tailwind + Nginx - Backend (
backend/) → Node.js + Express + MongoDB
Both frontend and backend include Dockerfiles for containerized deployment.
appTeam_web/
├── backend/ # Express + MongoDB backend
│ ├── models/ # Mongoose schemas
│ ├── routes/ # API routes
│ ├── app.js # Main server file
│ ├── connection.js # DB connection config
│ ├── Dockerfile
│ └── package.json
│
├── frontend/ # React + Vite + Tailwind frontend
│ ├── public/
│ ├── src/ # React components & pages
│ ├── index.html
│ ├── vite.config.js
│ ├── tailwind.config.js
│ ├── Dockerfile
│ └── package.json
-
Backend (Express + MongoDB)
- RESTful API architecture
- Models & routes separated for clean structure
- MongoDB connection via
connection.js - Dockerized for deployment
-
Frontend (React + Vite + Tailwind)
- Fast Vite bundling
- TailwindCSS styling
- Configured with PostCSS and ESLint
- Nginx configuration for serving in production
git clone https://github.com/ayush00git/appTeam_web.git cd appTeam_web
cd backend npm install
npm start
cd frontend npm install npm run dev # starts development server
Each service has its own Dockerfile. You can build and run them separately:
cd backend docker build -t appteam-backend . docker run -p 5000:5000 appteam-backend
cd frontend docker build -t appteam-frontend . docker run -p 3000:3000 appteam-frontend
Or you can add a docker-compose.yml later to orchestrate both.
Create a .env file inside backend/ with:
MONGO_URI= PORT=5000
(Optional for frontend if you use APIs)
npm start→ start Express servernpm run dev→ (if nodemon configured) run in dev mode
npm run dev→ start Vite dev servernpm run build→ build production bundlenpm run preview→ preview production build
- Frontend: React, Vite, TailwindCSS
- Backend: Node.js, Express.js, MongoDB, Mongoose
- Deployment: Docker
- Fork this repo
- Create your feature branch (
git checkout -b feature-name) - Commit changes (
git commit -m "Add feature") - Push to branch (
git push origin feature-name) - Open a Pull Request