Atelier-Kit is a lightweight configurable showcase kit for makers, artists, artisans and small creative activities.
It is designed for people who want a clean online catalog for handmade items without starting a full e-commerce project.
Configure the site, add items and images, deploy the showcase.
No cart. No checkout. No accounts. No public comments. No contact-form swamp.
Atelier-Kit includes Studio, a browser-based editor for the whole site — no YAML by hand, no WordPress, no database.
From the project folder:
npm run studioOpens http://127.0.0.1:5173/studio on localhost only. Studio writes directly to config/, content/ and item images on disk.
What you can edit in Studio
- Site identity, appearance, layout, hero, footer, contact and social links
- Catalog items (with photo upload), collections, news, Signal Clouds and public FAQ answers
- About page and publish readiness (Content Doctor + Put site online)
Production stays read-only — /studio is disabled on Vercel. Clients use Atelier Desktop (Tauri) for the same UI without exposing authoring on the live URL.
→ Full guide: docs/usage/studio.md · Desktop: desktop/README.md
- SvelteKit application.
- Vercel-ready deployment.
- YAML-driven site identity.
- YAML-driven catalog settings.
- YAML-driven item/card content.
- File-based item/card CRUD.
- Nested item meta information.
- Static images.
- Configurable Signal Clouds.
- Single-choice Signal Cloud answers.
- Browser-local Signal Cloud selections.
- Copyable Visitor Brief generated from Signal Cloud selections.
- Public
/faqpage projected from selected Signal Cloud records. - Conditional FAQ navigation and schema.org
FAQPageJSON-LD. - Placeholder image for quick setup.
- Content validation script.
- Content Doctor pre-publish warnings.
- Local studio for browser-based editing (
npm run studio). - Item photo upload in studio with automatic image paths.
- About page (
config/about.yaml,/about). - Publish prep script (
npm run publish). - Client site scaffolds and guided
site:wizard. - Client site upgrade command (
npm run site:upgrade). - Configurable site appearance from studio.
- Item meta presets for common creative showcase types.
- Micro-CMS discovery: XML sitemap (
/sitemap.xml),robots.txt, RSS feed (/news/rss.xml), client-side search on items and news. - Structured data: JSON-LD on news, about and eligible FAQ pages.
- Atelier Desktop (Tauri) for client authoring without exposing
/studioon production (ADR 0007). - Put site online — one-click publish from
/studio/readinesswithout terminal commands for the client.
Latest release: v0.1.20 — Micro-CMS Tier 1 and Tier 2 (sitemap, RSS, search, JSON-LD, Desktop authoring, guided publish).
See GitHub Releases for highlights and validation notes.
Install dependencies:
npm installRun the development server:
npm run devCreate a first item:
npm run item:new -- my-first-item "My First Item"Validate content and build:
npm run item:validate
npm run check
npm run buildPreview the site locally:
npm run previewOpen Studio (local authoring UI):
npm run studioFor a first real setup, edit files in this order:
config/site.yamlfor site name, tagline and footer text.config/catalog.yamlfor catalog field visibility and item vocabulary.config/signal-clouds.yamlfor lightweight visitor preference questions.content/items/for item records.static/images/items/for item images.
The fastest useful path is:
npm run item:new -- ceramic-bowl "Ceramic Bowl"
npm run item:list
npm run item:validate
npm run devThen edit:
content/items/ceramic-bowl.yaml
Atelier-Kit 1.0 uses file-based CRUD.
Helper commands:
npm run item:new -- my-first-item "My First Item"
npm run item:list
npm run item:validate- Create: run
npm run item:new -- <id> "<Title>", then edit the generated YAML file. - Read: the homepage and
/items/<id>pages are generated automatically. - Update: edit the YAML file or replace the image.
- Delete: remove the YAML file and optionally remove the image.
- Validate: run
npm run item:validate.
This keeps the template simple and avoids database, login and admin-dashboard complexity.
Item YAML can optionally describe ordered, typed relationships to other item ids:
relations:
- type: "inspired-by"
target: "earlier-work"
label: "Earlier study"
- type: "part-of"
target: "summer-project"type and target are required non-empty strings; label is an optional display label. Values are trimmed while loading, and a blank label is omitted. Item records without relations remain compatible and load with relations: [].
Relationship types are open and domain-neutral, not a fixed vocabulary. Validation requires targets to exist, rejects self-references by default, and rejects repeated edges with the same trimmed type and target (labels do not make an edge unique). Cycles between different items and one-way relationships remain valid.
Item detail pages can render configurable meta information from each item YAML file.
Example:
meta:
- label: "Material"
value: "Ceramic"
- label: "Object details"
children:
- label: "Finish"
value: "Matte glaze"
- label: "Care"
value: "Dust gently"Meta entries support:
label;- optional
value; - optional
children.
Use nested children for simple submeta structures. Keep nesting shallow unless there is a clear reason.
Signal Clouds are configurable word-cloud-style questions shown on item pages.
They let visitors express a lightweight preference or perception without accounts, comments, names or email addresses.
Rules:
- one cloud represents one question;
- each cloud is always single-choice;
- visitors may change their answer;
- changing an answer replaces the previous local selection;
- multiple-choice clouds are intentionally out of scope;
- no public counters are shown;
- no personal data is collected.
A Signal Cloud can optionally publish an official editorial answer on /faq.
The FAQ is configured inside the same record in config/signal-clouds.yaml; there is no separate FAQ content file.
A record appears publicly only when the cloud is enabled, faq.visible is true, and both the shared question and faq.answer are non-empty. Optional faq.group and non-negative faq.order values control presentation.
When at least one eligible entry exists, Atelier-Kit adds the FAQ link to public navigation and emits schema.org FAQPage JSON-LD. Otherwise /faq shows an empty state and the navigation link stays hidden.
FAQ publishing is purely editorial: there is no visitor submission endpoint, inbox, moderation queue or stored message.
Visitor Brief turns Signal Cloud selections into a short copyable plain-text note.
A visitor can select impressions on an item page, copy the generated brief and paste it into email, WhatsApp, Instagram, Signal or another external contact channel.
No account, textarea, form backend, database or server-side storage is required.
config/site.yamlconfigures the site identity.config/catalog.yamlconfigures catalog vocabulary and visible fields.config/signal-clouds.yamlconfigures Signal Cloud questions and answers.content/items/contains item records.static/images/items/contains item images.docs/contains product, architecture and usage notes.src/contains the SvelteKit application.
Run all checks before pushing:
npm run item:validate
npm run check
npm run buildThe repository also includes a GitHub Actions workflow that runs validation on pushes and pull requests.
Atelier-Kit includes a non-fatal pre-publish doctor.
The validator checks structural correctness:
npm run content:validateThe doctor checks publishing readiness:
npm run content:doctorIt warns about starter/demo content such as placeholder images, Replace with text, demo notices, test item ids and placeholder contact addresses.
Use strict mode when you want warnings to fail the command:
npm run content:doctor -- --strictAtelier-Kit uses the Vercel adapter.
Deploy with:
npx vercelProduction deploy:
npx vercel --prodSee docs/usage/deploy-vercel.md for the pre-deploy checklist.
docs/usage/configuration.mdexplains the YAML configuration files.docs/usage/customization.mdexplains the first customization workflow.docs/usage/editorial-markup.mdexplains Atelier Mark inline text emphasis.docs/usage/deploy-vercel.mdexplains Vercel deployment.docs/usage/contact-flow.mdexplains the no-textarea contact flow.docs/usage/content-doctor.mdexplains pre-publish checks.docs/usage/item-presets.mdexplains item meta presets.docs/usage/collections.mdexplains file-based collections.docs/recipes/README.mdlists practical customization recipes.docs/recipes/zoo-client-handoff.md— operator step-by-step for a zoo / wildlife park showcase (wizard + studio + deploy).docs/client-intake.mdprovides a reusable first-site client brief.docs/usage/client-scaffold.mdexplains how to create a separate client site scaffold.docs/usage/scaffold-templates.mdexplains supported scaffold templates and their boundaries.docs/usage/manual-client-setup.mdexplains manual client setup when no template fits.docs/product/positioning.mdexplains the product direction.docs/product/micro-cms-positioning.mdexplains the micro-CMS contract and WordPress comparison.docs/product/micro-cms-epic.mdtracks the micro-CMS epic and issues.docs/product/product-levels.mdexplains developer-assisted, guided and no-code levels.docs/product/no-code-roadmap.mdexplains the staged no-code authoring roadmap.docs/usage/site-wizard.mdexplains the guided setup wizard.docs/usage/studio.mdexplains Studio and Atelier Desktop authoring.docs/architecture/adr-0001-configurable-showcase-kit.mdexplains the main architecture decision.docs/architecture/adr-0002-local-studio-research.mdrecords local studio architecture research.docs/architecture/adr-0007-production-safe-studio-desktop.mdrecords the production-safe authoring decision.
Atelier-Kit is open-source under the MIT license.
People who can configure it themselves can use it freely.
People who want help configuring, customizing or deploying it may support the author or request paid setup/customization work.
To report bugs, suggest scoped features or improve docs, see CONTRIBUTING.md. Please use the GitHub issue templates — blank issues are disabled.
Atelier-Kit is an early-stage micro-CMS for creative showcases — file-based content, local Studio / Atelier Desktop authoring, and static-friendly deploy.
See docs/product/micro-cms-positioning.md for scope and maturity.