This pull request promotes the completed Phase 1: Groundwork milestone from dev to main and prepares the first official v0.1.0 Foundation Release of LUNA Charts.
The release establishes the project's technical and organizational foundation and provides the baseline for future component development.
Included Changes
Established the initial repository structure and development workflow
Added architecture documentation based on TOGAF ADM
Added Architecture Decision Records (ADRs) for transparent architectural decisions
Added project governance documentation
Added documentation infrastructure using Docs-as-Code
Improved CI infrastructure and test execution documentation
Updated README documentation to reflect the current project structure and workflows
Added Changeset configuration for the initial v0.1.0 release
Release Notes
This release does not introduce production-ready chart components yet. Instead, it provides the foundation required for future development phases, including accessible chart components, testing infrastructure, and framework-agnostic Web Component delivery.
Verification
All Phase 1 milestone issues completed
Documentation updated
CI pipeline passing
Changeset added for v0.1.0
## Summary
This pull request promotes the completed **Phase 1: Groundwork** milestone from `dev` to `main` and prepares the first official **v0.1.0 Foundation Release** of LUNA Charts.
The release establishes the project's technical and organizational foundation and provides the baseline for future component development.
## Included Changes
* Established the initial repository structure and development workflow
* Added architecture documentation based on TOGAF ADM
* Added Architecture Decision Records (ADRs) for transparent architectural decisions
* Added project governance documentation
* Added documentation infrastructure using Docs-as-Code
* Improved CI infrastructure and test execution documentation
* Updated README documentation to reflect the current project structure and workflows
* Added Changeset configuration for the initial `v0.1.0` release
## Release Notes
This release does not introduce production-ready chart components yet. Instead, it provides the foundation required for future development phases, including accessible chart components, testing infrastructure, and framework-agnostic Web Component delivery.
## Verification
* [x] All Phase 1 milestone issues completed
* [x] Documentation updated
* [x] CI pipeline passing
* [x] Changeset added for `v0.1.0`
Ninosaurier
added this to the v0.1.0 - Phase 1: Groundwork milestone 2026-08-05 15:57:30 +00:00
Add required `title`/`description` frontmatter and remove the redundant H1 heading so new ADRs created from this template conform to Starlight's content collection schema by default.
- Add supportedArchitectures (linux-x64-gnu) to pnpm-workspace.yaml so native bindings (rolldown, esbuild) are included in the lockfile for the container's platform
- Add onlyBuiltDependencies: [playwright] to pnpm-workspace.yaml so build scripts run non-interactively in CI/Docker
- Remove stale/redundant pnpm field from package.json (moved to pnpm-workspace.yaml per pnpm v10+ config location)
- Split stencil-test into test:unit (native, fast) and test:browser (Docker, cross-browser) scripts
- Set ENV CI=true in Dockerfile.test to avoid interactive TTY prompts during pnpm install
- Remove anonymous node_modules volumes from docker-compose.test.yaml to prevent stale volume state from surviving image rebuilds
- Add root-level test:unit / test:component / test scripts to orchestrate native unit tests and Dockerized cross-browser tests
Corrects two Architecture Decision Records that had drifted from the
actual implementation during this sprint.
- ADR-0002 (Technology Stack): unit testing now uses Vitest instead of
Jest; Playwright's role is clarified as the browser provider used by
Vitest's browser mode rather than a standalone test runner.
- ADR-0001 (Repository Structure): repository diagram updated to
remove the unused apps/ directory, correct the docs/ path to match
the actual Starlight content location, and add the previously
missing adm/ folder.
Both ADRs now include a Change Log section documenting what changed
and why, per the Architecture Change Management process (ADM Phase H).
Cleans up leftover configuration from the apps/ → docs/ restructuring
(see ADR-0001 update). Neither file had any effect anymore since the
apps/ directory no longer exists, but both left stale references that
could confuse future contributors.
- pnpm-workspace.yaml: removed the unused "apps/*" package glob
- .changeset/config.json: removed the "ignore": ["apps/docs"] entry,
since docs/ is not tracked as a pnpm workspace package and the
entry had no effect
Adds the containerized Playwright-based test execution environment
(Dockerfile.test, docker-compose.test.yaml) to the Technology
Architecture, which was implemented but never documented.
- Added Section 6.6 "Test Execution Environment" describing the
Docker-based Playwright setup used for local development and CI
- Added the containerized test environment to the "Key Architectural
Decisions" list
- Added a Change Log entry explaining what changed and why
Adds a proper project README (description, tech stack, structure,
setup, scripts) and a CONTRIBUTING guide (governance summary,
workflow, PR expectations), both previously missing or placeholder-only.
Explicitly added @oxc-parser/binding-linux-x64-gnu and @rolldown/binding-linux-x64-gnu as devDependencies. This bypasses issues where pnpm occasionally skips optional native platform bindings during installation, which previously caused CriticalPresetLoadError when loading StencilJS plugins.
add repository mirror and issue tracking notice
To prevent fragmentation of feedback, we want all bug reports and
contributions to be centralized on our main self-hosted platform.
GitHub lacks active monitoring for issues, so users need clear
direction on where to officially open them.
add root command for documentation development
Expose the Astro documentation development server through the root
workspace to simplify the local development workflow. Developers can
now start the documentation site without changing into the docs directory.
Fixes: #12
The README was missing instructions for running the documentation
site and Storybook locally, so contributors had to guess or dig
through package.json scripts to find them. Documents the existing
`pnpm run docs` command and the current Storybook workflow, including
the known limitation that it must be run from within
`packages/luna-charts` until a root-level filter script is set up.
Playwright was previously pinned with a caret range (^1.61.1), which
allowed pnpm to silently resolve a newer minor version after the
lockfile was regenerated. This caused a version mismatch with the
Docker test image, which still referenced 1.61.1.
- packages/luna-charts/package.json: pin playwright to 1.62.1 exactly
- Dockerfile.test: bump base image to v1.62.1-noble to match
The Playwright version was pinned with a caret range and the test
Dockerfile deleted pnpm-lock.yaml before installing, so every image
build silently re-resolved to the latest matching Playwright version.
This caused the npm package and the Docker base image to drift apart.
- packages/luna-charts/package.json: pin playwright to 1.62.1 exactly
- Dockerfile.test: stop deleting pnpm-lock.yaml before install, and
use --frozen-lockfile so a mismatch between package.json and the
lockfile fails the build loudly instead of resolving silently
Adds automated checks that were previously only run manually and
locally, closing the last remaining gap before dev can be merged
into main with confidence.
Runs on every push and pull request targeting dev or main:
- lint (eslint)
- format check (prettier --check)
- changeset presence check (non-blocking for now, see comment in
workflow file)
- unit tests (vitest)
- component/browser tests (vitest + playwright, via the existing
Docker test setup)
Fixes: #10
Every job runs in an isolated container. The component-tests job
was missing the Node.js and pnpm installation steps, causing
command not found errors (exit code 127) during local execution.
- Changed push branch filter to wildcard '*' to test feature branches before merging
- Kept the missing pnpm/node setup fix for the component-tests job
- Changed push branch filter to wildcard '*' to test feature branches before merging
- Kept the missing pnpm/node setup fix for the component-tests job
Introduce dedicated CI container images and improve the component
test execution in Gitea Actions.
The workflow now uses reproducible runner environments, private
registry authentication and executes Playwright component tests
inside a prepared container.
Adds the .gitea/ directory to the project structure overview and
corrects the claim that local and CI test environments are identical.
Both are built from the same Dockerfile.test, but locally the image is
built on demand while CI pulls a prebuilt version — see ADR-0002 and
the Technology Architecture doc for details.
Adds the .gitea/ directory to the project structure overview and
corrects the claim that local and CI test environments are identical.
Both are built from the same Dockerfile.test, but locally the image is
built on demand while CI pulls a prebuilt version — see ADR-0002 and
the Technology Architecture doc for details.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
This pull request promotes the completed Phase 1: Groundwork milestone from
devtomainand prepares the first official v0.1.0 Foundation Release of LUNA Charts.The release establishes the project's technical and organizational foundation and provides the baseline for future component development.
Included Changes
v0.1.0releaseRelease Notes
This release does not introduce production-ready chart components yet. Instead, it provides the foundation required for future development phases, including accessible chart components, testing infrastructure, and framework-agnostic Web Component delivery.
Verification
v0.1.0