Skip to main content

elattar_cli 0.0.4 copy "elattar_cli: ^0.0.4" to clipboard
elattar_cli: ^0.0.4 copied to clipboard

Installs Elattar's Flutter design system into your project as source you own: components, foundation tokens, effects and motion, copied in and yours to edit.

Changelog #

This file covers the elattar_cli command only. The design system's own changelog — components, tokens, effects, motion — lives at CHANGELOG.md in the repository root.

0.0.4 #

Reads /registry/0.0.4/ by default. That registry publishes the motion vocabulary cut to fourteen names: twelve recipes in keyframes.dart plus Press and ActiveIndicator, one OpenTransition for every overlay, and a seven-step duration scale.

Installing 0.0.4 sources over customized files is a breaking change for anyone who named a retired motion class or passed Press(scale:). Run elattar add --all --dry-run first; the rename table is in the design system's 0.0.4 release notes.

The command surface is unchanged. Existing elattar_cli 0.0.1 through 0.0.3 installations remain pinned to their matching immutable registry paths.

0.0.3 #

Reads /registry/0.0.3/ by default. The registry publishes the design system's shared disabled-state and form-recovery APIs, responsive typography, chart interaction work, and integrated agent/voice sources.

The command surface is unchanged. Existing elattar_cli 0.0.1 and 0.0.2 installations remain pinned to their matching immutable registry paths.

0.0.2 #

Reads /registry/0.0.2/ by default, because the design system published a new registry version. elattar_cli 0.0.1 is unaffected and goes on reading /registry/0.0.1/: a released registry version is immutable, so the sources that CLI installs today are the sources it installed on the day it shipped.

Nothing else about the command changed.

0.0.1 #

First release.

dart install elattar_cli

Commands #

  • elattar init --foundation source — writes elattar.yaml, installs the foundation (tokens, theme, typography, motion, the three font faces), wires the fonts into your pubspec.yaml, and creates .elattar/manifest.json as the record of what was installed and from which hashes.
  • elattar add <items…> — installs items and everything they depend on. --all installs the complete registry.
  • elattar list, search <query>, info <name> — read the catalog.
  • elattar doctor — reports project, config, dependency resolution, manifest, and the registry it would use.

Every command takes --registry PATH_OR_URL and --offline. init and add take --dry-run; add takes --overwrite.

Registry #

  • Reads a hosted, version-pinned registry by default: https://flutter.elattar.dev/registry/0.0.1/. The path is immutable, so this version installs the same sources for as long as it exists — a later registry cannot change what 0.0.1 does.
  • --registry also accepts a local directory, for contributors and mirrors. Inside a checkout of the design system, a local registry/generated/latest is discovered automatically and the CLI says so rather than choosing quietly.
  • Every manifest and every payload is verified against its declared sha256 before anything is written. A failed download or a substituted file aborts with your project untouched, not half-installed.
  • Responses are bounded: request timeout, capped redirects, named redirect loops, and a size limit enforced while streaming.

Offline #

  • A per-user cache under your platform's cache directory (%LOCALAPPDATA%, ~/Library/Caches, or $XDG_CACHE_HOME), overridable with ELATTAR_CACHE_DIR.
  • --offline reads only that cache and distinguishes a cache miss from a network failure, because they have different fixes.
  • Writes are atomic, so an interrupted download never becomes a readable entry.

Ownership and licensing #

  • Installed sources are copied into your project and become your code. Edit them freely; elattar add --overwrite is the only thing that replaces them, and it never touches files Elattar did not install.
  • init writes LICENSES/ELATTAR-MIT.txt. Items that redistribute third-party material carry their own notice: the foundation installs the three font OFL notices, icon installs lucide's, voice-indicator installs the ElevenLabs UI notice. Keep them — that is the condition all three licenses attach to the grant.

Known limitations #

  • --foundation package is refused. It used to write a dependency on a package named elattar_core that does not exist, producing a project that could not resolve. It stays refused until such a package is really published; --foundation source is the supported path.
  • The root elattar_design_system package is not on pub.dev. Source installation through this CLI is the distribution route.
  • Conflicts are all-or-nothing: if any target file differs from what the registry holds, add exits 73 and writes nothing. Re-run with --overwrite once you have saved whatever you meant to keep.
1
likes
160
points
404
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Installs Elattar's Flutter design system into your project as source you own: components, foundation tokens, effects and motion, copied in and yours to edit.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#flutter #design-system #cli #ui #scaffolding

License

MIT (license)

Dependencies

yaml

More

Packages that depend on elattar_cli