Skip to content

feat: first version of plugin - #1

Merged
Nsttt merged 13 commits into
mainfrom
feat/astro
Mar 30, 2026
Merged

Nsttt merged 13 commits into
mainfrom
feat/astro

Conversation

@Nsttt

@Nsttt Nsttt commented Mar 30, 2026

Copy link
Copy Markdown
Member

No description provided.

@Nsttt Nsttt self-assigned this Mar 30, 2026
Copilot AI review requested due to automatic review settings March 30, 2026 07:16

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Introduces the first working version of the @module-federation/astro integration package, along with a host/remote PoC workspace and CI/release automation for publishing via Changesets + GitHub Actions.

Changes:

  • Adds packages/astro integration: remote normalization, DTS .astro expose wrapping, and SSR remote-loading transform.
  • Adds PoC apps (apps/host, apps/remote) demonstrating CSR + SSR + remote Astro component consumption.
  • Sets up monorepo tooling (pnpm workspace), docs, CI, and release/publish workflows.

Reviewed changes

Copilot reviewed 39 out of 45 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
pnpm-workspace.yaml Defines pnpm workspace package globs for apps/packages.
package.json Root workspace scripts for dev/build/test/ci and pnpm overrides.
README.md Repo-level runbook and explanation of federation/DTS wiring.
packages/astro/package.json Defines the published integration package metadata, deps, scripts.
packages/astro/tsconfig.json TSC config for building the integration to dist/.
packages/astro/src/index.ts Core Astro integration implementation and helper normalizers/transforms.
packages/astro/test/normalize-remotes.test.mjs Node test coverage for remote normalization and .astro expose wrapping.
packages/astro/README.md Package-level usage docs and behavioral notes.
apps/remote/package.json Remote PoC app package definition and scripts.
apps/remote/tsconfig.json Remote app TS config extending Astro strict preset.
apps/remote/astro.config.mjs Remote MF config (exposes, manifest, DTS settings).
apps/remote/src/widget.ts Remote client widget implementation.
apps/remote/src/server.ts Remote SSR-safe module export for host frontmatter use.
apps/remote/src/scripts/standalone.js Remote standalone page script to mount local widget.
apps/remote/src/pages/index.astro Remote standalone page UI describing exposed modules.
apps/remote/src/RemoteCard.astro Remote Astro component exposed to the host.
apps/host/package.json Host PoC app package definition and scripts.
apps/host/tsconfig.json Host TS path mapping for consumed MF types.
apps/host/astro.config.mjs Host MF config (remotes, SSR local remotes, DTS consumeTypes).
apps/host/src/layouts/Layout.astro Host layout wrapper.
apps/host/src/scripts/mf-host.ts Host client script that loads remote widget and renders it.
apps/host/src/pages/index.astro Host CSR demo page for remote widget loading.
apps/host/src/pages/ssr.astro Host SSR static import demo of remote server module.
apps/host/src/pages/ssr-dynamic.astro Host SSR dynamic import demo of remote server module.
apps/host/src/pages/astro-component.astro Host SSR static import demo of remote Astro component.
apps/host/src/pages/astro-component-dynamic.astro Host SSR dynamic import demo of remote Astro component.
apps/host/src/components/Welcome.astro Template welcome component (supporting UI/assets).
apps/host/src/assets/background.svg Host UI asset.
apps/host/src/assets/astro.svg Host UI asset.
apps/host/public/favicon.svg Host favicon.
apps/host/public/favicon.ico Host favicon.
docs/mf-vite-internals.md Internal notes on mf-vite behavior and implications for Astro integration.
docs/mf-core-packages.md Internal inventory of MF core packages relevant to this integration.
docs/astro-source-integration-points.md Internal notes mapping Astro integration hooks + script handling.
docs/RELEASING.md Release process documentation (Changesets + trusted publishing).
.gitignore Ignores build output and MF temp/type artifacts.
.vscode/launch.json VS Code launch config for astro dev.
.vscode/extensions.json VS Code extension recommendations.
.github/workflows/ci.yml CI workflow to install/build/test on PRs and main.
.github/workflows/pr.yml PR title semantic validation workflow.
.github/workflows/release-pull-request.yml Workflow to generate release PRs via Changesets automation.
.github/workflows/publish-on-release.yml Workflow to publish to npm on GitHub Releases (trusted publishing).
.changeset/config.json Changesets configuration (public access, ignored PoC packages).
.changeset/fresh-forks-smile.md Patch changeset for package metadata/release automation alignment.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/mf-core-packages.md Resolved
Comment thread packages/astro/src/index.ts Resolved
Comment thread docs/astro-source-integration-points.md Resolved
Comment thread docs/mf-vite-internals.md Resolved
Comment thread docs/mf-core-packages.md Resolved
Comment thread docs/mf-vite-internals.md Resolved
Comment thread docs/astro-source-integration-points.md Resolved
Comment thread apps/example/host/src/pages/index.astro Resolved
Comment thread packages/astro/src/index.ts Resolved
@Nsttt Nsttt changed the title feat:: first version of plugin feat: first version of plugin Mar 30, 2026

@gioboa gioboa left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀 that's amazing

@Nsttt
Nsttt merged commit 262ec5b into main Mar 30, 2026
2 checks passed
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.

3 participants