You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
llms.txt and GitMCP. A repo-root llms.txt gives LLMs a curated index of
the docs and packages. The README/getting-started now document GitMCP
(https://gitmcp.io/podosoft-dev/podokit) — register it as a remote MCP server
to search the PodoKit docs and code from any AI tool, no install.
@podosoft/podokit-mcp — a local MCP server. A Model Context Protocol
server that runs on your machine via npx (no hosting) so AI coding tools get
first-class access to PodoKit: list_templates, create_project, list_modules, add_module, project_status, list_local_edits, check_versions, preview_update, and search_docs. Registered globally it can scaffold a
project from an empty folder — "create a fullstack app with auth" runs create_project + add_module. Generated projects also ship a .mcp.json.
AI coding agent support in generated projects.podo create now writes an AGENTS.md (the open standard read by Codex, Cursor, Copilot, Gemini, …)
covering the stack, commands, code style, and podo tooling; a CLAUDE.md that
imports it (@AGENTS.md) for Claude Code; and thin .cursor/rules / .github/copilot-instructions.md pointers. Claude Code skills
(.claude/skills/) add procedural guidance (NestJS endpoint, SvelteKit route,
DataTable, podo add/podo update). Modules extend AGENTS.md with their own
conventions when added (auth's secure-by-default rule, admin-dashboard's
DataTable requirement). The AI files are owned, so podo update never touches
them. Opt out with podo create --no-ai.
Module injections can be marked optional, so they skip (instead of failing)
when a target file is absent — used for the AGENTS.md guidance injections.
Containerized development environment. Generated projects now ship a compose.dev.yaml (+ Dockerfile.dev, .devcontainer/, .env.docker, infra/traefik/) that runs the whole stack in containers. Only Traefik binds a
host port (app.localhost); postgres/redis/minio/api have no published
ports and talk by service name, so multiple projects never collide. Module
services are behind Compose profiles (cache/storage/queue); docker compose watch gives instant web HMR and restarts the api on change. A devcontainer.json
lets editors and AI agents work inside the container. The host npm run dev loop
still works unchanged. See the development guide.
Site settings. admin-dashboard's /admin/settings is now split into General and Authentication tabs. The General tab configures the whole
site and every value takes effect without a rebuild: the site name (browser
tab title) and favicon (uploaded to object storage), the brand color
(applied as the theme's primary accent), a meta description, a public footer with support-email/terms/privacy links, the default language and
timezone, a maintenance mode that holds non-admins on a maintenance page,
and a sign-up toggle that closes public registration (the sign-up endpoint
returns 403 and the UI hides the link). Values are stored server-side
(/site/settings). Requires the object-storage-s3 module.
Default site title and favicon. New apps ship a real browser <title> and a
PodoKit SVG favicon instead of the framework defaults.
A back-to-home link in the admin sidebar footer returns to the landing page.
Changed
Faster dev reload. The generated API's npm run dev uses Nest's SWC builder
for near-instant recompiles; the production nest build still uses tsc.
Fixed
file-upload module build. The generated app's API tsconfig restricts types to ["node"], which suppressed @types/multer's global augmentation and
broke the build on Express.Multer.File. The files controller now loads it
explicitly with a /// <reference types="multer" /> directive.
shadcn-svelte tabs. The vendored tabs primitive targeted a data-active
attribute that current bits-ui doesn't emit, so the active tab lost its
highlight; restored the official component (data-[state=active]).
General settings layout now fills the content width responsively instead of
being left-skewed on wide screens.
Containerized dev builds.Dockerfile.dev resolves dependencies inside the
container (no host lockfile copy) so platform-specific optional binaries like @swc/cli install correctly on Linux.