A full-stack food ordering application built with Next.js, TypeScript, Prisma, and NextAuth.js.
- 🍔 Browse restaurants and menus
- 🛒 Add items to cart
- 💳 Checkout process with confirmation
- 📱 Responsive design for mobile and desktop
- 👤 User authentication and profiles
- 📊 Order tracking with automatic status updates
- 🗑️ Order history management
- Frontend: Next.js, React, TypeScript, Tailwind CSS
- Backend: Next.js API Routes, Prisma ORM
- Database: PostgreSQL
- Authentication: NextAuth.js
- State Management: React Context API
- Node.js 18+ and npm
- PostgreSQL database
- Clone the repository
git clone https://github.com/yourusername/food-ordering-system.git
cd food-ordering-system- Install dependencies
npm install- Set up environment variables
Create a
.envfile in the root directory with the following variables:
DATABASE_URL="postgresql://username:password@localhost:5432/food_ordering"
NEXTAUTH_SECRET="your-secret-key"
NEXTAUTH_URL="http://localhost:3000"
- Initialize the database
npx prisma migrate dev
npx prisma db seed- Run the development server
npm run dev- Open http://localhost:3000 with your browser to see the application.
MIT
- Thanks to all the open-source libraries that made this project possible











