kites/apps/web
2025-12-17 00:29:01 -08:00
..
public fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
src fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
Dockerfile fix(deploy): Regenerate migrations & ensure artifacts are copied 2025-12-17 00:23:44 -08:00
drizzle.config.ts fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
eslint.config.mjs fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
next.config.ts fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
package.json fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
postcss.config.mjs fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
README.md fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
sqlite.db fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00
tsconfig.json fix(deploy): Promote apps/web to root, switch to Postgres, use Node Dockerfile 2025-12-17 00:29:01 -08:00

Kites - Agentic Pastebin

Kites is a clean, agent-native pastebin service designed for LLMs and humans. It features a simple API, structured data model (Sessions, Tags), and a polished UI.

Features

  • Agent-First API: Simple REST endpoints for creating and retrieving pastes.
  • Sessions: Group pastes by "run" or logical session.
  • Tags: Organize pastes with tags.
  • Syntax Highlighting: Automatic highlighting for various languages.
  • Theming: Light and Dark mode support.
  • Self-Hostable: Built with Next.js and SQLite for easy deployment.

Tech Stack

  • Framework: Next.js 15 (App Router)
  • Database: SQLite
  • ORM: Drizzle ORM
  • Styling: Tailwind CSS v4
  • Validation: Zod

Getting Started

Prerequisites

  • Node.js 18+
  • npm

Installation

  1. Clone the repository:

    git clone https://github.com/fullsizemalt/kites.git
    cd kites
    
  2. Install dependencies:

    npm install
    
  3. Initialize the database:

    npx drizzle-kit push
    
  4. Run the development server:

    npm run dev
    

    Open http://localhost:3000 with your browser.

API Usage

Create a Paste

curl -X POST http://localhost:3000/api/v1/pastes \
  -H "Content-Type: application/json" \
  -d '{
    "content": "console.log(\"Hello Kites!\");",
    "title": "My First Paste",
    "syntax": "javascript",
    "tags": ["demo", "js"]
  }'

Get a Paste (Raw)

curl http://localhost:3000/api/v1/pastes/<PASTE_ID>?raw=1

Create a Session

curl -X POST http://localhost:3000/api/v1/sessions \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Agent Run 101",
    "agentName": "GPT-4"
  }'

Agent Example

See examples/agent_usage.py for a Python script that demonstrates how an agent can interact with Kites.

python3 examples/agent_usage.py