Express API with PostgreSQL, React/Vite/Three.js frontend, and locally cached artwork images. Co-authored-by: Cursor <cursoragent@cursor.com>
43 lines
875 B
Markdown
43 lines
875 B
Markdown
# Art Gallery
|
|
|
|
Interactive virtual art gallery: zoomable historical timeline, art movement bands, 3D navigable gallery halls, and painting influence graphs.
|
|
|
|
## Stack
|
|
|
|
- **Backend:** Node.js, Express, PostgreSQL
|
|
- **Frontend:** React, Vite, Three.js (`@react-three/fiber`, `@react-three/drei`)
|
|
|
|
## Setup
|
|
|
|
1. Copy `.env.example` to `.env` and set database credentials.
|
|
2. Install dependencies:
|
|
|
|
```bash
|
|
npm install
|
|
cd client && npm install && cd ..
|
|
```
|
|
|
|
3. Apply database schema (requires PostgreSQL superuser for first-time setup):
|
|
|
|
```bash
|
|
npm run migrate
|
|
npm run seed
|
|
```
|
|
|
|
4. Start the server:
|
|
|
|
```bash
|
|
npm run server
|
|
```
|
|
|
|
Open http://localhost:3001
|
|
|
|
## Development
|
|
|
|
Run API and Vite dev server separately:
|
|
|
|
```bash
|
|
npm run dev:server # http://localhost:3001
|
|
npm run dev:client # http://localhost:5173 (proxies /api and /images)
|
|
```
|