Skip to content

williamoverton/Neural-Terrain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ Neural Terrain - AI-Generated Minecraft Worlds

Neural Terrain Logo

Create, Share, and Play AI-Generated Minecraft Worlds

Next.js TypeScript Prisma Clerk

๐ŸŒ Generate โ€ข Share โ€ข Play - Create stunning Minecraft worlds with AI and share them with the community.


โœจ What is Neural Terrain?

Neural Terrain is a web application that uses AI to generate custom Minecraft worlds based on your descriptions. Simply describe your dream world, and our AI will build it for you, complete with terrain, structures, and biomes. Once generated, you can share your worlds with the community and join others' creations.

๐ŸŽฏ Key Features

Feature Description
๐Ÿค– AI World Generation Describe any world and our AI will build it using advanced Minecraft world generation
๐ŸŒ Live Minecraft Servers Each generated world becomes a playable Minecraft server
๐Ÿ‘ฅ Community Sharing Share your worlds and discover creations by other players
โค๏ธ Likes & Comments Engage with the community through likes and comments
๐Ÿ“ฑ Responsive Design Works perfectly on all devices
๐Ÿ”’ User Authentication Secure login with Clerk to save your worlds
๐ŸŽจ Beautiful UI Modern, gaming-focused interface with smooth animations

๐ŸŽฎ How It Works

1. Create Your World

  • Sign up for a free account
  • Click "New World" and describe your dream Minecraft world
  • Watch as AI builds your world in real-time with detailed progress updates

2. AI Generation Process

  • Our AI agent uses advanced Minecraft world generation tools
  • Creates custom terrain, structures, and biomes based on your description
  • Generates a complete, playable Minecraft world file
  • Uploads the world to cloud storage for instant access

3. Deploy & Share

  • Your world automatically becomes a live Minecraft server
  • Get a unique server URL to share with friends
  • Your world appears in the community gallery for others to discover

4. Community Features

  • Browse and join worlds created by other players
  • Like and comment on worlds you enjoy
  • View detailed world information and server status

๐Ÿ—๏ธ Technical Architecture

Frontend

  • Next.js 15 with App Router and Turbopack
  • TypeScript for type safety
  • Tailwind CSS for styling
  • Clerk for authentication
  • AI SDK for real-time streaming updates

Backend

  • Next.js API Routes for server logic
  • Prisma with PostgreSQL for database management
  • Dokploy for Minecraft server deployment
  • Vercel Blob for world file storage

AI World Generation

  • Custom Minecraft Agent using Vercel AI SDK
  • Prismarine.js for Minecraft world manipulation
  • Advanced Building Tools for block placement and structure creation
  • Chunk Generation for optimal performance
  • World Upload to cloud storage

Minecraft Integration

  • Live Server Deployment via Dokploy
  • Custom Hostnames for each world
  • Server Status Monitoring
  • Thumbnail Generation for world previews

๐Ÿ“ Project Structure

neural-terrain/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/                    # Next.js App Router
โ”‚   โ”‚   โ”œโ”€โ”€ api/               # API routes
โ”‚   โ”‚   โ”œโ”€โ”€ my-worlds/         # User dashboard
โ”‚   โ”‚   โ”œโ”€โ”€ worlds/            # Community worlds
โ”‚   โ”‚   โ””โ”€โ”€ layout.tsx         # Root layout
โ”‚   โ”œโ”€โ”€ components/            # React components
โ”‚   โ”‚   โ”œโ”€โ”€ ui/               # Reusable UI components
โ”‚   โ”‚   โ”œโ”€โ”€ landing/          # Landing page components
โ”‚   โ”‚   โ””โ”€โ”€ worlds/           # World-related components
โ”‚   โ”œโ”€โ”€ lib/                  # Utilities and services
โ”‚   โ”‚   โ”œโ”€โ”€ world-maker/      # AI world generation
โ”‚   โ”‚   โ””โ”€โ”€ dokploy-client/   # Dokploy API client
โ”‚   โ”œโ”€โ”€ services/             # Business logic
โ”‚   โ””โ”€โ”€ types/               # TypeScript types
โ”œโ”€โ”€ prisma/                  # Database schema
โ””โ”€โ”€ public/                  # Static assets

๐Ÿ› ๏ธ Development

Available Scripts

# Development
npm run dev          # Start development server with Turbopack
npm run build        # Build for production
npm run start        # Start production server

# Database
npm run prisma-dev   # Open Prisma Studio
npm run postinstall  # Generate Prisma client

# Code Quality
npm run lint         # Run ESLint
npm run knip         # Check for unused code

Key Technologies

  • Framework: Next.js 15 with App Router and Turbopack
  • Language: TypeScript 5.9
  • Styling: Tailwind CSS 4
  • Database: Prisma + PostgreSQL
  • Authentication: Clerk
  • Deployment: Dokploy for Minecraft servers
  • AI: Vercel AI SDK with custom Minecraft tools
  • Minecraft: Prismarine.js ecosystem
  • Storage: Vercel Blob

๐ŸŽจ Features in Detail

AI World Generation

  • Real-time streaming updates during generation
  • Advanced Minecraft building tools (cubes, spheres, pyramids, lines)
  • Custom terrain generation with multiple biomes
  • Intelligent structure placement based on descriptions
  • Error handling with retry functionality

Community Features

  • Public world gallery with pagination
  • Like system for world appreciation
  • Comment system for community interaction
  • User profiles and world ownership
  • Server status indicators

User Experience

  • Responsive design for all devices
  • Smooth animations and transitions
  • Real-time status updates
  • Intuitive world creation flow
  • Quick example prompts for inspiration

๐Ÿš€ Getting Started

  1. Clone the repository

    git clone https://github.com/yourusername/neural-terrain.git
    cd neural-terrain
  2. Install dependencies

    npm install
  3. Set up environment variables

    Create a .env.local file with the following required variables:

    # Database
    DATABASE_URL="postgresql://username:password@localhost:5432/neural_terrain"
    
    # Dokploy (for Minecraft server deployment)
    DOKPLOY_PROJECT_ID="your_dokploy_project_id"
    HOSTTHING_API_KEY="your_dokploy_api_key"
    
    # Clerk (for authentication)
    NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="your_clerk_publishable_key"
    CLERK_SECRET_KEY="your_clerk_secret_key"
    
    # Vercel Blob (for world file storage)
    BLOB_READ_WRITE_TOKEN="your_vercel_blob_token"
  4. Set up the database

    npm run prisma-dev
  5. Start development server

    npm run dev

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ™ Acknowledgments

  • Vercel AI SDK for the AI capabilities powering world generation
  • Dokploy for Minecraft server deployment infrastructure
  • Clerk for seamless authentication
  • Prismarine.js for Minecraft world manipulation
  • Next.js team for the incredible framework
  • Minecraft community for inspiration

Made with โค๏ธ for the Minecraft community

GitHub stars GitHub forks

Contributors 2

  •  
  •  

Languages