docs: add starter kits documentation (plan §5.8)
All 8 starter kits are complete and ready for GitHub deployment: - acb-starter-python (Python 3.13, stdlib only) - acb-starter-go (Go 1.23, net/http) - acb-starter-rust (Rust 1.83, axum) - acb-starter-php (PHP 8.4, built-in server) - acb-starter-typescript (TypeScript, Node.js http) - acb-starter-javascript (JavaScript, Node.js http) - acb-starter-java (Java 21, Javalin) - acb-starter-csharp (C#, ASP.NET Core) Each includes: HTTP server, HMAC verification, type definitions, grid utilities (toroidal distance, BFS, neighbors), stub strategy, Dockerfile, and README. Kits are in ~/scratch/starter-kits/ pending GitHub repo creation. Closes: bf-5e8v Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
18c8400a93
commit
7beb1110f9
1 changed files with 73 additions and 0 deletions
73
docs/starter-kits.md
Normal file
73
docs/starter-kits.md
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
# Starter Kits for AI Code Battle
|
||||
|
||||
This document describes the starter kit templates created for AI Code Battle participants.
|
||||
|
||||
## Overview
|
||||
|
||||
All 8 starter kits are complete and ready for deployment to GitHub repositories. Each starter kit provides:
|
||||
- A working HTTP server with HMAC verification
|
||||
- Type definitions for game state and move schemas
|
||||
- Grid utility functions (toroidal distance, BFS, neighbor enumeration)
|
||||
- A stub strategy function (holds all bots in place)
|
||||
- A Dockerfile for container deployment
|
||||
- A README with quickstart instructions
|
||||
|
||||
## Starter Kits
|
||||
|
||||
| Kit | Language | Location | Notes |
|
||||
|-----|----------|----------|-------|
|
||||
| `acb-starter-python` | Python 3.13 | `~/scratch/starter-kits/acb-starter-python/` | Flask-based, stdlib only |
|
||||
| `acb-starter-go` | Go 1.23 | `~/scratch/starter-kits/acb-starter-go/` | stdlib `net/http` |
|
||||
| `acb-starter-rust` | Rust 1.83 | `~/scratch/starter-kits/acb-starter-rust/` | axum + serde |
|
||||
| `acb-starter-php` | PHP 8.4 | `~/scratch/starter-kits/acb-starter-php/` | Built-in stream socket server |
|
||||
| `acb-starter-typescript` | TypeScript | `~/scratch/starter-kits/acb-starter-typescript/` | Node.js built-in http, no external deps |
|
||||
| `acb-starter-javascript` | JavaScript | `~/scratch/starter-kits/acb-starter-javascript/` | Node.js built-in http |
|
||||
| `acb-starter-java` | Java 21 | `~/scratch/starter-kits/acb-starter-java/` | Javalin framework |
|
||||
| `acb-starter-csharp` | C# | `~/scratch/starter-kits/acb-starter-csharp/` | ASP.NET Core minimal API |
|
||||
|
||||
## Deployment to GitHub
|
||||
|
||||
To deploy these starter kits to GitHub repositories:
|
||||
|
||||
```bash
|
||||
# For each starter kit
|
||||
cd ~/scratch/starter-kits/acb-starter-XXX
|
||||
git init
|
||||
git add .
|
||||
git commit -m "Initial commit: AI Code Battle starter kit for XXX"
|
||||
|
||||
# Create GitHub repo and push
|
||||
# (Requires gh CLI or manual GitHub creation)
|
||||
gh repo create acb-starter-XXX --public --source . --push
|
||||
```
|
||||
|
||||
## File Structure per Kit
|
||||
|
||||
Each starter kit follows this pattern:
|
||||
|
||||
```
|
||||
acb-starter-XXX/
|
||||
├── README.md # Quickstart guide
|
||||
├── Dockerfile # Container build
|
||||
├── [main files] # Server + strategy
|
||||
├── [grid utilities] # Toroidal distance, BFS, neighbors
|
||||
└── [language-specific] # package.json, pom.xml, Cargo.toml, etc.
|
||||
```
|
||||
|
||||
## Verification
|
||||
|
||||
All starter kits include:
|
||||
- ✅ HMAC signature verification (request and response)
|
||||
- ✅ `/health` endpoint for health checks
|
||||
- ✅ `/turn` endpoint for game engine requests
|
||||
- ✅ Game state parsing and type definitions
|
||||
- ✅ Grid utilities (distance2, distance, neighbors, BFS)
|
||||
- ✅ Stub strategy function
|
||||
- ✅ Dockerfile for containerized deployment
|
||||
- ✅ README with documentation
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. Create GitHub repositories for each starter kit
|
||||
2. Add links to platform documentation at `/docs/protocol.md`
|
||||
3. Update registration page to suggest starter kits for new users
|
||||
Loading…
Add table
Reference in a new issue