I’m very excited to announce that the new version of Mishka Chelekom has been released after approximately 6–7 months of extensive development. Version
v0.0.9
A detailed blog post covering all the changes and improvements will be published soon on mishka.tools.
What's Changed - Changelog for MishkaChelekom 0.0.9
Features:
- Add Components prefix name in CLI and config file #454
- Add Module prefix name in CLI and config file #459
- Add
--no-saveflag to control prefix config saving #459 - Add Usage rules for all components and JS Hooks #461
- Add uninstall Mix task and its tests #464
- Add Entry-level MCP for Mishka Chelekom components, docs and CLIs #466
- Add server push event for
Comboboxcomponent Issue with help - Add
Disabled State,Half-Star Precision,Form integrationinto rating component Issue with help - Add dock (bottom-navigation) component Issue with help
- Add Shape component
- Add Stat component
- Add harness demo driven kit test for dynamic CMS generator (Private APIs) #479
- Add stdio transport + mix mishka.mcp.setup --stdio Issue with help
- Add entry-level headless components ported from Base UI for Phoenix #489
- Add creatable option support to Combobox component Commit
- Add scrollable trigger list (
scroll_area) for Tabs in vertical orientation Issue with help - Add
--headlessflag tomix mishka.ui.uninstalland make--allremove both styled and headless components - Add
MishkaChelekom.Kit— a Spark DSL (customize/from) to reuse and restyle existing styled and headless components without editing their files - Add
mix mishka.ui.gen.kitto vendor the Kit engine into your app (self-contained catalog +sparkdep), so the Kit works in production with nomishka_chelekomruntime dependency
Refactors:
- Refactor accordion to auto-generate item IDs (Explicit and open dynamic identifiers) Commit and Issue with help
- Change
:classattr type from:stringto:anyin components Commit - Refactor server-render active state so it works on static mount and reacts to assign changes Issue with help - Issue with help
- Refactor generators and asset handling for the headless CLI, with unified per-command banners and improved headless CSS import Commit
- Bump minimum Elixir to 1.18 and add compile-time
JSON/Jasonfallback Commit - Refactor uninstall to restore
CoreComponentsimport #465 - Center the banner subtitle and give every mix task its own title
- Add a consistent Owl loading spinner to every Igniter mix task (
export,gen.component,gen.headless,gen.kit,css.config,assets.deps,mcp.setup)
Bugs:
- Remove stopPropagation from Floating hook to allow phx-click event bubbling Commit and Issue with help
- Fix menu
sub_itemsand sidebarhide_positioncrashes Issue with help - Use native browser date picker icons and remove custom calendar icon Issue with help
- Fix Misplaced dropdown when content has min-width Issue with help
- Fix some missing lables conditions #469
- Fix CSS typos, wrong border classes, swapped docs, and Gettext template bug #468
- Delete dead label code from fieldset component
- Fix readd floating content back to original parent before update#475
- Fix MCP runtime error Commit
- Update and fix version conflict with other Mishka Project Commit
- Fix Only use
Owl.Spinnerwhen TTY available #477 - Fix dropdown content slot class attribute concatenation Commit
- Fix Combobox field attribute not sending values to form params Commit
- Fix Elixir 1.19 and
not ... in ...deprecation warnings Commit - Fix false cross-kind dependency warning when uninstalling a headless component that shares a name with a styled one
- Fix uninstall
--allcomponent discovery for path and umbrella dependencies - Fix
:owlapplication not started before the spinner inmix mishka.ui.gen.headless.components - Fix active mode of Outline Radio Card and Checkbox Card #488 #481
- Fix
show_checkboxprop not applying in Checkbox Card and Radio Card #487 - Fix component colors and gradients across form and menu components, including
form_wrapperdefault variant/color/border andmega_menugradient rendering #485 - Align component catalog (
.exs) variant and color lists with their implementations (unbordered→bordered,gradeint→gradient, corrupted color token, missingtable/tabsvariants) Commit - Fix Combobox dropdown color not matching the selected variant/color and theme the option highlight to follow the chosen color Commit
- Migrate remaining Tailwind v3 utilities to v4 (video track captions, opacity, flex-shrink) #486
- Fix
color_fieldcircleoption having no effect and migrate it to Tailwind v4 #483
Tests:
- Add retire-js and semgrep security scanning #460
- Add Elixir 1.20.2 (OTP 29) to the CI test matrix Commit
- Add direct end-to-end tests for every mix command in the development harness
Another changes
- Add Components prefix name in CLI and config file by @shahryarjb in #454
- Potential fix for code scanning alert no. 1: Workflow does not contain permissions by @shahryarjb in #456
- Add Module prefix by @shahryarjb in #459
- Add retire-js and semgrep basic testing by @shahryarjb in #460
- Add Usage rules for all components and JS Hooks by @shahryarjb in #461
- Add uninstall Mix task and its tests by @shahryarjb in #464
- Refactor uninstall to restore CoreComponents import by @shahryarjb in #465
- Add Entry-level MCP for Mishka Chelekom components, docs and CLIs by @shahryarjb in #466
- Add missing :if={@Label} nil guards to floating labels and form fields by @MetaBureau in #469
- Fix CSS typos, border logic, Gettext template bug, and swapped docs in 8 components by @MetaBureau in #468
- Readd floating content back to original parent before update. by @MoritzMaxeiner in #475
- Add harness demo driven kit test for dynamic CMS generator by @shahryarjb in #479
- Add entry level headless components (from Base UI for Phoenix component) by @shahryarjb in #489
- Support headless cli and add some tests and external resource by @shahryarjb in #490
New Contributors
- @MetaBureau made their first contribution in #469
- @MoritzMaxeiner made their first contribution in #475
Full Changelog: v0.0.8...v0.0.9