Skip to content

feat: add inkline barrel package#450

Merged
alexgrozav merged 8 commits into
mainfrom
alexgrozav/add-inkline-barrel-package
May 25, 2026
Merged

feat: add inkline barrel package#450
alexgrozav merged 8 commits into
mainfrom
alexgrozav/add-inkline-barrel-package

Conversation

@alexgrozav

Copy link
Copy Markdown
Member

Summary

  • Adds a core/inkline barrel package (published as inkline) that re-exports all @inkline/* sub-packages through a single install point, mirroring the styleframe barrel pattern.
  • Subpath exports for core (./compiler, ./config-loader, ./cli), build plugins (./plugin/{vite,webpack,rollup,esbuild,rspack,farm}), and framework targets (./react, ./vue, ./svelte, ./solid, ./angular, ./qwik, ./astro).
  • Refactors @inkline/cli to export a main() function, called explicitly by both its own bin shim and the barrel's bin shim.
  • Renames root package from inkline to @inkline/monorepo to avoid workspace name collision.
  • Gitignores .styleframe/ directories (auto-generated by @styleframe/plugin).

Test plan

  • vp install links the new workspace package (19 projects)
  • vp pack in core/inkline builds all 17 entry points (ESM + CJS + declarations)
  • vp check passes via pre-commit hook
  • CI validates full build and type-check across all packages

Add `core/inkline` barrel package that re-exports all `@inkline/*` sub-packages
through a single `inkline` install point, mirroring the `styleframe` pattern.

Subpath exports:
- `.` re-exports `@inkline/core`
- `./cli` re-exports `@inkline/cli`
- `./compiler` re-exports `@inkline/compiler`
- `./config-loader` re-exports `@inkline/config-loader`
- `./plugin/{vite,webpack,rollup,esbuild,rspack,farm}` re-exports `@inkline/plugin/*`
- `./{react,vue,svelte,solid,angular,qwik,astro}` re-exports `@inkline/*` framework targets

Refactors `@inkline/cli` to export a `main()` function from its index, called by
both its own bin shim and the barrel's bin shim.

Also gitignores `.styleframe/` directories (auto-generated by @styleframe/plugin).
@codecov

codecov Bot commented May 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.66%. Comparing base (40d8b0c) to head (071d203).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #450   +/-   ##
=======================================
  Coverage   89.66%   89.66%           
=======================================
  Files         100      100           
  Lines        3910     3910           
  Branches     1317     1314    -3     
=======================================
  Hits         3506     3506           
  Misses        337      337           
  Partials       67       67           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

… artifacts

- Make `inkline/cli` a pure re-export; move `main()` invocation to bin script
- Add `core/plugin/dist` and `ui/*/.styleframe` to CI build artifacts
The .styleframe/styleframe.d.ts files are ambient type declarations for
the virtual:styleframe module, generated by @styleframe/plugin. Since
they are not regenerated during the build step, they must be committed
to git for lint and type-check to pass in CI.
Add `vp build` to the ui/components build script so the styleframe
Vite plugin generates type declarations during the build. This lets
.styleframe/ stay gitignored while still being available as CI build
artifacts for lint and type-check jobs.
…rtifacts

Reverts the .styleframe gitignore — these auto-generated type declarations
must stay in git for CI type checking and linting to resolve virtual:styleframe.

Also adds core/inkline/dist to the CI artifact upload paths.
Move .styleframe/ to per-project .gitignore files across all UI packages
so type declarations are generated by `vp build` rather than tracked in git.

Add components barrel (src/components/index.ts) and configure vite.config.ts
as a multi-entry lib build producing both the component barrel and styleframe config.
Add include-hidden-files: true so .styleframe directories are
correctly included by the upload-artifact action.
@alexgrozav alexgrozav merged commit c9b6a88 into main May 25, 2026
9 checks passed
@alexgrozav alexgrozav deleted the alexgrozav/add-inkline-barrel-package branch May 25, 2026 18:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant