63 lines
3.2 KiB
Markdown
63 lines
3.2 KiB
Markdown
# Street View Gallery
|
|
|
|
Street View Gallery is an enterprise-grade, geospatial visualization platform designed to present custom 360-degree panoramic street view imagery publicly accessible. Built with Next.js and Prisma, it serves as a secure, high-performance, independent alternative to commercial platform ecosystems.
|
|
|
|
The platform aims organizations and individuals to show their projects which recorded for Google Street View and makes it publicly accessible and explore from single lightweight UI.
|
|
|
|

|
|
|
|
## Quick Start (Docker run)
|
|
|
|
For evaluation or localized testing environments, execute the following command:
|
|
|
|
```bash
|
|
docker run -d -p 3000:3000 --name gsv_gallery atakanozban/gsv_gallery:latest
|
|
```
|
|
|
|
## Production Deployment (Docker Compose)
|
|
|
|
For production-grade environments requiring data persistence, network isolation, and high availability, utilize the orchestrated configuration below:
|
|
|
|
```yaml
|
|
services:
|
|
gsv_gallery:
|
|
image: atakanozban/gsv_gallery:latest
|
|
container_name: gsv_gallery
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- PORT=3000
|
|
- DATABASE_URL=file:/app/data/prod.db
|
|
- GOOGLE_MAPS_API_KEY=YOUR_GOOGLE_MAPS_API_KEY_HERE
|
|
- ADMIN_USERNAME=admin
|
|
- ADMIN_PASSWORD=YOUR_SECURE_PASSWORD_HERE
|
|
- GOOGLE_CLIENT_ID=YOUR_GOOGLE_CLIENT_ID_HERE
|
|
- GOOGLE_CLIENT_SECRET=YOUR_GOOGLE_CLIENT_SECRET_HERE
|
|
volumes:
|
|
- ./data:/app/data
|
|
restart: unless-stopped
|
|
```
|
|
|
|
# Configuration & Environment Variables
|
|
The platform utilizes environment variables for backend initialization. Ensure these are securely provisioned during container runtime orchestration:
|
|
|
|
| Variable | Description | Requirement |
|
|
| :--- | :--- | :--- |
|
|
| `DATABASE_URL` | The PostgreSQL connection string utilized by the Prisma ORM layer for transaction logs and metadata persistence. | **Required** |
|
|
|
|
Note on Client-Side Integrations: The platform eliminates compile-time API dependencies. The Google Maps JavaScript API payload is resolved and securely injected via dynamic runtime state mechanics (/api/config) post-initialization.
|
|
|
|
# Core Architecture & Features
|
|
|
|
- Interactive Geospatial Dashboard: A unified, map-centric interface engineered to monitor, display, and review distinct panoramic tracks with optimized multi-layer rendering.
|
|
|
|
- Telemetry & GPX Integration: Automated, server-side parsed polyline extraction from standard GPX track logs, calculating accurate cumulative distances using high-precision spherical geometry algorithms.
|
|
|
|
- Synchronized Dual-View Navigation: Fully synchronized state management linking immersive, full-screen street view iframe panoramas with active tracking mini-maps.
|
|
|
|
- Responsive Enterprise-Ready UI: Highly responsive web design layout optimized for both command-center displays and cross-platform mobile devices out of the box.
|
|
|
|
# Support
|
|
|
|
If you need more help with Street View Gallery, you can ask for support in [Gitea Issues](https://git.atakanozban.com/atakan/gsv_gallery/issues) or direct support through [mail](mailto:contact@atakanozban.com). This is the best source of answers, as both the n8n support team and community members can help.
|