README.md

May 20, 2026 ยท View on GitHub

Magary Logo

Magary

Standalone-first Angular UI library for real product teams.

npm version CI Angular Compatibility Docs License


Magary is an Angular UI library and documentation workspace built for teams that care about consistency, maintainability, release discipline, and delivery quality. The repository includes the published ng-magary package, the public demo/documentation app, and the validation tooling used to keep the library stable.

At a glance

AreaPurpose
projects/ng-magaryPublished Angular UI library distributed on npm as ng-magary
projects/demo-appDocumentation and live demos used for product review, QA, and accessibility verification
e2e/playwrightVisual and accessibility smoke coverage for critical flows
tools/ciContract, compatibility, compliance, and quality-gate tooling
docsSupporting guidance, recipes, and release-facing documentation

Why Magary

  • Standalone-first API designed for modern Angular applications.
  • Curated public root API with stable naming and explicit exports.
  • Components shaped for real dashboards, product surfaces, and internal tools.
  • Documentation, smoke tests, accessibility checks, and release governance in the same workspace.
  • Consumer compatibility checks across Angular 17 through 21.

Quick path

pnpm install
pnpm run build
pnpm run qa:all

Expected outcome:

  • the library builds
  • the demo app builds
  • unit, visual smoke, and accessibility smoke gates pass

Daily commands

CommandWhat it does
pnpm run build:libBuild the published ng-magary package
pnpm run build:demoBuild the documentation and demo application
pnpm run lintLint TypeScript and Angular templates
pnpm run test:unitRun all Angular unit tests
pnpm run test:unit:ciRun the CI unit gate with warning checks
pnpm run test:visual:smokeRun Playwright smoke coverage for key UI flows
pnpm run test:a11y:smokeRun Playwright + AXE accessibility smoke coverage
pnpm run check:consumer-matrixValidate compatibility against Angular 17-21 consumer apps
pnpm run qa:allRun the full local release gate

Quality model

Magary is maintained with explicit release controls rather than informal best effort.

GateIntent
API contractPrevent accidental public API drift
No-any checkKeep library and spec surfaces type-safe
Third-party complianceValidate notices and license inventory
Unit testsProtect component behavior and contracts
Visual smokeCatch critical UX regressions quickly
A11y smokeCatch serious and critical accessibility regressions
Consumer matrixValidate real install/build scenarios across Angular majors

For library consumers

If you want to install and use the package in an Angular application, start here:

The package README is copied into dist/ng-magary during publish and becomes the README shown on npm.

Release-facing docs

Compliance and third-party notices

License copies and attribution records live here:

Validation command:

pnpm run check:third-party

Tooltip stylesheet requirement

Components such as magaryTooltip render overlays at document.body level to escape stacking contexts. Consumers must load the shared tooltip stylesheet in their global styles:

@use 'ng-magary/styles/tooltip.scss';

Built for Angular teams shipping real products.