chore(release): prepare v0.1.0 release for main #16

Merged
Ninosaurier merged 90 commits from dev into main 2026-08-05 15:57:47 +00:00
Owner

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

  • 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
Ninosaurier added the Status/Needs Review label 2026-08-05 15:57:30 +00:00
Ninosaurier self-assigned this 2026-08-05 15:57:30 +00:00
Ninosaurier added 90 commits 2026-08-05 15:57:31 +00:00
Add required `title`/`description` frontmatter and remove the redundant H1 heading so the file conforms to Starlight's content collection schema.
Add required `title`/`description` frontmatter and remove the redundant H1 heading so the file conforms to Starlight's content collection schema.
Add required `title`/`description` frontmatter and remove the redundant H1 heading so the file conforms to Starlight's content collection schema.
Add required `title`/`description` frontmatter and remove the redundant H1 heading so the file conforms to Starlight's content collection schema.
Add an introductory index page explaining what ADRs are, why LUNA Charts uses them, and listing the currently documented decisions.
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.
The MDX files are automatically placed in the ADM and ADR subfolders in the documentation
Developers can use template for creating new adrs
Added the whole adm-document oft LUNA-Charts in AstroJS
AstroJS will show automatically all mdx-files in the folder "getting-started"
Added new chapter "getting-started", so new developers has a start point
After pnpm test, test-results will be created. Does need to push. Added the folder in .gitignore
Playwright tests execute in containers, allowing developers to test independently of the operating system.
- 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
my-component will remove in the future or moved in example. It is just a preview to see, if the tests run
Jest is replaced by Vitest. New version of StencilJS use Vitest for unit 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
feat(ci): add quality gate workflow for dev/main
CI / lint-and-format (push) Canceled after 0s
CI / changeset-check (push) Canceled after 0s
CI / unit-tests (push) Canceled after 0s
CI / component-tests (push) Canceled after 0s
dd2874d8b0
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
fix-lint(lint-violation): Updated readme.md It had a lint-violation
CI / lint-and-format (push) Canceled after 0s
CI / changeset-check (push) Canceled after 0s
CI / unit-tests (push) Canceled after 0s
CI / component-tests (push) Canceled after 0s
97f99a23ae
fix(runner): Fixed wrong label. the right label for using the runner is ubuntu-docker-dind
CI / lint-and-format (push) Failing after 1m31s
CI / changeset-check (push) Successful in 29s
CI / unit-tests (push) Successful in 39s
CI / component-tests (push) Failing after 5s
75c8300d84
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
fix(ci):
CI / lint-and-format (push) Failing after 34s
CI / changeset-check (push) Successful in 31s
CI / unit-tests (push) Successful in 42s
CI / component-tests (push) Failing after 25s
a92d83a5f4
trigger workflow on all branch pushes and fix component tests setup
fix(eslint): fix: allow stencil jsx helper in eslint
CI / changeset-check (push) Canceled after 0s
CI / unit-tests (push) Canceled after 0s
CI / component-tests (push) Canceled after 0s
CI / lint-and-format (push) Canceled after 4m4s
9089a4ef60
chore: scope workspace commands with pnpm filter
CI / lint-and-format (push) Successful in 36s
CI / changeset-check (push) Successful in 32s
CI / unit-tests (push) Successful in 38s
CI / component-tests (push) Failing after 28s
856fea304a
ci(component-tests): add containerized component test workflow
CI / lint-and-format (push) Successful in 35s
CI / changeset-check (push) Successful in 28s
CI / unit-tests (push) Successful in 39s
CI / component-tests (push) Successful in 29s
CI / lint-and-format (pull_request) Successful in 36s
CI / changeset-check (pull_request) Successful in 33s
CI / unit-tests (pull_request) Successful in 37s
CI / component-tests (pull_request) Successful in 29s
caf0f3de2d
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.
Merge pull request 'ci(component-tests): add containerized component test workflow' (#14) from fix/ci-runner-test-component into dev
CI / lint-and-format (push) Successful in 39s
CI / changeset-check (push) Successful in 29s
CI / unit-tests (push) Successful in 42s
CI / component-tests (push) Successful in 32s
7559a2725a
Merge branch 'fix/ci-runner-test-component' into 'dev'

ci(component-tests): add containerized component test workflow

Reviewed-on: #14
docs(update): update README to reflect .gitea/ CI setup and test image sourcing
CI / lint-and-format (push) Successful in 34s
CI / changeset-check (push) Successful in 30s
CI / unit-tests (push) Successful in 37s
CI / component-tests (push) Successful in 30s
2ddf8961c2
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.
docs(update): update README to reflect .gitea/ CI setup and test image sourcing
CI / lint-and-format (push) Successful in 33s
CI / changeset-check (push) Successful in 26s
CI / unit-tests (push) Successful in 36s
CI / component-tests (push) Successful in 29s
9091bdcfae
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.
chore(changeset): prepare v0.1.0 release
CI / lint-and-format (push) Successful in 37s
CI / changeset-check (push) Successful in 25s
CI / unit-tests (push) Successful in 39s
CI / component-tests (push) Successful in 30s
CI / lint-and-format (pull_request) Successful in 32s
CI / changeset-check (pull_request) Successful in 28s
CI / unit-tests (pull_request) Successful in 36s
CI / component-tests (pull_request) Successful in 30s
72c49e6b0f
Merge pull request 'chore(release): prepare v0.1.0 foundation release and update technology architecture' (#15) from update-technology-architecture into dev
CI / lint-and-format (push) Successful in 32s
CI / changeset-check (push) Successful in 31s
CI / unit-tests (push) Successful in 37s
CI / component-tests (push) Successful in 29s
CI / lint-and-format (pull_request) Successful in 33s
CI / changeset-check (pull_request) Successful in 24s
CI / unit-tests (pull_request) Successful in 39s
CI / component-tests (pull_request) Successful in 29s
37bb4e9ea2
Reviewed-on: #15

Merge pull request #15 from <branch-name>

chore(release): prepare v0.1.0 foundation release

Includes:
- Added Changeset for initial v0.1.0 release
- Updated README documentation
- Updated Technology Architecture documentation
- Updated ADR-0002
Ninosaurier merged commit 956b2f277b into main 2026-08-05 15:57:47 +00:00
Ninosaurier added Status/Verified and removed Status/Needs Review labels 2026-08-05 15:57:53 +00:00
Sign in to join this conversation.