This repository contains the source code for the CN334 ROPA project, a collaboration with Netbay. The project is split into a FastAPI backend and a Next.js frontend.
server/: Python FastAPI backend.client/: React/Next.js frontend.
Before you begin, ensure you have the following installed on your machine:
- Python: 3.10 or higher
- pip: Python package manager
- venv: (Standard in Python 3.3+) For creating virtual environments
- Node.js: 20.x or higher (LTS recommended)
- npm: (Included with Node.js) or pnpm / yarn
git clone <repository-url>
cd cn334-ropa-netbayNavigate to the server directory and set up the Python environment:
cd server
# Create a virtual environment
python -m venv .venv
# Activate the virtual environment
# On Linux/macOS:
source .venv/bin/activate
# On Windows:
# .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txtTo start the FastAPI server with auto-reload:
uvicorn app.main:app --reloadThe backend will be available at http://localhost:8000.
You can access the interactive API documentation at http://localhost:8000/docs.
Navigate to the client directory and install Node.js dependencies:
cd ../client
# Install dependencies
npm installTo start the Next.js development server:
npm run devThe frontend will be available at http://localhost:3000.
- Branching: Use descriptive branch names (e.g.,
feature/login-page,bugfix/api-headers). - Commits: Follow Conventional Commits if possible.
- Linting:
- Backend: Use
rufforflake8(if configured). - Frontend: Run
npm run lintbefore committing.
- Backend: Use
[Insert License Information Here, e.g., MIT]