Skip to content

Fulling is an AI-powered Full-stack Engineer Agent. Built with Next.js, Claude, shadcn/ui, and PostgreSQL. Use kubernetes as infra.

License

Notifications You must be signed in to change notification settings

FullAgent/fulling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fulling - AI-Powered Full-Stack Development Platform

Next.js TypeScript PostgreSQL Kubernetes Claude Code

Overview

Fulling provides a sandboxed environment with Claude Code and PostgreSQL — everything you need to vibe code full-stack apps.

Fulling automatically sets up the following for your project, ready in a minute:

  • Next.js environment with shadcn/ui
  • Dedicated PostgreSQL (pre-configured)
  • Claude Code (pre-configured)
  • A live domain

fulling-frame

project_details

Features

  • Dev environment - Next.js + shadcn/ui + Claude Code CLI, all pre-configured. Environment variables are set up, so you can start coding immediately.

  • Database - Each project gets its own PostgreSQL instance via KubeBlocks. Connection string is injected as DATABASE_URL.

  • Live domains - HTTPS subdomains with SSL, mapped to ports 3000/5000/8080. Your app is accessible the moment you run it.

  • Web terminal - Built-in ttyd terminal. Chat with Claude Code, run commands, see output—all in your browser.

  • Config awareness - Set up OAuth or payment configs in the UI. Claude Code can read these and implement the features for you.

  • GitHub sync - Connect your repo. Push, pull, version control—works like you'd expect.

  • One-click deploy - Deploy from sandbox to production Kubernetes. No YAML wrangling required.

Star us for latest updates

star-demo

Tech Stack

Frontend

  • Framework: Next.js 16.0.10 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS v4
  • UI Components: Shadcn/UI
  • State Management: React Hooks

Backend

  • Runtime: Node.js
  • API: Next.js API Routes
  • Database ORM: Prisma
  • Authentication: NextAuth v5 with GitHub OAuth

Infrastructure

  • Container Orchestration: Kubernetes
  • Database: PostgreSQL (via KubeBlocks)
  • Web Terminal: ttyd
  • Container Image: fullstack-web-runtime (Custom Docker image with development tools)

Installation

Prerequisites

  • Node.js 20.x or higher
  • PostgreSQL database
  • Kubernetes cluster with KubeBlocks installed
  • GitHub OAuth application credentials

Environment Setup

  1. Clone the repository:
git clone https://github.com/FullAgent/fulling.git
cd fulling
  1. Install dependencies:
pnpm install
  1. Set up environment variables:

Create .env.local file:

# Database
DATABASE_URL="postgresql://user:password@localhost:5432/fullstackagent"

# NextAuth
NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="your-nextauth-secret"
AUTH_TRUST_HOST=""

# GitHub OAuth (replace with your actual values)
GITHUB_CLIENT_ID=""
GITHUB_CLIENT_SECRET=""

# Sealos OAuth
SEALOS_JWT_SECRET=""

# job
DATABASE_LOCK_DURATION_SECONDS=""
MAX_DATABASES_PER_RECONCILE=""

SANDBOX_LOCK_DURATION_SECONDS=""
MAX_SANDBOXES_PER_RECONCILE=""

# k8s resource
RUNTIME_IMAGE=""

# aiproxy
AIPROXY_ENDPOINT=""
ANTHROPIC_BASE_URL=""

# Log
LOG_LEVEL="info"

# login
ENABLE_SEALOS_AUTH=""
  1. Initialize database:
npx prisma generate
npx prisma db push
  1. Run the development server:
pnpm run dev

Open http://localhost:3000 to access the application.

Database Schema

prisma/schema.prisma

Deployment

Kubernetes Resources

The platform creates the following Kubernetes resources for each project:

  1. Database Cluster (KubeBlocks):

    • PostgreSQL 14.8.0
    • 3Gi storage
    • Auto-generated credentials
  2. Sandbox Deployment:

    • Custom fullstack-web-runtime image
    • Claude Code CLI pre-installed
    • Web terminal (ttyd) on port 7681
    • Application ports: 3000, 5000, 8080
  3. Services & Ingress:

    • Internal service for pod networking
    • HTTPS ingress with SSL termination
    • WebSocket support for terminal

Resource Limits

Default resource allocation per sandbox:

  • CPU: 200m limit, 20m request
  • Memory: 256Mi limit, 25Mi request
  • Storage: 3Gi for database

Development

Project Structure

fulling/
├── app/                    # Next.js App Router pages
│   ├── api/               # API routes
│   ├── projects/          # Project management pages
│   └── layout.tsx         # Root layout
├── components/            # React components
│   ├── ui/               # Shadcn/UI components
│   └── ...               # Feature components
├── lib/                   # Core libraries
│   ├── auth.ts           # NextAuth configuration
│   ├── db.ts             # Prisma client
│   ├── kubernetes.ts     # Kubernetes service
│   └── github.ts         # GitHub integration
├── prisma/               # Database schema
├── yaml/                 # Kubernetes templates
└── public/               # Static assets

Key Services

KubernetesService (lib/kubernetes.ts)

  • Manages all Kubernetes operations
  • Creates databases and sandboxes
  • Handles pod lifecycle management

Authentication (lib/auth.ts)

  • GitHub OAuth integration
  • Session management
  • User authorization

Database (lib/db.ts)

  • Prisma ORM configuration
  • Connection pooling

Security

  • Authentication: GitHub OAuth ensures only authorized users can access the platform
  • Isolation: Each sandbox runs in its own Kubernetes namespace
  • Secrets Management: Sensitive data stored in Kubernetes secrets
  • Network Policies: Sandboxes isolated from each other
  • Resource Limits: Prevents resource exhaustion attacks

Contributing

See Contributing Guidelines for details.

Development Setup

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests: npm test
  5. Submit a pull request

License

MIT License - see LICENSE.

Acknowledgments

Contact


100% AI-generated code. Prompted by fanux. Thanks for Claude code & Opus & Sonnet 4.5 & GLM & Kimi K2 Thinking

About

Fulling is an AI-powered Full-stack Engineer Agent. Built with Next.js, Claude, shadcn/ui, and PostgreSQL. Use kubernetes as infra.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 6