AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Fragiola: 상태·접근성 내장 React 헤드리스 컴포넌트와 복붙용 UI 디자인 시스템
Fragiola: headless React components that own behaviour, state and accessibility, and Fragiola UI, an optional design system of copy-paste components.
개발 도구TypeScript · JavaScriptGitHub @fragiola온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기📚 Fragiola’s central documentation hub, syncing site exports from individual projects, validating their contract, and publishing them together as one static site.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
The single site for every Fragiola project: / (the organization), /ui, /dockable, /data-grid, /grid-layout, …
Each project lives in its own repo and exposes a site export; this repo checks the exports
against the contract and assembles them into one static Next.js + Fumadocs site, published on
GitHub Pages.
• The contract a project implements: CONTRACT.md (v1.2).
• How this repo works, its rules and commands: AGENTS.md.README 전문 보기 ↗The single site for every Fragiola project: / (the organization), /ui, /dockable, /data-grid, /grid-layout, …
Each project lives in its own repo and exposes a site export; this repo checks the exports
against the contract and assembles them into one static Next.js + Fumadocs site, published on
GitHub Pages.
CONTRACT.md (v1.2).AGENTS.md.pnpm install
pnpm sources:sync # install and run each project's site:export (projects.json → localPath) into .sources/
pnpm dev # http://localhost:3000, the projects' pages and examples live
projects.json lists { slug, repo, ref, localPath?, devUrl? }. localPath is the project's
checkout on your machine; with devUrl, pnpm dev starts the project's site:dev there and
proxies /<slug>/embed/** to it, so an edited example hot-reloads inside the site. An edited page
in the project's site/docs shows without a restart, checked against the contract on save.
Without the projects' checkouts, pnpm sources:fixtures fills .sources-fixtures/ from
fixtures/, and FRAGIOLA_SOURCES=.sources-fixtures pnpm dev runs the site on them. pnpm build
never publishes them: it takes .sources/ only, as the last pnpm sources:sync left it, and
refuses it when a project's checkout has changed since.
pnpm build | the contract checks, then out/ (a broken link fails here, with its file and line) |
pnpm test | unit tests (the contract checks, the build refusing what it must) |
pnpm e2e:build && pnpm e2e | the browser suite, against out/ built from the fixtures (pnpm e2e:serve: its @serve tests, served by serve) |
pnpm serve · pnpm measure | serve out/ like Pages; weigh pages |
.github/workflows/deploy-pages.yml tests (against the fixtures), clones every project at its
ref, runs their exports, builds and publishes. It runs on a push to main, daily at 05:17 UTC,
on demand, and when a project's CI dispatches project-updated. The tests (Biome, TypeScript,
Vitest, the browser suite in shards) and the build run side by side, and the deploy waits for all
of them; a dispatch or the schedule only builds and deploys (www's own code did not change). Only
main deploys: a run on another branch tests and builds. None of it is set up yet; in
order:
The repository. Create fragiola/www on GitHub (public, like the projects: the workflow
clones them without a token), add it as origin here and push main.
Pages. Settings → Pages → Build and deployment → Source: GitHub Actions. Then run the
workflow once (Actions → "Deploy site to GitHub Pages" → Run workflow) and check the
github-pages environment it creates.
The domain. Settings → Pages → Custom domain: fragiola.com, then Enforce HTTPS once
the certificate is issued. At the DNS provider:
fragiola.com: A records to 185.199.108.153, 185.199.109.153, 185.199.110.153,
185.199.111.153 (and AAAA to 2606:50c0:8000::153, 2606:50c0:8001::153,
2606:50c0:8002::153, 2606:50c0:8003::153);www.fragiola.com: CNAME to fragiola.github.io.Verify the domain for the organization first (Organization settings → Pages → Add a domain),
so no other account can claim it. With an Actions deployment no CNAME file is needed.
The site is served from the domain root: every export is built for /<slug>, so it cannot be
served from fragiola.github.io/www.
The dispatch token. The projects' CI sends repository_dispatch project-updated after
a push to main once a WWW_DISPATCH_TOKEN secret exists (dockable's main does; ui's does
on feat/site-export-v1, not merged yet). Create a fine-grained personal access token (or a
GitHub App token) with:
fragiola; repository access: only fragiola/www;POST /repos/{owner}/{repo}/dispatches
requires), Metadata: Read.Store it as the WWW_DISPATCH_TOKEN Actions secret in each project repo (or once as an
organization secret shared with ui and dockable). Set an expiry and a reminder to rotate it.
The refs. builds of every project. A project's must export contract v1.2 ( → , and the v1.2 rules of ), or the build fails on it.
projects.jsonmainmainproject.json"contract": 1CONTRACT.mdSearch engines (manual, once the domain is live). In
Google Search Console, add https://fragiola.com
as a property, verify it (a DNS TXT record on the domain), then submit
https://fragiola.com/sitemap.xml under Sitemaps. Bing Webmaster Tools can import it from
Search Console. Nothing in this repo does it: no verification token is committed.