A modern, robust full-stack web application featuring a responsive Next.js frontend and a secure Express.js backend.
- Framework: Next.js (v16) with React 19
- Styling: Tailwind CSS (v4) & DaisyUI (v5)
- UI Components: Radix UI & Lucide React (Icons)
- Authentication: NextAuth.js
- Utilities:
clsx,tailwind-merge,date-fns
- Runtime: Node.js (ES Modules)
- Framework: Express.js
- Database: MongoDB with Mongoose
- Authentication & Security:
jsonwebtoken(JWT),bcryptjs,helmet,cors - Validation: Joi
- Secure Authentication: Complete auth flow using JWT on the backend and NextAuth on the frontend.
- RESTful API: Structured backend routes and controllers.
- Data Validation: Joi integration to validate incoming API requests.
- Modern UI: Pre-configured with Tailwind CSS v4 and DaisyUI v5 for rapid and aesthetic UI development.
- Responsive Design: Fully responsive across desktop, tablet, and mobile devices.
fullstackapp/
├── client/ # Next.js Frontend
│ ├── package.json
│ └── ... (Next.js files & directories)
├── server/ # Express.js Backend
│ ├── index.js # Entry point for the API server
│ ├── package.json
│ └── ... (Controllers, Routes, Models, etc.)
└── Readme.md # Project documentation
Make sure you have the following installed:
git clone <your-repository-url>
cd fullstackappNavigate to the server directory and install dependencies:
cd server
npm installCreate a .env file in the server directory and add the following variables:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_keyStart the backend server:
npm startThe server will typically run on http://localhost:5000.
Open a new terminal window, navigate to the client directory, and install dependencies:
cd client
npm installCreate a .env.local file in the client directory and add the following variables:
NEXT_PUBLIC_API_URL=http://localhost:5000
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your_nextauth_secretStart the frontend development server:
npm run devThe Next.js app will run on http://localhost:3000.
This project is licensed under the ISC License.
- tamim