Directories
¶
| Path | Synopsis |
|---|---|
|
battery
|
|
|
admin
Package admin is the back-office battery for GoFastr apps, stock operator screens on top of the data and controls the framework already exposes.
|
Package admin is the back-office battery for GoFastr apps, stock operator screens on top of the data and controls the framework already exposes. |
|
auth
Package auth is GoFastr's authentication subsystem.
|
Package auth is GoFastr's authentication subsystem. |
|
cache
Package cache is part of the GoFastr framework.
|
Package cache is part of the GoFastr framework. |
|
email
Package email sends transactional email over SMTP and renders it from templates.
|
Package email sends transactional email over SMTP and renders it from templates. |
|
log
Package log is the GoFastr server-log plugin.
|
Package log is the GoFastr server-log plugin. |
|
notify
Package notify is a small unified-notifications primitive for GoFastr apps.
|
Package notify is a small unified-notifications primitive for GoFastr apps. |
|
print
Package print is a GoFastr battery for printable documents.
|
Package print is a GoFastr battery for printable documents. |
|
queue
Package queue is part of the GoFastr framework.
|
Package queue is part of the GoFastr framework. |
|
relay
Package relay serves third-party services (analytics vendors, chat widgets, error trackers) first-party: a declarative, hardened same-origin reverse proxy mounted under one path on the host app.
|
Package relay serves third-party services (analytics vendors, chat widgets, error trackers) first-party: a declarative, hardened same-origin reverse proxy mounted under one path on the host app. |
|
rtc
Package rtc is a WebRTC signaling server: rooms of peers over one core/stream.StateChannel WebSocket per room, addressed relay of offer/answer/ICE frames, ICE server configuration with per-peer time-limited TURN credentials, and cross-replica relay over core/fanout.
|
Package rtc is a WebRTC signaling server: rooms of peers over one core/stream.StateChannel WebSocket per room, addressed relay of offer/answer/ICE frames, ICE server configuration with per-peer time-limited TURN credentials, and cross-replica relay over core/fanout. |
|
search
Package search provides pluggable search backends for GoFastr.
|
Package search provides pluggable search backends for GoFastr. |
|
semantic
Package semantic provides a local semantic-search battery for GoFastr.
|
Package semantic provides a local semantic-search battery for GoFastr. |
|
setup
Package setup provides a first-run setup flow for self-hosted GoFastr apps.
|
Package setup provides a first-run setup flow for self-hosted GoFastr apps. |
|
storage
Package storage provides file/object storage backends for the upload battery.
|
Package storage provides file/object storage backends for the upload battery. |
|
webhook
Package webhook is the outbound-webhook battery for GoFastr.
|
Package webhook is the outbound-webhook battery for GoFastr. |
|
benchmarks
|
|
|
apps/crud
command
crud is the typical entity-CRUD shape: one entity backed by SQLite, auto-migrate, full CRUD routes.
|
crud is the typical entity-CRUD shape: one entity backed by SQLite, auto-migrate, full CRUD routes. |
|
apps/full
command
full is a realistic shape with every supported framework surface wired on at once: three related entities with relations, audit log, cron, MCP, the UI host with one screen, file storage, search backend, access control, multi-tenancy, custom endpoints, plugins, and the OpenAPI + Swagger UI surface.
|
full is a realistic shape with every supported framework surface wired on at once: three related entities with relations, audit log, cron, MCP, the UI host with one screen, file storage, search backend, access control, multi-tenancy, custom endpoints, plugins, and the OpenAPI + Swagger UI surface. |
|
apps/minimal
command
minimal is the smallest meaningful GoFastr binary: NewApp + one plaintext route.
|
minimal is the smallest meaningful GoFastr binary: NewApp + one plaintext route. |
|
cmd
|
|
|
bench-resources
command
bench-resources measures binary size, peak RAM during `go build`, and runtime RAM (idle + under load) for the bench apps under benchmarks/apps/ plus cmd/gofastr and cmd/kiln.
|
bench-resources measures binary size, peak RAM during `go build`, and runtime RAM (idle + under load) for the bench apps under benchmarks/apps/ plus cmd/gofastr and cmd/kiln. |
|
check-csp
command
check-csp is a build-time linter that fails when production Go source emits inline <script> blocks.
|
check-csp is a build-time linter that fails when production Go source emits inline <script> blocks. |
|
check-embed
command
Command check-embed is the build-time gate for server actions on embeddable surfaces.
|
Command check-embed is the build-time gate for server actions on embeddable surfaces. |
|
check-embed/embedcheck
Package embedcheck is the build-time gate for server actions on embeddable surfaces.
|
Package embedcheck is the build-time gate for server actions on embeddable surfaces. |
|
gofastr
command
Package main: `gofastr harness` subcommand.
|
Package main: `gofastr harness` subcommand. |
|
kiln
command
kiln is the Kiln runtime CLI.
|
kiln is the Kiln runtime CLI. |
|
mutate
command
Command mutate breaks the conditional guards in a package one at a time and reports which ones no test notices.
|
Command mutate breaks the conditional guards in a package one at a time and reports which ones no test notices. |
|
mutate/guardmut
Package guardmut finds the conditional guards in a Go source file and rewrites them so they can never fire, or always fire.
|
Package guardmut finds the conditional guards in a Go source file and rewrites them so they can never fire, or always fire. |
|
repolint
command
|
|
|
vettool
command
vettool bundles the repo's custom go/analysis analyzers for `go vet -vettool`.
|
vettool bundles the repo's custom go/analysis analyzers for `go vet -vettool`. |
|
Package codegen provides YAML-driven code generation primitives for GoFastr.
|
Package codegen provides YAML-driven code generation primitives for GoFastr. |
|
core
|
|
|
a2a
Package a2a implements the server side of the Agent2Agent protocol v1.0 task exchange over its JSON-RPC binding: SendMessage, SendStreamingMessage, GetTask, ListTasks, CancelTask, SubscribeToTask, the four push-notification-config operations, and GetExtendedAgentCard.
|
Package a2a implements the server side of the Agent2Agent protocol v1.0 task exchange over its JSON-RPC binding: SendMessage, SendStreamingMessage, GetTask, ListTasks, CancelTask, SubscribeToTask, the four push-notification-config operations, and GetExtendedAgentCard. |
|
acp
Package acp implements the server (agent) side of the Agent Client Protocol v1 (agentclientprotocol.com): a session-based, stdio JSON-RPC 2.0 protocol that lets editors and agent harnesses drive an agent.
|
Package acp implements the server (agent) side of the Agent Client Protocol v1 (agentclientprotocol.com): a session-based, stdio JSON-RPC 2.0 protocol that lets editors and agent harnesses drive an agent. |
|
backoff
Package backoff holds the retry-delay policies shared by the outbox relay, the queue and webhook batteries, and the log webhook sink.
|
Package backoff holds the retry-delay policies shared by the outbox relay, the queue and webhook batteries, and the log webhook sink. |
|
config
Package config provides a first-class configuration loader that binds environment variables, config files, and secret sources into typed Go structs with validation.
|
Package config provides a first-class configuration loader that binds environment variables, config files, and secret sources into typed Go structs with validation. |
|
dotenv
Package dotenv parses .env files into a map and (optionally) applies them to the process environment.
|
Package dotenv parses .env files into a map and (optionally) applies them to the process environment. |
|
fanout
Package fanout carries real-time messages between replicas.
|
Package fanout carries real-time messages between replicas. |
|
featureflag
Package featureflag is a minimal feature-flag primitive for GoFastr apps.
|
Package featureflag is a minimal feature-flag primitive for GoFastr apps. |
|
fuzzy
Package fuzzy holds small string-similarity helpers shared across the codebase.
|
Package fuzzy holds small string-similarity helpers shared across the codebase. |
|
handler
Package handler is part of the GoFastr framework.
|
Package handler is part of the GoFastr framework. |
|
i18n
Package i18n is a small internationalization primitive for GoFastr apps: locale negotiation from `Accept-Language`, JSON-backed message catalogs with `{{placeholder}}` interpolation, and CLDR-style plural categories (zero / one / two / few / many / other) with sensible English defaults and a hook for per-locale custom rules.
|
Package i18n is a small internationalization primitive for GoFastr apps: locale negotiation from `Accept-Language`, JSON-backed message catalogs with `{{placeholder}}` interpolation, and CLDR-style plural categories (zero / one / two / few / many / other) with sensible English defaults and a hook for per-locale custom rules. |
|
jcs
Package jcs implements RFC 8785 (JSON Canonicalization Scheme) using only the Go standard library.
|
Package jcs implements RFC 8785 (JSON Canonicalization Scheme) using only the Go standard library. |
|
markdown
Package markdown is a small, dependency-free Markdown renderer.
|
Package markdown is a small, dependency-free Markdown renderer. |
|
mcp
check-csp:ignore-file
|
check-csp:ignore-file |
|
middleware
Package middleware is part of the GoFastr framework.
|
Package middleware is part of the GoFastr framework. |
|
migrate
Package migrate is a versioned SQL migration runner with optional per-group migration streams.
|
Package migrate is a versioned SQL migration runner with optional per-group migration streams. |
|
moduleproto
Package moduleproto implements the wire protocol between the GoFastr host process and an out-of-process third-party module, as specified by issue #37 (design §4).
|
Package moduleproto implements the wire protocol between the GoFastr host process and an out-of-process third-party module, as specified by issue #37 (design §4). |
|
netguard
Package netguard holds the one definition of "this address is internal" that every outbound-fetch surface checks against.
|
Package netguard holds the one definition of "this address is internal" that every outbound-fetch surface checks against. |
|
openapi
Package openapi is part of the GoFastr framework.
|
Package openapi is part of the GoFastr framework. |
|
query
Package query is part of the GoFastr framework.
|
Package query is part of the GoFastr framework. |
|
render
Package render is part of the GoFastr framework.
|
Package render is part of the GoFastr framework. |
|
router
Package router is part of the GoFastr framework.
|
Package router is part of the GoFastr framework. |
|
schema
Package schema is part of the GoFastr framework.
|
Package schema is part of the GoFastr framework. |
|
static
Package static is part of the GoFastr framework.
|
Package static is part of the GoFastr framework. |
|
stream
Package stream is part of the GoFastr framework.
|
Package stream is part of the GoFastr framework. |
|
textsafe
Package textsafe holds the one predicate for the characters that forge, reorder, or hide text: the C1 control block and the zero-width / bidi "invisible" set.
|
Package textsafe holds the one predicate for the characters that forge, reorder, or hide text: the C1 control block and the zero-width / bidi "invisible" set. |
|
upload
Package upload is part of the GoFastr framework.
|
Package upload is part of the GoFastr framework. |
|
webbotauth
Package webbotauth verifies inbound Web Bot Auth requests: RFC 9421 HTTP Message Signatures under the profile of draft-meunier-webbotauth-httpsig-protocol-02 (18 August 2026), the IETF Web Bot Auth working-group draft.
|
Package webbotauth verifies inbound Web Bot Auth requests: RFC 9421 HTTP Message Signatures under the profile of draft-meunier-webbotauth-httpsig-protocol-02 (18 August 2026), the IETF Web Bot Auth working-group draft. |
|
core-ui
|
|
|
app
Package app is the URL → rendered page pipeline for GoFastr UI.
|
Package app is the URL → rendered page pipeline for GoFastr UI. |
|
app/decide
Package decide provides the constructors for app.Decision values returned from Policy.Decide implementations.
|
Package decide provides the constructors for app.Decision values returned from Policy.Decide implementations. |
|
check
Package check provides an AST-based linter for .ui.go files.
|
Package check provides an AST-based linter for .ui.go files. |
|
component
Package component defines the component model for GoFastr's core-ui framework.
|
Package component defines the component model for GoFastr's core-ui framework. |
|
compute
Package compute registers content-addressed Web Worker and WebAssembly assets for GoFastr applications.
|
Package compute registers content-addressed Web Worker and WebAssembly assets for GoFastr applications. |
|
html
Package html provides semantic, ADA-compliant HTML element primitives for the GoFastr core-ui framework.
|
Package html provides semantic, ADA-compliant HTML element primitives for the GoFastr core-ui framework. |
|
interactive
Package interactive provides declarative interactivity primitives for GoFastr components.
|
Package interactive provides declarative interactivity primitives for GoFastr components. |
|
island
Package island is the runtime-side manager for server-driven SSE updates.
|
Package island is the runtime-side manager for server-driven SSE updates. |
|
node
Package node is the JSON-clean UI element tree, the serializable description of a screen that renders to HTML via core-ui/noderender.
|
Package node is the JSON-clean UI element tree, the serializable description of a screen that renders to HTML via core-ui/noderender. |
|
patterns/accordion
Package accordion provides disclosure widgets built on the native <details>/<summary> html.
|
Package accordion provides disclosure widgets built on the native <details>/<summary> html. |
|
patterns/breadcrumbs
Package breadcrumbs renders an ARIA-correct breadcrumb trail.
|
Package breadcrumbs renders an ARIA-correct breadcrumb trail. |
|
patterns/combobox
Package combobox implements the WAI-ARIA Combobox 1.2 pattern as a server-rendered input that's bound to a debounced RPC dropdown.
|
Package combobox implements the WAI-ARIA Combobox 1.2 pattern as a server-rendered input that's bound to a debounced RPC dropdown. |
|
patterns/disclosure
Package disclosure renders a single styled <details>/<summary> disclosure section.
|
Package disclosure renders a single styled <details>/<summary> disclosure section. |
|
patterns/infinitescroll
Package infinitescroll provides a sentinel-based infinite-scroll container that lazily fetches the next page of items via RPC as the user scrolls.
|
Package infinitescroll provides a sentinel-based infinite-scroll container that lazily fetches the next page of items via RPC as the user scrolls. |
|
patterns/multiselect
Package multiselect renders a checkbox-group inside a disclosure with chip rendering of the selected values above the trigger.
|
Package multiselect renders a checkbox-group inside a disclosure with chip rendering of the selected values above the trigger. |
|
patterns/nestedlist
Package nestedlist renders recursive <ul>/<ol> hierarchies with optional native <details> collapse on branches.
|
Package nestedlist renders recursive <ul>/<ol> hierarchies with optional native <details> collapse on branches. |
|
patterns/pagination
Package pagination renders a numeric pagination nav.
|
Package pagination renders a numeric pagination nav. |
|
patterns/progress
Package progress provides a thin wrapper around the native <progress> element with theme-aware styling.
|
Package progress provides a thin wrapper around the native <progress> element with theme-aware styling. |
|
patterns/scrollspy
Package scrollspy attaches IntersectionObserver-based section tracking to any list of in-page anchors.
|
Package scrollspy attaches IntersectionObserver-based section tracking to any list of in-page anchors. |
|
patterns/skeleton
Package skeleton provides shimmer placeholders rendered with pure CSS.
|
Package skeleton provides shimmer placeholders rendered with pure CSS. |
|
patterns/sortablelist
Package sortablelist renders a reorderable list with HTML5 drag-and-drop plus keyboard fallback (Space to grab, Arrow up/down to move within a column, Arrow left/right to move between columns, Space again to drop, Esc to cancel).
|
Package sortablelist renders a reorderable list with HTML5 drag-and-drop plus keyboard fallback (Space to grab, Arrow up/down to move within a column, Arrow left/right to move between columns, Space again to drop, Esc to cancel). |
|
patterns/tabs
Package tabs provides a tabbed-content layout with zero JavaScript.
|
Package tabs provides a tabbed-content layout with zero JavaScript. |
|
patterns/tree
Package tree provides a TreeView component built on the WAI-ARIA tree pattern.
|
Package tree provides a TreeView component built on the WAI-ARIA tree pattern. |
|
registry
Package registry is the process-global catalog of components whose CSS is shipped as real stylesheets and loaded on demand by the runtime.
|
Package registry is the process-global catalog of components whose CSS is shipped as real stylesheets and loaded on demand by the runtime. |
|
runtime
Package runtime provides the GoFastr client-side JavaScript runtime as an embedded resource.
|
Package runtime provides the GoFastr client-side JavaScript runtime as an embedded resource. |
|
runtime/minify
Package minify implements a token-aware JavaScript minifier used to shrink the embedded runtime sources before they're served.
|
Package minify implements a token-aware JavaScript minifier used to shrink the embedded runtime sources before they're served. |
|
seo
Package seo provides typed Schema.org structs that marshal to the JSON-LD shape Google and other crawlers consume for rich results (FAQ snippets, product cards, breadcrumb trails, article cards).
|
Package seo provides typed Schema.org structs that marshal to the JSON-LD shape Google and other crawlers consume for rich results (FAQ snippets, product cards, breadcrumb trails, article cards). |
|
store
Package store is a typed, server-declared shared-state primitive for the GoFastr UI.
|
Package store is a typed, server-declared shared-state primitive for the GoFastr UI. |
|
style
Package style provides the typed design system and CSS builders for the GoFastr core-ui framework.
|
Package style provides the typed design system and CSS builders for the GoFastr core-ui framework. |
|
uinodev1
Package uinodev1 implements the closed ui.node.v1 wire type and validator for process-isolated third-party modules (design §9, issue #37).
|
Package uinodev1 implements the closed ui.node.v1 wire type and validator for process-isolated third-party modules (design §9, issue #37). |
|
urlsafe
Package urlsafe holds the one URL-scheme allow-list every surface that renders a caller-supplied URL runs through.
|
Package urlsafe holds the one URL-scheme allow-list every surface that renders a caller-supplied URL runs through. |
|
widget
Package widget provides the framework's overlay-UI primitive.
|
Package widget provides the framework's overlay-UI primitive. |
|
widget/preset
Package preset bundles the most common widget surfaces as opinionated builders on top of widget.Definition.
|
Package preset bundles the most common widget surfaces as opinionated builders on top of widget.Definition. |
|
widget/theme
Package theme provides the framework's default page theme, the visual identity for any app built via core-ui (or its consumers like kiln).
|
Package theme provides the framework's default page theme, the visual identity for any app built via core-ui (or its consumers like kiln). |
|
evals
|
|
|
internal/childenv
Package childenv decides what environment an agent-driven child process may see.
|
Package childenv decides what environment an agent-driven child process may see. |
|
ui-quality/cmd/gofastr-ui-eval
command
|
|
|
examples
|
|
|
api-tour
command
Package main is a tour of the v2 API surface added to the framework:
|
Package main is a tour of the v2 API surface added to the framework: |
|
backoffice
command
Command backoffice is a minimal example of the battery/admin entity CRUD admin rendered through a UI host: a few entities, a (demo-grade) login, and admin.New(...) generating the whole back-office with defaults.
|
Command backoffice is a minimal example of the battery/admin entity CRUD admin rendered through a UI host: a few entities, a (demo-grade) login, and admin.New(...) generating the whole back-office with defaults. |
|
blog
command
|
|
|
ecommerce
Package ecommerce is GoFastr's declaration-driven flagship example: a complete storefront: five related entities, screens, navigation, custom endpoints, seed data, and a theme, declared once in gofastr.yml and emitted as runnable Go by the CLI:
|
Package ecommerce is GoFastr's declaration-driven flagship example: a complete storefront: five related entities, screens, navigation, custom endpoints, seed data, and a theme, declared once in gofastr.yml and emitted as runnable Go by the CLI: |
|
ecommerce/app
command
Code generated by gofastr.
|
Code generated by gofastr. |
|
embed-demo
command
Package main demonstrates embeddable surfaces: a GoFastr app handing out a piece of itself to a website it does not control.
|
Package main demonstrates embeddable surfaces: a GoFastr app handing out a piece of itself to a website it does not control. |
|
meridian
command
Package main is Meridian, the GoFastr flagship demo, and the design-system completeness canary (CLAUDE.md hard rule 9).
|
Package main is Meridian, the GoFastr flagship demo, and the design-system completeness canary (CLAUDE.md hard rule 9). |
|
meridian/cmd/meridian
command
meridian is a terminal client for your app's HTTP API, generated by `gofastr generate cli --binary=meridian`.
|
meridian is a terminal client for your app's HTTP API, generated by `gofastr generate cli --binary=meridian`. |
|
processmodule-demo
command
Package main is the processmodule-demo: a minimal but real third-party module that speaks the moduleproto protocol over stdio.
|
Package main is the processmodule-demo: a minimal but real third-party module that speaks the moduleproto protocol over stdio. |
|
rtc-call
command
Package main is the dogfood example for battery/rtc: anonymous users, rooms by name, camera and microphone peer to peer, chat over a negotiated data channel.
|
Package main is the dogfood example for battery/rtc: anonymous users, rooms by name, camera and microphone peer to peer, chat over a negotiated data channel. |
|
semantic-demo
command
Package main is a minimal demonstration of the battery/semantic package.
|
Package main is a minimal demonstration of the battery/semantic package. |
|
site
command
|
|
|
spa
command
|
|
|
static-site
command
|
|
|
webmcp-remote-assist
command
Package main is the reference example for authenticated WebMCP plus WebRTC remote support: one Go binary, one origin, two roles.
|
Package main is the reference example for authenticated WebMCP plus WebRTC remote support: one Go binary, one origin, two roles. |
|
Package framework is the public surface of the GoFastr framework.
|
Package framework is the public surface of the GoFastr framework. |
|
agentsinv
Package agentsinv is a process-wide registry of agent-onboarding snippets contributed by batteries and the framework root.
|
Package agentsinv is a process-wide registry of agent-onboarding snippets contributed by batteries and the framework root. |
|
axecov
Package axecov is the axe-coverage manifest shared between the axe test harness and strict mode.
|
Package axecov is the axe-coverage manifest shared between the axe test harness and strict mode. |
|
contracts
Package contracts is GoFastr's semantic analysis layer: the rules that say whether a codebase is a *good GoFastr application*, not merely a compiling one.
|
Package contracts is GoFastr's semantic analysis layer: the rules that say whether a codebase is a *good GoFastr application*, not merely a compiling one. |
|
contracts/analyzers
Package analyzers holds every detector behind `gofastr verify`.
|
Package analyzers holds every detector behind `gofastr verify`. |
|
datexport
Package datexport is a process-wide registry of data-bearing tables that live OUTSIDE the framework entity registry, the physical tables a battery (auth sessions, the job queue, …) or an app creates with raw DDL.
|
Package datexport is a process-wide registry of data-bearing tables that live OUTSIDE the framework entity registry, the physical tables a battery (auth sessions, the job queue, …) or an app creates with raw DDL. |
|
db
Package db holds shared low-level database abstractions used across the GoFastr framework subpackages.
|
Package db holds shared low-level database abstractions used across the GoFastr framework subpackages. |
|
dev
Package dev provides dev-mode-only helpers (livereload, debug surfaces).
|
Package dev provides dev-mode-only helpers (livereload, debug surfaces). |
|
docs
Package docs ships the framework's user-facing markdown docs as an embedded filesystem.
|
Package docs ships the framework's user-facing markdown docs as an embedded filesystem. |
|
embed
Package embed lets a GoFastr app hand out pieces of itself.
|
Package embed lets a GoFastr app hand out pieces of itself. |
|
experimental/apiversions
Package apiversions provides first-class API versioning built on top of route groups.
|
Package apiversions provides first-class API versioning built on top of route groups. |
|
experimental/harness
Package harness is part of the GoFastr harness.
|
Package harness is part of the GoFastr harness. |
|
experimental/harness/client/tui
Package tui is part of the GoFastr harness.
|
Package tui is part of the GoFastr harness. |
|
experimental/harness/client/web
Package web is part of the GoFastr harness.
|
Package web is part of the GoFastr harness. |
|
experimental/harness/context
Package context is part of the GoFastr harness.
|
Package context is part of the GoFastr harness. |
|
experimental/harness/control
Package control is part of the GoFastr harness.
|
Package control is part of the GoFastr harness. |
|
experimental/harness/control/auth
Package auth implements the capability-token model: claim set, internal JWT-like encoding (no third-party dep), revocation list, and the issuance flow with TTY/notification confirmation.
|
Package auth implements the capability-token model: claim set, internal JWT-like encoding (no third-party dep), revocation list, and the issuance flow with TTY/notification confirmation. |
|
experimental/harness/control/inproc
Package inproc is part of the GoFastr harness.
|
Package inproc is part of the GoFastr harness. |
|
experimental/harness/control/mcpserver
Package mcpserver will expose the harness engine as an MCP server.
|
Package mcpserver will expose the harness engine as an MCP server. |
|
experimental/harness/control/multiplex
Package multiplex is part of the GoFastr harness.
|
Package multiplex is part of the GoFastr harness. |
|
experimental/harness/control/resources
Package resources is part of the GoFastr harness.
|
Package resources is part of the GoFastr harness. |
|
experimental/harness/control/rest
Package rest is part of the GoFastr harness.
|
Package rest is part of the GoFastr harness. |
|
experimental/harness/control/ws
Package ws will implement the WebSocket transport for the control plane.
|
Package ws will implement the WebSocket transport for the control plane. |
|
experimental/harness/engine
Package engine is part of the GoFastr harness.
|
Package engine is part of the GoFastr harness. |
|
experimental/harness/hook
Package hook is part of the GoFastr harness.
|
Package hook is part of the GoFastr harness. |
|
experimental/harness/ids
Package ids is part of the GoFastr harness.
|
Package ids is part of the GoFastr harness. |
|
experimental/harness/internal/clock
Package clock provides a swap-able clock for tests.
|
Package clock provides a swap-able clock for tests. |
|
experimental/harness/internal/ulid
Package ulid is part of the GoFastr harness.
|
Package ulid is part of the GoFastr harness. |
|
experimental/harness/logging
Package logging is part of the GoFastr harness.
|
Package logging is part of the GoFastr harness. |
|
experimental/harness/mcpclient
Package mcpclient implements the MCP client (consumer side) the harness uses to talk to external MCP servers.
|
Package mcpclient implements the MCP client (consumer side) the harness uses to talk to external MCP servers. |
|
experimental/harness/memory
Package memory is part of the GoFastr harness.
|
Package memory is part of the GoFastr harness. |
|
experimental/harness/profile
Package profile is part of the GoFastr harness.
|
Package profile is part of the GoFastr harness. |
|
experimental/harness/provider
Package provider is part of the GoFastr harness.
|
Package provider is part of the GoFastr harness. |
|
experimental/harness/provider/credstore
Package credstore implements credential storage.
|
Package credstore implements credential storage. |
|
experimental/harness/provider/helper
Package helper is part of the GoFastr harness.
|
Package helper is part of the GoFastr harness. |
|
experimental/harness/provider/internal/openai
Package openai is an internal OpenAI-compatible adapter used by the OpenRouter and ZAI providers (both speak the same wire shape).
|
Package openai is an internal OpenAI-compatible adapter used by the OpenRouter and ZAI providers (both speak the same wire shape). |
|
experimental/harness/provider/openrouter
Package openrouter is part of the GoFastr harness.
|
Package openrouter is part of the GoFastr harness. |
|
experimental/harness/provider/zai
Package zai is part of the GoFastr harness.
|
Package zai is part of the GoFastr harness. |
|
experimental/harness/secrets
Package secrets locates and loads the repo-local .harness-secrets/env file.
|
Package secrets locates and loads the repo-local .harness-secrets/env file. |
|
experimental/harness/session
Package session is part of the GoFastr harness.
|
Package session is part of the GoFastr harness. |
|
experimental/harness/session/sqlite
Package sqlite is part of the GoFastr harness.
|
Package sqlite is part of the GoFastr harness. |
|
experimental/harness/skill
Package skill is part of the GoFastr harness.
|
Package skill is part of the GoFastr harness. |
|
experimental/harness/skill/skillmd
Package skillmd is part of the GoFastr harness.
|
Package skillmd is part of the GoFastr harness. |
|
experimental/harness/slash
Package slash is part of the GoFastr harness.
|
Package slash is part of the GoFastr harness. |
|
experimental/harness/tool
Package tool is part of the GoFastr harness.
|
Package tool is part of the GoFastr harness. |
|
experimental/harness/tool/builtins
Package builtins is part of the GoFastr harness.
|
Package builtins is part of the GoFastr harness. |
|
experimental/harness/tool/permission
Package permission is part of the GoFastr harness.
|
Package permission is part of the GoFastr harness. |
|
experimental/harness/tracing
Package tracing is part of the GoFastr harness.
|
Package tracing is part of the GoFastr harness. |
|
experimental/webmcp
Package webmcp exposes an app's server-declared tools to in-browser AI agents through the WebMCP proposal (navigator.modelContext).
|
Package webmcp exposes an app's server-declared tools to in-browser AI agents through the WebMCP proposal (navigator.modelContext). |
|
factory
Package factory provides Rails-style fixture / factory helpers for GoFastr tests and dev-time seeders.
|
Package factory provides Rails-style fixture / factory helpers for GoFastr tests and dev-time seeders. |
|
fanout
Package fanout provides a Postgres-backed implementation of core/fanout.Fanout using LISTEN/NOTIFY.
|
Package fanout provides a Postgres-backed implementation of core/fanout.Fanout using LISTEN/NOTIFY. |
|
gallery
Package gallery ships the importable component catalog that powers the /components showcase on the docs site (examples/site) and any other tool that needs to render every design-system component against an arbitrary theme, most notably the theme-configuration tool that will live inside the gofastr CLI binary (cmd/gofastr), which cannot import examples/.
|
Package gallery ships the importable component catalog that powers the /components showcase on the docs site (examples/site) and any other tool that needs to render every design-system component against an arbitrary theme, most notably the theme-configuration tool that will live inside the gofastr CLI binary (cmd/gofastr), which cannot import examples/. |
|
i18nui
Package i18nui provides translated default strings for framework UI surfaces.
|
Package i18nui provides translated default strings for framework UI surfaces. |
|
image
Package image is a chainable image pipeline: decode → transform → encode, pure Go with only the standard library and golang.org/x/image as dependencies.
|
Package image is a chainable image pipeline: decode → transform → encode, pure Go with only the standard library and golang.org/x/image as dependencies. |
|
image/internal/vp8l
Package vp8l implements a pure-Go VP8L (WebP lossless) encoder.
|
Package vp8l implements a pure-Go VP8L (WebP lossless) encoder. |
|
imagefield
Package imagefield connects the image pipeline to the upload path: it turns a framework/image.VariantSet into the file.ImageDeriver that ProcessFileField and the CRUD upload handler call, so declaring a schema.Image field is what makes uploads produce renditions and a BlurHash, no per-entity upload handler.
|
Package imagefield connects the image pipeline to the upload path: it turns a framework/image.VariantSet into the file.ImageDeriver that ProcessFileField and the CRUD upload handler call, so declaring a schema.Image field is what makes uploads produce renditions and a BlurHash, no per-entity upload handler. |
|
internal/casing
Package casing holds snake_case <-> camelCase helpers used internally by the GoFastr framework.
|
Package casing holds snake_case <-> camelCase helpers used internally by the GoFastr framework. |
|
internal/testdb
Package testdb provides shared per-test database helpers used by the framework's internal tests AND by framework_test (external) tests that can't access package-private helpers.
|
Package testdb provides shared per-test database helpers used by the framework's internal tests AND by framework_test (external) tests that can't access package-private helpers. |
|
isolation
Package isolation resolves worktree-specific local runtime resources.
|
Package isolation resolves worktree-specific local runtime resources. |
|
lifecycle
Package lifecycle provides a documented, cooperative graceful-shutdown contract for GoFastr applications.
|
Package lifecycle provides a documented, cooperative graceful-shutdown contract for GoFastr applications. |
|
outbox
Package outbox implements a transactional outbox for reliable event delivery to declared durable consumers.
|
Package outbox implements a transactional outbox for reliable event delivery to declared durable consumers. |
|
owner
Package owner provides a single seam for "who owns this row" lookups during CRUD operations.
|
Package owner provides a single seam for "who owns this row" lookups during CRUD operations. |
|
pluginhost
Package pluginhost is the reusable, plugin-agnostic host glue for GoFastr heavy-JS plugins that run inside an opaque-origin sandboxed iframe.
|
Package pluginhost is the reusable, plugin-agnostic host glue for GoFastr heavy-JS plugins that run inside an opaque-origin sandboxed iframe. |
|
processmoduletest
Package processmoduletest holds the process-module supervisor and gate e2e suites that used to live in the framework root test package.
|
Package processmoduletest holds the process-module supervisor and gate e2e suites that used to live in the framework root test package. |
|
ratelimit
Package ratelimit is the framework's general-purpose HTTP rate limiter.
|
Package ratelimit is the framework's general-purpose HTTP rate limiter. |
|
routegroup
Package routegroup provides the App-level route group abstraction.
|
Package routegroup provides the App-level route group abstraction. |
|
sdk
Package sdk is the shared contract between `gofastr generate sdk` (which emits client SDKs and packs the downloadable artifacts) and the serving side (framework/sdkdocs, which hosts them).
|
Package sdk is the shared contract between `gofastr generate sdk` (which emits client SDKs and packs the downloadable artifacts) and the serving side (framework/sdkdocs, which hosts them). |
|
sdkdocs
Package sdkdocs serves a public SDK documentation site for a GoFastr app: install guides, a live per-entity API reference, auth and error guides, plus download routes for the pregenerated SDK artifacts that `gofastr generate sdk` emits (see framework/sdk for the shared contract).
|
Package sdkdocs serves a public SDK documentation site for a GoFastr app: install guides, a live per-entity API reference, auth and error guides, plus download routes for the pregenerated SDK artifacts that `gofastr generate sdk` emits (see framework/sdk for the shared contract). |
|
semcov
Package semcov is the semantic-coverage manifest: a record of what a test run actually exercised, as opposed to which lines it happened to execute.
|
Package semcov is the semantic-coverage manifest: a record of what a test run actually exercised, as opposed to which lines it happened to execute. |
|
static
Package static implements static-site generation for a framework.App with a UIHost mounted on it.
|
Package static implements static-site generation for a framework.App with a UIHost mounted on it. |
|
testkit
Package testkit provides PUBLIC test helpers for host apps that use the GoFastr framework.
|
Package testkit provides PUBLIC test helpers for host apps that use the GoFastr framework. |
|
testkit/axetest
Package axetest is the axe-core accessibility-testing harness for GoFastr apps, host applications and the framework's own chromedp suites alike.
|
Package axetest is the axe-core accessibility-testing harness for GoFastr apps, host applications and the framework's own chromedp suites alike. |
|
ui
Package ui is the framework's opinionated component layer on top of core-ui.
|
Package ui is the framework's opinionated component layer on top of core-ui. |
|
ui/resource
Package resource renders CRUD-backed list, detail, and form screens from Config.
|
Package resource renders CRUD-backed list, detail, and form screens from Config. |
|
ui/theme
Package theme is the canonical home for the framework's visual design system.
|
Package theme is the canonical home for the framework's visual design system. |
|
uie2e
Package uie2e holds the chromedp browser e2e suite that used to live in the framework root test package.
|
Package uie2e holds the chromedp browser e2e suite that used to live in the framework root test package. |
|
uihost
Package uihost wires a core-ui application onto a framework.App's router.
|
Package uihost wires a core-ui application onto a framework.App's router. |
|
uihost/internal/sessiontoken
Package sessiontoken mints and verifies the stateless HMAC-signed tokens that replace the uihost's in-memory session map.
|
Package sessiontoken mints and verifies the stateless HMAC-signed tokens that replace the uihost's in-memory session map. |
|
uihost/uinoderender
Package uinoderender maps a validated ui.node.v1 tree (github.com/DonaldMurillo/gofastr/core-ui/uinodev1.Tree) to host-owned HTML by composing the framework's design-system primitives: github.com/DonaldMurillo/gofastr/framework/ui and github.com/DonaldMurillo/gofastr/core-ui/html.
|
Package uinoderender maps a validated ui.node.v1 tree (github.com/DonaldMurillo/gofastr/core-ui/uinodev1.Tree) to host-owned HTML by composing the framework's design-system primitives: github.com/DonaldMurillo/gofastr/framework/ui and github.com/DonaldMurillo/gofastr/core-ui/html. |
|
internal
|
|
|
analyzers/allow
Package allow is the one marked-exception mechanism for the repo analyzers: a diagnostic whose line (or the line right below a stand-alone marker line) carries
|
Package allow is the one marked-exception mechanism for the repo analyzers: a diagnostic whose line (or the line right below a stand-alone marker line) carries |
|
analyzers/asciifold
Package asciifold catches registry lookups that fold Unicode case.
|
Package asciifold catches registry lookups that fold Unicode case. |
|
analyzers/callbackunderlock
Package callbackunderlock catches calls through func-typed values while a sync mutex is held.
|
Package callbackunderlock catches calls through func-typed values while a sync mutex is held. |
|
analyzers/compositekey
The join is recognized through the indirections a real bug wears: a local or struct field bound from it, a one-result helper whose body reduces to returning it (statements that only rebind the helper's parameters in front of the return do not hide it), and the one-arg string-preserving normalizers around it at the sink (strings.ToLower/ToUpper/TrimSpace — the usual key normalizers).
|
The join is recognized through the indirections a real bug wears: a local or struct field bound from it, a one-result helper whose body reduces to returning it (statements that only rebind the helper's parameters in front of the return do not hide it), and the one-arg string-preserving normalizers around it at the sink (strings.ToLower/ToUpper/TrimSpace — the usual key normalizers). |
|
analyzers/controlbytes
Package controlbytes catches request-derived strings reaching a log, span-attribute, or header sink without a control-byte scrub.
|
Package controlbytes catches request-derived strings reaching a log, span-attribute, or header sink without a control-byte scrub. |
|
analyzers/credfetch
Package credfetch catches an http.Client with no CheckRedirect used for a credential-bearing fetch.
|
Package credfetch catches an http.Client with no CheckRedirect used for a credential-bearing fetch. |
|
analyzers/discardeddecode
Package discardeddecode catches a request-shaped parse whose error is thrown away: `_ = json.NewDecoder(r.Body).Decode(&body)`, `_ = json.Unmarshal(b, &v)`, `_ = r.ParseForm()`, and the bare statement spelling that drops the result on the floor.
|
Package discardeddecode catches a request-shaped parse whose error is thrown away: `_ = json.NewDecoder(r.Body).Decode(&body)`, `_ = json.Unmarshal(b, &v)`, `_ = r.ParseForm()`, and the bare statement spelling that drops the result on the floor. |
|
analyzers/discardederr
Package discardederr catches a multi-value assignment that drops an error on the floor while keeping the values around it: `ch, cancel, _ := m.subscribeImpl(id)`.
|
Package discardederr catches a multi-value assignment that drops an error on the floor while keeping the values around it: `ch, cancel, _ := m.subscribeImpl(id)`. |
|
analyzers/discardmutator
Package discardmutator catches security-state mutations whose result is discarded right where the handler acknowledges success.
|
Package discardmutator catches security-state mutations whose result is discarded right where the handler acknowledges success. |
|
analyzers/divlimit
Package divlimit catches integer division and remainder by a caller-supplied pagination-sized value that the function never guards against 0 or 1.
|
Package divlimit catches integer division and remainder by a caller-supplied pagination-sized value that the function never guards against 0 or 1. |
|
analyzers/emitident
Package emitident catches names formatted into emitted code without an identifier gate.
|
Package emitident catches names formatted into emitted code without an identifier gate. |
|
analyzers/errleak
Package errleak catches an internal error string being handed to the client on a 5xx response — or, since the 2026-09-07 round, into a JSON-RPC internal-error response.
|
Package errleak catches an internal error string being handed to the client on a 5xx response — or, since the 2026-09-07 round, into a JSON-RPC internal-error response. |
|
analyzers/fieldtypeswitch
Package fieldtypeswitch makes adding a schema field type a checklist instead of a silent hazard.
|
Package fieldtypeswitch makes adding a schema field type a checklist instead of a silent hazard. |
|
analyzers/fixedtmp
Package fixedtmp catches a path under the shared temp root whose name is CONSTANT or pid-predictable reaching a create/mkdir/exec or build sink: os.Mkdir / os.MkdirAll / os.Create / os.WriteFile / os.OpenFile(write flags) on it, an exec.Command / exec.CommandContext argument (`go build -o <path>` writes through whatever is at the path; argv[0] runs it), or an exec.Cmd Dir assignment (the child's cwd).
|
Package fixedtmp catches a path under the shared temp root whose name is CONSTANT or pid-predictable reaching a create/mkdir/exec or build sink: os.Mkdir / os.MkdirAll / os.Create / os.WriteFile / os.OpenFile(write flags) on it, an exec.Command / exec.CommandContext argument (`go build -o <path>` writes through whatever is at the path; argv[0] runs it), or an exec.Cmd Dir assignment (the child's cwd). |
|
analyzers/fmtformat
Package fmtformat catches URL-encoder output (url.Values.Encode, url.QueryEscape, url.PathEscape) becoming part of a fmt format string.
|
Package fmtformat catches URL-encoder output (url.Values.Encode, url.QueryEscape, url.PathEscape) becoming part of a fmt format string. |
|
analyzers/hygiene
Package hygiene holds the small checks whose whole point is that they currently find nothing.
|
Package hygiene holds the small checks whose whole point is that they currently find nothing. |
|
analyzers/internal/dominance
Package dominance provides the statement-dominance walk shared by the analyzers under internal/analyzers: which statements and conditions of a function body are guaranteed to execute before a given node.
|
Package dominance provides the statement-dominance walk shared by the analyzers under internal/analyzers: which statements and conditions of a function body are guaranteed to execute before a given node. |
|
analyzers/internal/pathflow
Package pathflow holds the path-dataflow machinery the root-shaped analyzers (rootwrite, rootread) share: local-binding resolution, the root/base/dir-named root tests, the lexical Join/concat containment shapes — including the one-hop same-package helper that RETURNS a root-joined path — and the EvalSymlinks-on-the-chain judgement that separates the fix posture from a resolution on an unrelated path.
|
Package pathflow holds the path-dataflow machinery the root-shaped analyzers (rootwrite, rootread) share: local-binding resolution, the root/base/dir-named root tests, the lexical Join/concat containment shapes — including the one-hop same-package helper that RETURNS a root-joined path — and the EvalSymlinks-on-the-chain judgement that separates the fix posture from a resolution on an unrelated path. |
|
analyzers/intwrap
Package intwrap catches the two integer-wrap postures that slip past range checks: unsigned→signed conversion without a bound, and unary negation of MinInt inside an abs.
|
Package intwrap catches the two integer-wrap postures that slip past range checks: unsigned→signed conversion without a bound, and unary negation of MinInt inside an abs. |
|
analyzers/laxcoerce
Package laxcoerce catches a wrong type masquerading as absence: a comma-ok type assertion on a map[string]any entry whose failure path returns zero values with a nil error — or continues — as though the key had never been sent.
|
Package laxcoerce catches a wrong type masquerading as absence: a comma-ok type assertion on a map[string]any entry whose failure path returns zero values with a nil error — or continues — as though the key had never been sent. |
|
analyzers/laxenvelope
Package laxenvelope catches a transport that decodes the SAME envelope type lax at one site while the same package — or, since the 2026-09-07 round, ANY package — decodes that type strictly at another.
|
Package laxenvelope catches a transport that decodes the SAME envelope type lax at one site while the same package — or, since the 2026-09-07 round, ANY package — decodes that type strictly at another. |
|
analyzers/mapwriter
Package mapwriter catches nondeterministic SSR output at its source: ranging over a Go map while writing into an output builder emits attributes/markup in a different order every render.
|
Package mapwriter catches nondeterministic SSR output at its source: ranging over a Go map while writing into an output builder emits attributes/markup in a different order every render. |
|
analyzers/names
Package names is the dependency-free list of repo analyzer names: the vocabulary of the //gofastr:allow(<name>) marker.
|
Package names is the dependency-free list of repo analyzer names: the vocabulary of the //gofastr:allow(<name>) marker. |
|
analyzers/negdur
Package negdur catches time.Duration zero-tests that silently fold a NEGATIVE lifetime onto the "zero means default" or "nonzero means expiry" arm.
|
Package negdur catches time.Duration zero-tests that silently fold a NEGATIVE lifetime onto the "zero means default" or "nonzero means expiry" arm. |
|
analyzers/nonfinite
Package nonfinite catches a strconv.ParseFloat result stored or returned without a NaN/Inf gate.
|
Package nonfinite catches a strconv.ParseFloat result stored or returned without a NaN/Inf gate. |
|
analyzers/nostore
Package nostore catches a per-caller 2xx response written with no Cache-Control on its path.
|
Package nostore catches a per-caller 2xx response written with no Cache-Control on its path. |
|
analyzers/nowaitdelay
Package nowaitdelay catches an exec.CommandContext child with captured stdout started with no WaitDelay bound.
|
Package nowaitdelay catches an exec.CommandContext child with captured stdout started with no WaitDelay bound. |
|
analyzers/recovercallback
Package recovercallback catches registry callbacks invoked with no recover in scope on a dispatch path that has no net.
|
Package recovercallback catches registry callbacks invoked with no recover in scope on a dispatch path that has no net. |
|
analyzers/recoverlog
Package recoverlog catches a recover() value reaching a log sink without a scrub.
|
Package recoverlog catches a recover() value reaching a log sink without a scrub. |
|
analyzers/reflectset
Package reflectset catches reflect.Value mutation of a struct field that never passed through CanSet: Set, SetString, SetInt, and the rest of the Set* family panic on values obtained from an unexported field, and the panic fires at injection time, not at declaration time, so a single lowercased tagged field takes down every request.
|
Package reflectset catches reflect.Value mutation of a struct field that never passed through CanSet: Set, SetString, SetInt, and the rest of the Set* family panic on values obtained from an unexported field, and the panic fires at injection time, not at declaration time, so a single lowercased tagged field takes down every request. |
|
analyzers/reqparamlimit
Package reqparamlimit catches unclamped request-sourced integers flowing into limit/cap-shaped call parameters.
|
Package reqparamlimit catches unclamped request-sourced integers flowing into limit/cap-shaped call parameters. |
|
analyzers/rootread
Package rootread catches reads whose containment under a root is resolved lexically only — the read twin of rootwrite.
|
Package rootread catches reads whose containment under a root is resolved lexically only — the read twin of rootwrite. |
|
analyzers/rootwrite
Package rootwrite catches writes whose containment under a root is resolved lexically only: os.WriteFile / os.Create / os.OpenFile(write flag) / os.MkdirAll / os.Remove on a path built under a root — filepath.Join, or a flat `root + "/" + x` concatenation — where the root is a caller-supplied parameter or field — with no filepath.EvalSymlinks on that path's chain — plus the archive twin: zip.Writer entry names assembled from a parameter with no path.Clean on the entry-name chain.
|
Package rootwrite catches writes whose containment under a root is resolved lexically only: os.WriteFile / os.Create / os.OpenFile(write flag) / os.MkdirAll / os.Remove on a path built under a root — filepath.Join, or a flat `root + "/" + x` concatenation — where the root is a caller-supplied parameter or field — with no filepath.EvalSymlinks on that path's chain — plus the archive twin: zip.Writer entry names assembled from a parameter with no path.Clean on the entry-name chain. |
|
analyzers/secretcompare
Package secretcompare catches a client-supplied credential compared with == or != instead of a constant-time primitive.
|
Package secretcompare catches a client-supplied credential compared with == or != instead of a constant-time primitive. |
|
analyzers/testgap
Package testgap reports validator enumeration arms that no fixture in the package ever exercises.
|
Package testgap reports validator enumeration arms that no fixture in the package ever exercises. |
|
analyzers/timestampid
Package timestampid catches an identifier minted from wall-clock time: a time.Now().Unix()/.UnixMilli()/.UnixNano() value formatted into a string (fmt.Sprintf, strconv.FormatInt/FormatUint/Itoa, or + concatenation) and bound to a name ending in id, token, session, key, nonce, secret, or capability.
|
Package timestampid catches an identifier minted from wall-clock time: a time.Now().Unix()/.UnixMilli()/.UnixNano() value formatted into a string (fmt.Sprintf, strconv.FormatInt/FormatUint/Itoa, or + concatenation) and bound to a name ending in id, token, session, key, nonce, secret, or capability. |
|
analyzers/unboundedbody
Package unboundedbody catches an inbound HTTP request body that is read or decoded without a size cap, so a single request can spend the server's memory.
|
Package unboundedbody catches an inbound HTTP request body that is read or decoded without a size cap, so a single request can spend the server's memory. |
|
analyzers/unboundedresp
Package unboundedresp catches the unbounded read of an HTTP RESPONSE body: io.ReadAll(resp.Body), or a json/xml/yaml Decoder seated on it, with no io.LimitReader or http.MaxBytesReader anywhere on that body's chain in the function — or one hop away in a same-package helper the body is passed to.
|
Package unboundedresp catches the unbounded read of an HTTP RESPONSE body: io.ReadAll(resp.Body), or a json/xml/yaml Decoder seated on it, with no io.LimitReader or http.MaxBytesReader anywhere on that body's chain in the function — or one hop away in a same-package helper the body is passed to. |
|
analyzers/unseated
Package unseated catches a long-lived stream surface that admits a connection without any seat acquisition reachable on its open path.
|
Package unseated catches a long-lived stream surface that admits a connection without any seat acquisition reachable on its open path. |
|
analyzers/worldreadable
Package worldreadable catches files and directories written for state or secrets with group/other permission bits: os.WriteFile / os.Create / os.OpenFile(write flags) / os.Mkdir / os.MkdirAll whose mode is a CONSTANT literal carrying group or other bits (0644, 0755, 0666, 0777; os.Create is umask-default 0666), while this repo's own discipline for that artifact class is owner-only (0600/0700 plus fileperm.Restrict, pinned by battery/log, upload storage, the session sqlite store and DEK, freeze's world.json, and the credstore).
|
Package worldreadable catches files and directories written for state or secrets with group/other permission bits: os.WriteFile / os.Create / os.OpenFile(write flags) / os.Mkdir / os.MkdirAll whose mode is a CONSTANT literal carrying group or other bits (0644, 0755, 0666, 0777; os.Create is umask-default 0666), while this repo's own discipline for that artifact class is owner-only (0600/0700 plus fileperm.Restrict, pinned by battery/log, upload storage, the session sqlite store and DEK, freeze's world.json, and the credstore). |
|
browserpath
Package browserpath resolves the Chrome/Chromium/Edge executable that chromedp should launch.
|
Package browserpath resolves the Chrome/Chromium/Edge executable that chromedp should launch. |
|
dsnredact
Package dsnredact strips credentials from database DSNs so the remainder can be logged or committed (host/db name are configuration, not secrets).
|
Package dsnredact strips credentials from database DSNs so the remainder can be logged or committed (host/db name are configuration, not secrets). |
|
pgtest
Package pgtest provides a shared real-Postgres test harness usable from any package in the module (core/migrate, cmd/gofastr, …) without importing framework/internal/testdb, which is import-restricted to the framework tree.
|
Package pgtest provides a shared real-Postgres test harness usable from any package in the module (core/migrate, cmd/gofastr, …) without importing framework/internal/testdb, which is import-restricted to the framework tree. |
|
kiln
|
|
|
acp
Package acp adapts Kiln's tool surface to the Agent Client Protocol via core/acp.
|
Package acp adapts Kiln's tool surface to the Agent Client Protocol via core/acp. |
|
agent
Package agent is Kiln's transport-agnostic LLM driver.
|
Package agent is Kiln's transport-agnostic LLM driver. |
|
agent/mcp
Package mcp wraps Kiln's tool surface as a Model Context Protocol server.
|
Package mcp wraps Kiln's tool surface as a Model Context Protocol server. |
|
chat
Package chat installs the in-app Kiln chat panel.
|
Package chat installs the in-app Kiln chat panel. |
|
db
Package db owns the per-session ephemeral SQLite lifecycle for Kiln.
|
Package db owns the per-session ephemeral SQLite lifecycle for Kiln. |
|
effect
Package effect runs declarative actions described by world.Action.
|
Package effect runs declarative actions described by world.Action. |
|
expr
Package expr is Kiln's tiny expression evaluator.
|
Package expr is Kiln's tiny expression evaluator. |
|
freeze
Package freeze emits canonical source artifacts from a Kiln world so the in-memory build-mode app can graduate to a regular GoFastr project.
|
Package freeze emits canonical source artifacts from a Kiln world so the in-memory build-mode app can graduate to a regular GoFastr project. |
|
internal/kid
Package kid mints kiln's unpredictable identifiers.
|
Package kid mints kiln's unpredictable identifiers. |
|
journal
Package journal is the append-only event log that backs every Kiln session.
|
Package journal is the append-only event log that backs every Kiln session. |
|
live
Package live is the runtime that ties the Kiln components together during a session: it owns the current Session (world + chat + plans), the Journal that persists every edit, the framework.App that serves the live preview, and the SSE broadcaster that notifies the panel.
|
Package live is the runtime that ties the Kiln components together during a session: it owns the current Session (world + chat + plans), the Journal that persists every edit, the framework.App that serves the live preview, and the SSE broadcaster that notifies the panel. |
|
noderender
Package noderender re-exports the first-party node renderer that now lives in core-ui/noderender.
|
Package noderender re-exports the first-party node renderer that now lives in core-ui/noderender. |
|
protocol
Package protocol is Kiln's canonical agent tool surface.
|
Package protocol is Kiln's canonical agent tool surface. |
|
render
Package render bridges the Kiln world IR to a runnable framework.App.
|
Package render bridges the Kiln world IR to a runnable framework.App. |
|
world
Package world is the JSON-clean intermediate representation of a GoFastr application being built live by an agent inside Kiln.
|
Package world is the JSON-clean intermediate representation of a GoFastr application being built live by an agent inside Kiln. |
|
sqlite
|
|
|
stdlib
Package stdlib registers modernc.org/sqlite — a pure-Go SQLite — under the conventional "sqlite3" database/sql driver name used by generated apps.
|
Package stdlib registers modernc.org/sqlite — a pure-Go SQLite — under the conventional "sqlite3" database/sql driver name used by generated apps. |
|
Package stability classifies every package in the module into a support tier and enforces, via [TestEveryPackageIsClassified], that no package ships without an explicit classification.
|
Package stability classifies every package in the module into a support tier and enforces, via [TestEveryPackageIsClassified], that no package ships without an explicit classification. |
Click to show internal directories.
Click to hide internal directories.