Skip to content
SOFTUREPublic

About

Tested, composable building blocks for AI-assembled apps (React / Next.js / Postgres): vertical-slice modules from migrations to styled UI, published as @softure-ai/*.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

SOFTURE AI

Ready-made, tested building blocks for applications (React / Next.js / Postgres) that an AI agent assembles instead of writing from scratch. Every module is a complete vertical slice: from database migrations, through server logic and endpoints, to UI components. Look and copy come in as parameters, and the whole module is switched on through the application's configuration.

Sister repositories:

  • SOFTURE/SKILLS (@softure-ai/skills): the agent skills workflow that knows how to use these modules.
  • .NET libraries: COMMON and API.

Repository layout

foundation/          shared foundations every module depends on
  core/              @softure-ai/core: module contract, configuration, i18n, results, clock/DI
  db/                @softure-ai/db: pg/PGlite client, module migrator, test database
  ui/                @softure-ai/ui: tokens, theme, primitives (Button, Modal, Toast, Select, fields…)
  charts/            @softure-ai/charts: scales and server-rendered SVG charts (lines, areas, steps, Sankey, bar lists)
  testing/           @softure-ai/testing: Vitest preset and test clock, Playwright helpers, installed-app checks, source guards
  observability/     @softure-ai/observability: structured logger, OTLP export of traces and logs (Node.js, Next.js)
  llm/               @softure-ai/llm: schema-validated model calls over the AI SDK, timeouts, usage and cost, fake model
  speech/            @softure-ai/speech: audio transcription (Groq, OpenAI, OpenAI-compatible), ffmpeg chunking, subtitles, cost
modules/             feature modules (each one works on its own on top of the foundations)
  security/          rate limiting, client IP, safe errors
  auth/              registration, login, sessions, password change and reset, roles
  feature-switches/  runtime switches + admin panel
  mailing/           mail transport, unsubscribe (RFC 8058), delivery ledger, campaigns
  waitlist/          sign-ups with consent scopes, welcome mail, standalone form
  mcp-access/        access tokens + MCP endpoint (Bearer) + token UI
  billing/           trial/paid/read-only entitlements, pricing, write guard
  privacy/           GDPR: data export and deletion, consent ledger, legal page shell
  analytics/         channel tags (?z=) and a cookieless funnel counter
  ops/               health check, migration runner in the image, safe SQL operations pattern
  seo/               robots.txt with AI crawler lists, sitemap, canonical URLs, IndexNow
  agent-ready/       agent discovery: catalogs, MCP/A2A cards, auth.md, Agent Skills, Web Bot Auth, DNS-AID, WebMCP
  blog/              Markdown articles and glossary, publish command, text quality gate, Next.js pages, RSS, sitemap, IndexNow
  jobs/              background jobs in Postgres: queue, leases, retry with backoff, worker process
  connections/       connected accounts: OAuth 2.0 client, encrypted tokens and API keys, refresh under a lease
  pwa/               installable app: manifest, icons, service worker from a route, new-build update flow, online state
  files/             stored files: content hash, quota, expiry, local disk or S3, signed public links with ranges
  metering/          spend ledger of paid provider calls in any unit, budgets per day or month, reservations under a lock
  alerts/            operator alerts: deduplication by key, recovery messages, mail and webhooks, quiet hours, jobs adapters
tools/
  marketing-kit/     materials generator: video, screenshots, OG images from JSON and a brand
  deploy/            one-VPS deploy CLI: .env.prod from secrets, release notes, verify from deploy.json
  host/              shared app server (Ansible, softure.vps_foundation) and one-command app onboarding
  config/            shared app tooling: ESLint preset, tsconfig base, lefthook hooks, language gate
themes/              shadcn/ui themes an app installs instead of copying components
  theme-kit/         @softure-ai/theme-kit: the theme contract (defineTheme), CSS generator and build, cn, preflight
  theme-notion/      @softure-ai/theme-notion: the first theme, Notion (tokens, 37 components, compositions)
  theme-flat-paint/  @softure-ai/theme-flat-paint: Flat Paint (tokens, the ui bridge, page base, look maps for ui components)
  theme-<name>/      each further theme, on the kit's contract (themes/theme-kit/README.md)
docs/                assessment, module standard, plans

Documents

File What it covers
docs/01-module-assessment.md What we extract from FIRE_TRACKER, from where, in what order, and the gaps
docs/02-module-standard.md The module contract: layout, migrations, styling, i18n, switches, Next adapter, tests, publishing
docs/03-marketing-kit.md @softure-ai/marketing-kit: architecture and JSON contract
docs/04-skills.md Agent skills: where they live (SOFTURE/SKILLS)
docs/05-adoption-playbook.md Playbook for an application agent that removes its own code and switches to a module
docs/06-fire-extraction-2.md Second extraction from FIRE_TRACKER: blog with SEO, charts, deploy and test tools; what stays in FIRE

Contributing

Everything in this repository is written in English: code, identifiers, comments, commit messages and docs. User-facing copy lives only in message dictionaries. See AGENTS.md.

Working on this repository

npm ci        # .npmrc forces devDependencies, which installs the agent skills into .claude/skills/

Development runs on the softure-* agent workflow from @softure-ai/skills:

Where What
context/workflow.json gates, main branch, worktree setup, research sources
context/foundation/shape-notes.md, prd.md why and what (PRD v2, FR/NFR IDs)
context/foundation/roadmap.md the main roadmap being executed, or a note when none runs; finished ones in context/foundation/archive/
context/foundation/roadmaps/ queued roadmaps
context/changes/ changes in flight (one folder per change)
context/backlog/roadmap-<slug>/ prepared entries of the main and the queued roadmaps

Run the main roadmap end to end with /softure-worktree-manager (parallel git worktrees, merges on completion), or one item with /softure-worktree <ID>. With release.owner: false in context/workflow.json, the coordinating agent decides releases on its own: it collects changes and cuts one combined release once the current issues are done, never one per change (runbook). The owner has given standing approval for production deploys: the deploy runs right after the release, without asking or waiting.

License

MIT, see LICENSE.

About

Tested, composable building blocks for AI-assembled apps (React / Next.js / Postgres): vertical-slice modules from migrations to styled UI, published as @softure-ai/*.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages