A robust, full-stack web application for managing events, RSVPs, and users. Built with modern technologies to ensure performance, scalability, and a great user experience.
- Event Management: Create, update, and view upcoming events with ease.
- RSVP System: Seamlessly register for events and manage attendance.
- User Authentication: Secure user registration and login functionality.
- Responsive Design: Optimized for both desktop and mobile devices.
- Interactive UI: Built with modern UI components for a premium feel.
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: Radix UI / shadcn/ui
- State Management: React Hooks
- Form Handling: React Hook Form + Zod
- Framework: FastAPI
- Language: Python 3.x
- Database: PostgreSQL
- ORM: SQLAlchemy
- Validation: Pydantic
- Node.js (v18 or higher)
- Python (v3.9 or higher)
- PostgreSQL installed and running
-
Navigate to the backend directory:
cd backend -
Create a virtual environment:
python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Configure Environment Variables: Create a
.envfile in thebackenddirectory and add your configuration:DATABASE_HOSTNAME=localhost DATABASE_PORT=5432 DATABASE_PASSWORD=your_password DATABASE_NAME=your_db_name DATABASE_USERNAME=your_username JWT_SECRET_KEY=your_secret_key ALGORITHM=HS256 ACCESS_TOKEN_EXPIRES_MINUTES=30
-
Run the server:
uvicorn app.main:app --reload
The API will be available at
http://localhost:8000. Interactive API Docs:http://localhost:8000/docs
-
Navigate to the frontend directory:
cd frontend -
Install dependencies:
npm install # or pnpm install -
Run the development server:
npm run dev
-
Open the application: Open http://localhost:3000 in your browser.
Contributions are welcome! Please feel free to submit a Pull Request.