rust-webapp

Build full-stack stateful web apps using Axum + HTMX + Alpine.js + Neon (PostgreSQL).

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "rust-webapp" with this command: npx skills add arsenyinfo/rust-webapp-skill/arsenyinfo-rust-webapp-skill-rust-webapp

Build full-stack stateful web apps using Axum + HTMX + Alpine.js + Neon (PostgreSQL).

Stack: Axum + SQLx (Rust), Askama templates + HTMX + Alpine.js + PicoCSS, Neon (PostgreSQL), Docker.

Workflow

Phase 1: Setup

Prerequisites (install once):

npm i -g neonctl brew install jq cargo install sqlx-cli --features postgres,native-tls

Required env vars: NEON_API_KEY , NEON_PROJECT_ID

Scaffold app:

NEON_BRANCH_TTL=2h .claude/skills/rust-webapp/scripts/scaffold <app-name> .

Creates app files and a Neon branch ({app}-dev ) with 2h expiration.

Phase 2: Data Modeling

  • Define models in src/models.rs

  • Write migration SQL in migrations/001_init.sql

  • Use SERIAL for i32, BIGSERIAL for i64

Reference: Models - SQLx patterns, struct definitions, type mapping

Phase 3: Backend Implementation

  • Add route handlers in src/main.rs

  • All handlers return Result<T, AppError>

  • use ? operator

  • NEVER use .expect() or .unwrap()

  • causes server crashes

  • Route params use {id} syntax (NOT :id )

Reference: Handlers - CRUD patterns, router setup, transactions

Phase 4: Frontend

  • Update Askama templates in templates/

  • Delete unused template files (create.html, edit.html if not needed)

  • Use HTMX for interactivity, Alpine.js for state

Reference: Templates - Askama, HTMX, Alpine patterns Reference: Design - CSS components, layout patterns

Phase 5: Validation

Validate (runs cargo check, clippy, tests, release build):

.claude/skills/rust-webapp/scripts/validate .

Fix all errors before completing.

Template Structure

├── Cargo.toml # Dependencies ├── Dockerfile # Multi-stage Rust build ├── src/ │ ├── main.rs # Axum server, routes, templates │ ├── db.rs # SQLx pool setup │ └── models.rs # Data structs ├── templates/ │ ├── base.html # Base layout (PicoCSS/HTMX/Alpine CDN) │ ├── index.html # List view │ ├── edit.html # Edit form │ └── create.html # Create form ├── static/ │ └── styles.css # Custom CSS overrides └── migrations/ └── 001_init.sql # Database schema

Critical Rules

  • NEVER .expect() or .unwrap() in handlers - use ? operator

  • Route params: {id} not :id

  • wrong syntax compiles but panics at runtime

  • All handlers return Result<T, AppError>

  • Check rows_affected() for DELETE/UPDATE to return 404

  • Use compile-time SQLx macros (query! , query_as! )

  • Ensure the app has enough logs for basic observability

Full list: Pitfalls

Constraints

  • Neon (PostgreSQL) required - needs DATABASE_URL

  • All routes at root level (/, /new, /{id}/edit)

  • Strict clippy lints - must pass validation

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ai-image-generator

AI 图片与视频异步生成技能,调用 AI Artist API 根据文本提示词生成图片或视频,自动轮询直到任务完成。 ⚠️ 使用前必须设置环境变量 AI_ARTIST_TOKEN 为你自己的 API Key! 获取 API Key:访问 https://staging.kocgo.vip/index 注册登录后创建。 支持图片模型:SEEDREAM5_0(默认高质量图片)、NANO_BANANA_2(轻量快速)。 支持视频模型:SEEDANCE_1_5_PRO(文生视频,支持音频)、SORA2(文生视频或首尾帧图生视频,支持 firstImageUrl/lastImageUrl)。 触发场景: - 用户要求生成图片,如"生成一匹狼"、"画一只猫"、"风景画"、"帮我画"等。 - 用户要求生成视频,如"生成视频"、"用 SORA2 生成"、"文生视频"、"图生视频"、"生成一段...的视频"等。 - 用户指定模型:SEEDREAM5_0、NANO_BANANA_2、SEEDANCE_1_5_PRO、SORA2。

Archived SourceRecently Updated
General

淘宝投放数据分析

# 投放数据分析技能

Archived SourceRecently Updated
General

productclank-campaigns

Community-powered growth for builders. Boost amplifies your social posts with authentic community engagement (replies, likes, reposts). Discover finds relevant conversations and generates AI-powered replies at scale. Use Boost when the user has a post URL. Use Discover when the user wants to find and engage in conversations about their product.

Archived SourceRecently Updated
General

Made In China

# Made-in-China Trade Data Analyst

Archived SourceRecently Updated