Portfolio site for a robotics and AI engineering studio. React frontend with a FastAPI + MongoDB contact backend, styled around a Swiss/high-contrast design system with a jewel-tone dark mode.
Header → Hero → About → Skills → Projects → Experience → Testimonials → Contact → Footer — a single-page portfolio with a working contact form.
| Layer | Technology |
|---|---|
| Frontend | React · Tailwind CSS · shadcn/ui (Radix primitives) · react-router-dom · next-themes |
| Backend | FastAPI · Motor (async MongoDB driver) |
| Theming | Light/dark toggle — Swiss & high-contrast in light mode, jewel-tone dark in dark mode |
Backend
cd backend
pip install -r requirements.txt
# create .env with MONGO_URL and DB_NAME
uvicorn server:app --reloadFrontend
cd frontend
yarn install
yarn start| Endpoint | Purpose |
|---|---|
GET /api/ |
Health check / root |
GET /api/health |
Service status |
POST /api/contact |
Submit a contact/collaboration message |
GET /api/messages |
List submitted messages |
artibitsstudio/
├── backend/
│ ├── server.py # FastAPI app + contact API
│ └── requirements.txt
├── frontend/
│ └── src/
│ └── components/ # Header, Hero, About, Skills, Projects,
│ # Experience, Testimonials, Contact, Footer
└── design_guidelines.json # theme, color, and typography spec