chore(core): nx plugin submission @hyperfrontend/features - #36555
Open
AndrewRedican wants to merge 1 commit into
Open
chore(core): nx plugin submission @hyperfrontend/features#36555AndrewRedican wants to merge 1 commit into
AndrewRedican wants to merge 1 commit into
Conversation
👷 Deploy request for nx-docs pending review.Visit the deploys page to approve it
|
👷 Deploy request for nx-dev pending review.Visit the deploys page to approve it
|
Contributor
|
View your CI Pipeline Execution ↗ for commit 993fa85 ☁️ Nx Cloud last updated this comment at |
Contributor
Author
|
@FrozenPandaz Any joy with accepting this as a community plugin or do you have any feedback for me? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Community Plugin Submission
@hyperfrontend/features
hyperfrontend is a vendor-agnostic micro-frontend runtime: independently deployed "features" run inside sandboxed iframes and talk to their host through a versioned cross-origin handshake with typed contracts, contract validation, lifecycle heartbeats, host-measured presentation modes (inline, dialog, popup), and capability-scoped permissions.
@hyperfrontend/featuresis its SDK, CLI, and dev server — and it ships a first-class Nx plugin surface so an Nx workspace can scaffold, serve, and build these features natively.The plugin is focused on technology and tooling (micro-frontend authoring) and provides generators and executors (no graph plugin):
init@hyperfrontend/featuresin the workspace; wired to run automatically vianx add @hyperfrontend/features.featurebuildserveManifests:
generators.json·executors.jsonAuthor: Andrew Redican, who also maintains the hyperfrontend monorepo the plugin is developed in. Current users: the live demos on the project site (hyperfrontend.dev) are real features built and embedded with this SDK/plugin; adoption beyond the author's projects is early-stage.
Links
libs/features, Nx surface:libs/features/src/nx)init,feature)build,serve)Requirements checklist
apps/package-e2e/features) tests the plugin the way a consumer experiences it: it creates a real Nx workspace with the officialcreate-nx-workspace(pinned to Nx 22.7.8), installs the packed tarball exactly asnx addinstalls a plugin, then drives the workspace-localnxCLI and asserts onnx list, generator output, and executor behavior. Seenx-plugin.spec.ts,nx-plugin-callbacks.spec.ts, and the harnesssupport/nx-workspace.ts. The suite runs in CI as part of thee2ejobs inci-pr.ymlandci-main.yml, alongside format, lint, typecheck, build, and unit-test-with-coverage gates.repository.urlin the plugin'spackage.json. The published manifest declares"repository": { "type": "git", "url": "git+https://github.com/AndrewRedican/hyperfrontend.git" }— verifiable vianpm view @hyperfrontend/features repository.@nx/devkitas adependency. Deliberately not a runtime dependency: the plugin vendors devkit-compatible types and uses the consumer workspace's own@nx/devkitfor formatting and installs when present, falling back to built-in equivalents. This keeps the package installable in non-Nx workspaces (it is also a standalone SDK/CLI) without forcing a devkit version onto consumers. Compatibility is not assumed — it is proven by the tarball e2e suite above against a real Nx workspace. Happy to add@nx/devkitas apeerDependency/dependencyif the maintainers consider it a hard requirement for listing.Registry entry
{ "name": "@hyperfrontend/features", "description": "SDK, CLI, and dev server for building, embedding, and orchestrating hyperfrontend micro-frontend features.", "url": "https://github.com/AndrewRedican/hyperfrontend/tree/main/libs/features" },