
Temps D'arrêt Studio – Photographer Portfolio & Client Portal
Overview
A modern portfolio and client portal for photographers, built with SvelteKit, Node.js, and MongoDB. Features public galleries, professional services, secure client access, and admin management.
Monorepo Structure
frontend/
– SvelteKit app (public site, client portal)
services/
– Node.js microservices (user, invite, portfolio, event, file, notification)
shared/
– Shared TypeScript utilities and configs
infrastructure/
– IaC scripts (Docker, k8s, etc.)
.github/workflows/
– CI/CD pipelines
Tech Stack
- Frontend: SvelteKit + TypeScript + TailwindCSS
- Backend: Node.js + Express + TypeScript (microservices)
- Database: MongoDB + Mongoose
- Auth: Magic.link or custom magic links
- Storage: Local or cloud (S3/CloudFlare)
- Deployment: Docker, GitHub Actions, VPS/cloud
Key Features
- Public portfolio showcase (weddings, portraits, landscapes, private events)
- Professional services pages
- Responsive, modern UI
- Passwordless client authentication
- Secure event galleries and photo downloads
- Admin content and client management
- Invite flow for onboarding new clients
Getting Started
- Clone the repo:
git clone https://github.com/romdj/tempsdarret.studio.git
- Install dependencies:
npm install
- Build all workspaces:
npm run build
- Run locally:
See each workspace’s README for details.
Roadmaps & Documentation
Contributing
- Follow monorepo and workspace conventions
- See Best Practices for code style and workflow
- Use pre-commit hooks for linting and type checks
Maintenance