40db99d734d61b34d3243fc8b57025ec888d2112
Express API with PostgreSQL, React/Vite/Three.js frontend, and locally cached artwork images. Co-authored-by: Cursor <cursoragent@cursor.com>
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
-
Copy
.env.exampleto.envand set database credentials. -
Install dependencies:
npm install cd client && npm install && cd .. -
Apply database schema (requires PostgreSQL superuser for first-time setup):
npm run migrate npm run seed -
Start the server:
npm run server
Development
Run API and Vite dev server separately:
npm run dev:server # http://localhost:3001
npm run dev:client # http://localhost:5173 (proxies /api and /images)
Languages
TypeScript
49.8%
JavaScript
38.7%
CSS
7.8%
PowerShell
3.1%
PLpgSQL
0.3%
Other
0.3%