FeaturesTemplatesShowcaseTownie
AI
BlogDocsPricing
Log inSign up
colel
colelrust-coasts-new-community-form
Public
Like
1
rust-coasts-new-community-form
Home
Code
10
backend
1
frontend
3
shared
2
.vtignore
AGENT.md
BRAND_STYLE_GUIDE.md
FEATURE_SPEC.md
README.md
deno.json
main.tsx
Branches
1
Pull requests
Remixes
History
Environment variables
1
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
AGENT.md
Code
/
AGENT.md
Search
7/11/2025
AGENT.md

Agent Configuration for Community Interest Capture System

Commands

  • No explicit test/lint commands - Val Town platform handles these automatically
  • Development: Val Town auto-deploys on changes, no local build needed
  • Database: SQLite migrations run automatically on startup in backend/index.ts

Architecture

  • Val Town Project: Community interest capture system with location-based pages and admin dashboard
  • Backend: Hono API server (backend/index.ts) handling community interest submissions and admin features
  • Frontend: React 18.2.0 with TypeScript (frontend/index.tsx, components/)
  • Database: SQLite with community interest table (community_interest_1) and legacy talk submissions (talk_submissions_3)
  • Discord Integration: Maintained for future event coordination (optional)
  • Shared: TypeScript types and utilities (shared/types.ts)

Code Style & Conventions

  • Language: TypeScript/TSX with React 18.2.0
  • Imports: Use https://esm.sh for npm packages, pin React to 18.2.0
  • Types: Add TypeScript types for all data structures (see shared/types.ts)
  • Secrets: Always use environment variables, never hardcode secrets
  • JSX: Start React files with /** @jsxImportSource https://esm.sh/react@18.2.0 */
  • Styling: CSS-in-JS inline styles with CSS custom properties, no external CSS frameworks
  • Typography: Instrument Serif for headings (.font-heading), system monospace for body text
  • Color System: Use CSS custom properties (--bg-primary, --text-primary, --accent-primary, etc.)
  • Error Handling: Let errors bubble up with context, avoid empty catch blocks
  • Database: Change table names (e.g., _3, _4) when modifying schemas instead of ALTER TABLE
  • Platform: Use Val Town utils for file operations (readFile, serveFile)

Discord API Design Notes

  • Role Mentions: Use <@&ROLE_ID> format in message content
  • User Mentions: Use <@USER_ID> format in message content
  • Channel Mentions: Use <#CHANNEL_ID> format in message content
  • Special Mentions: @everyone and @here work as plain text (no ID needed)
  • Permissions: Role must be mentionable OR bot needs "Mention Everyone" permission

Design System

  • Max Width: 480px for forms, 1200px for admin/directory pages
  • Spacing: 4px base unit (4, 8, 12, 16, 24, 32, 48, 64px)
  • Border Radius: 4px throughout
  • Typography Scale: 48px/36px/24px/20px/18px/16px/14px/12px
  • Component Patterns: Card-based layout with subtle shadows and borders
Go to top
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Product
FeaturesPricing
Developers
DocsStatusAPI ExamplesNPM Package Examples
Explore
ShowcaseTemplatesNewest ValsTrending ValsNewsletter
Company
AboutBlogCareersBrandhi@val.town
Terms of usePrivacy policyAbuse contact
© 2025 Val Town, Inc.