A modern web application for generating and tracking QR codes. This project consists of a Next.js frontend and a Python backend, providing a seamless experience for QR code management.
- Generate QR codes with custom content
- Track QR code scans and analytics
- Modern, responsive UI built with Next.js and Tailwind CSS
- RESTful API backend
- Next.js 15
- React 19
- TypeScript
- Tailwind CSS
- QR Code generation library
- Python
- FastAPI
- Docker support
- Node.js (v18 or higher)
- Python 3.8 or higher
- Docker and Docker Compose (optional, for containerized setup)
- pnpm (recommended) or npm
-
Navigate to the frontend directory:
cd frontend -
Install dependencies:
pnpm install # or npm install -
Start the development server:
pnpm dev # or npm run dev
The frontend will be available at http://localhost:3000
-
Navigate to the backend directory:
cd backend -
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Start the backend server:
uvicorn app.main:app --reload
The backend API will be available at http://localhost:8000
If you prefer using Docker:
- From the project root, run:
docker-compose up
This will start both frontend and backend services in containers.
Once the backend is running, you can access the API documentation at:
- Swagger UI:
http://localhost:8000/docs - ReDoc:
http://localhost:8000/redoc
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.