Leon van Zyl 90b8a286da add GitHub-integrated feature workflow commands and bump version to 1.1.25
This commit introduces a comprehensive feature management workflow that
integrates with GitHub Issues and Projects for better task tracking and
team collaboration.

## New Commands Added

- `/publish-to-github`: Publishes features from /specs to GitHub by:
  - Creating an Epic issue with full requirements
  - Creating individual task issues for each implementation step
  - Setting up a GitHub Project board linked to the repository
  - Creating labels for organization (epic, feature/*, phase-*)
  - Generating a github.md reference file in the specs folder

- `/continue-feature`: Implements the next available task by:
  - Querying open issues for the feature
  - Checking task dependencies to find unblocked work
  - Updating GitHub Project board status (In Progress -> Done)
  - Adding implementation details as issue comments
  - Providing fallback to implementation-plan.md when offline

## Updated Commands

- `/create-feature`: Enhanced with clearer structure including:
  - Detailed implementation plan format template
  - Requirements for atomic, agent-implementable tasks
  - Guidance on next steps after feature creation
  - Better documentation for the /specs folder structure

## Package Updates

- Bumped version from 1.1.24 to 1.1.25

All changes are mirrored in both the root .claude/commands/ folder
and the create-agentic-app/template/.claude/commands/ folder to ensure
new projects created with the CLI have access to these workflows.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 07:05:26 +02:00
2025-08-20 12:17:44 +02:00
2025-11-29 12:09:39 +02:00
2025-11-06 08:27:52 +02:00
2025-11-30 14:58:53 +02:00
2025-11-30 08:16:24 +02:00
2025-08-11 12:38:39 +02:00
2025-08-13 15:28:44 +02:00

Agentic Coding Boilerplate

A complete agentic coding boilerplate with authentication, PostgreSQL database, AI chat functionality, and modern UI components - perfect for building AI-powered applications and autonomous agents.

🚀 Features

  • 🔐 Authentication: Better Auth with Google OAuth integration
  • 🗃️ Database: Drizzle ORM with PostgreSQL
  • 🤖 AI Integration: Vercel AI SDK with OpenRouter (access to 100+ AI models)
  • 📁 File Storage: Automatic local/Vercel Blob storage with seamless switching
  • 🎨 UI Components: shadcn/ui with Tailwind CSS
  • Modern Stack: Next.js 16, React 19, TypeScript
  • 📱 Responsive: Mobile-first design approach

🎥 Video Tutorial

Watch the complete walkthrough of this agentic coding template:

Agentic Coding Boilerplate Tutorial

🔗 Watch on YouTube

Support This Project

If this boilerplate helped you build something awesome, consider buying me a coffee!

Buy me a coffee

📋 Prerequisites

Before you begin, ensure you have the following installed on your machine:

  • Node.js: Version 18.0 or higher (Download here)
  • Git: For cloning the repository (Download here)
  • PostgreSQL: Either locally installed or access to a hosted service like Vercel Postgres

🛠️ Quick Setup

Get started with a single command:

npx create-agentic-app@latest my-app
cd my-app

Or create in the current directory:

npx create-agentic-app@latest .

The CLI will:

  • Copy all boilerplate files
  • Install dependencies with your preferred package manager (pnpm/npm/yarn)
  • Set up your environment file

Next steps after running the command:

  1. Update .env with your API keys and database credentials
  2. Start the database: docker compose up -d
  3. Run migrations: npm run db:migrate
  4. Start dev server: npm run dev

Manual Setup (Alternative)

If you prefer to set up manually:

1. Clone or Download the Repository

Option A: Clone with Git

git clone https://github.com/leonvanzyl/agentic-coding-starter-kit.git
cd agentic-coding-starter-kit

Option B: Download ZIP Download the repository as a ZIP file and extract it to your desired location.

2. Install Dependencies

npm install

3. Environment Setup

Copy the example environment file:

cp env.example .env

Fill in your environment variables in the .env file:

# Database
POSTGRES_URL="postgresql://username:password@localhost:5432/your_database_name"

# Authentication - Better Auth
BETTER_AUTH_SECRET="your-random-32-character-secret-key-here"

# Google OAuth (Get from Google Cloud Console)
GOOGLE_CLIENT_ID="your-google-client-id"
GOOGLE_CLIENT_SECRET="your-google-client-secret"

# AI Integration via OpenRouter (Optional - for chat functionality)
# Get your API key from: https://openrouter.ai/settings/keys
# View available models at: https://openrouter.ai/models
OPENROUTER_API_KEY="sk-or-v1-your-openrouter-api-key-here"
OPENROUTER_MODEL="openai/gpt-5-mini"

# App URL (for production deployments)
NEXT_PUBLIC_APP_URL="http://localhost:3000"

# File Storage (Optional - for file upload functionality)
# Leave empty to use local storage (public/uploads/) in development
# Set to enable Vercel Blob storage in production
BLOB_READ_WRITE_TOKEN=""

4. Database Setup

Generate and run database migrations:

npm run db:generate
npm run db:migrate

5. Start the Development Server

npm run dev

Your application will be available at http://localhost:3000

⚙️ Service Configuration

PostgreSQL Database on Vercel

  1. Go to Vercel Dashboard
  2. Navigate to the Storage tab
  3. Click CreatePostgres
  4. Choose your database name and region
  5. Copy the POSTGRES_URL from the .env.local tab
  6. Add it to your .env file

Google OAuth Credentials

  1. Go to Google Cloud Console
  2. Create a new project or select an existing one
  3. Navigate to CredentialsCreate CredentialsOAuth 2.0 Client ID
  4. Set application type to Web application
  5. Add authorized redirect URIs:
    • http://localhost:3000/api/auth/callback/google (development)
    • https://yourdomain.com/api/auth/callback/google (production)
  6. Copy the Client ID and Client Secret to your .env file

OpenRouter API Key

  1. Go to OpenRouter
  2. Sign up or log in to your account
  3. Navigate to SettingsKeys or visit Keys Settings
  4. Click Create Key and give it a name
  5. Copy the API key and add it to your .env file as OPENROUTER_API_KEY
  6. Browse available models at OpenRouter Models

File Storage Configuration

The project includes a flexible storage abstraction that automatically switches between local filesystem storage (development) and Vercel Blob storage (production).

For Development (Local Storage):

  • Leave BLOB_READ_WRITE_TOKEN empty or unset in your .env file
  • Files are automatically stored in public/uploads/
  • Files are served at /uploads/ URL path
  • No external service or configuration needed

For Production (Vercel Blob):

  1. Go to Vercel Dashboard
  2. Navigate to your project → Storage tab
  3. Click CreateBlob
  4. Copy the BLOB_READ_WRITE_TOKEN from the integration
  5. Add it to your production environment variables

The storage service automatically detects which backend to use based on the presence of the BLOB_READ_WRITE_TOKEN environment variable.

🗂️ Project Structure

src/
├── app/                    # Next.js app directory
│   ├── api/               # API routes
│   │   ├── auth/          # Authentication endpoints
│   │   └── chat/          # AI chat endpoint
│   ├── chat/              # AI chat page
│   ├── dashboard/         # User dashboard
│   └── page.tsx           # Home page
├── components/            # React components
│   ├── auth/             # Authentication components
│   └── ui/               # shadcn/ui components
└── lib/                  # Utilities and configurations
    ├── auth.ts           # Better Auth configuration
    ├── auth-client.ts    # Client-side auth utilities
    ├── db.ts             # Database connection
    ├── schema.ts         # Database schema
    ├── storage.ts        # File storage abstraction
    └── utils.ts          # General utilities

🔧 Available Scripts

npm run dev          # Start development server with Turbopack
npm run build        # Build for production
npm run start        # Start production server
npm run lint         # Run ESLint
npm run db:generate  # Generate database migrations
npm run db:migrate   # Run database migrations
npm run db:push      # Push schema changes to database
npm run db:studio    # Open Drizzle Studio (database GUI)
npm run db:dev       # Push schema for development
npm run db:reset     # Reset database (drop all tables)

📖 Pages Overview

  • Home (/): Landing page with setup instructions and features overview
  • Dashboard (/dashboard): Protected user dashboard with profile information
  • Chat (/chat): AI-powered chat interface using OpenRouter (requires authentication)

🚀 Deployment

  1. Install the Vercel CLI globally:

    npm install -g vercel
    
  2. Deploy your application:

    vercel --prod
    
  3. Follow the prompts to configure your deployment

  4. Add your environment variables when prompted or via the Vercel dashboard

Production Environment Variables

Ensure these are set in your production environment:

  • POSTGRES_URL - Production PostgreSQL connection string
  • BETTER_AUTH_SECRET - Secure random 32+ character string
  • GOOGLE_CLIENT_ID - Google OAuth Client ID
  • GOOGLE_CLIENT_SECRET - Google OAuth Client Secret
  • OPENROUTER_API_KEY - OpenRouter API key (optional, for AI chat functionality)
  • OPENROUTER_MODEL - Model name from OpenRouter (optional, defaults to openai/gpt-5-mini)
  • NEXT_PUBLIC_APP_URL - Your production domain
  • BLOB_READ_WRITE_TOKEN - Vercel Blob token (optional, uses local storage if not set)

🎥 Tutorial Video

Watch my comprehensive tutorial on how to use this agentic coding boilerplate to build AI-powered applications:

📺 YouTube Tutorial - Building with Agentic Coding Boilerplate

🤝 Contributing

  1. Fork this repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

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

🆘 Need Help?

If you encounter any issues:

  1. Check the Issues section
  2. Review the documentation above
  3. Create a new issue with detailed information about your problem

Happy coding! 🚀

Description
No description provided
Readme 4.6 MiB
Languages
TypeScript 91.7%
JavaScript 5.1%
CSS 3.2%