Explore the world through AI-powered Street View descriptions and image generation.
View the site!
Table of Contents
Beyond Cloud is a web application that allows users to explore the world through Google Street View, enhanced with AI-generated descriptions and image generation. Users can navigate the map, enter Street View, and then use AI to describe the scene and even generate new images based on the description.
- Interactive Google Maps Integration: Browse the world and enter Street View at any location.
- AI-Powered Street View Descriptions: Generate detailed descriptions of Street View scenes using Google's Vertex AI.
- AI Image Generation: Create new images based on the AI-generated descriptions using Google's Imagen API.
- Prompt Customization: Add twists to the AI descriptions with predefined styles or custom prompts.
- User Authentication: Secure sign-in with Discord.
- Pro Features: Reduced timeout for image generation requests for pro users.
- Next.js - The React Framework for Production
- TypeScript - TypeScript is a strongly typed programming language that builds on JavaScript, giving you better tooling at any scale.
- Tailwind CSS - A utility-first CSS framework for rapidly building custom designs.
- tRPC - End-to-end typesafe APIs made easy.
- Drizzle ORM - Typesafe ORM for SQL databases.
- NextAuth.js - Authentication for Next.js.
- Google Maps Platform - For interactive maps and Street View.
- Google Cloud Vertex AI & Imagen API - For AI-powered descriptions and image generation.
- Radix UI - Unstyled, accessible components for building high-quality user interfaces.
- Lucide React - Beautifully simple, pixel-perfect icons.
- Sonner - An opinionated toast component for React.
To get started with the project, follow these steps:
- Node.js version 20 or higher.
- pnpm package manager. Install with:
npm install -g pnpm
- Docker (optional, for local database setup).
- Google Cloud SDK (gcloud) (optional, for local Vertex AI/Imagen API access).
-
Clone the repository:
git clone https://github.com/beyonds-cloud/beyond-cloud.git cd beyond-cloud -
Install dependencies:
pnpm install
-
Set up environment variables:
- Create a
.envfile based on.env.example. - Fill in the required variables, including:
DATABASE_URL: PostgreSQL database connection string.NEXT_PUBLIC_MAPS_KEY: Google Maps API key.AUTH_SECRET: NextAuth secret. Generate withnpx auth secret.AUTH_DISCORD_ID: Discord OAuth client ID.AUTH_DISCORD_SECRET: Discord OAuth client secret.GOOGLE_MAPS_SERVER_KEY: Google Maps server-side API key.AUTH_TRUST_HOST: Set to "true" if running in a trusted environment.
- Create a
-
Start the local database (optional, if not using a remote database):
- Run the
start-database.shscript:./start-database.sh
- Note for Windows users: This script requires WSL (Windows Subsystem for Linux) and Docker Desktop.
- Run the
-
Run database migrations:
pnpm db:push
-
Start the development server:
pnpm dev
-
Open your browser and navigate to
http://localhost:3000.
- This README was created using gitreadme.dev — an AI tool that looks at your entire codebase to instantly generate high-quality README files.