Nx plugin adding first-class support for Astro.
- Nx preset to create a workspace with an Astro application.
- Generators for scaffolding Astro applications and libraries.
- Generators for scaffolding Astro components.
- Cypress and Playwright E2E tests for Astro applications.
- Executors to run builds, start the Astro development server, start a local static file server to preview built applications, and run diagnostic checks against projects.
- Nx project graph plugin to visualize Astro project dependencies.
To create a new Nx workspace with an Astro application you can run:
npx create-nx-workspace@latest --preset=@nxtensions/astroAnd follow the instructions.
Note
By default, the above command will use npm as the package manager. You can provide the --pm flag with a value of yarn or pnpm if you prefer using one of those instead.
In an existing Nx workspace, add the @nxtensions/astro package in the workspace by running:
nx add @nxtensions/astroNote
If you're using Nx with a version lower than 18.0.0, run:
# npm
npm install -D @nxtensions/astro@<version>
# yarn
yarn add -D @nxtensions/astro@<version>
# pnpm
pnpm install -D @nxtensions/astro@<version>Replace the <version> with the version of the plugin that supports your version of Nx.
To update the package version and run any migrations included in it, use the nx migrate command:
nx migrate @nxtensions/astro@latestThen follow the intructions provided when the above command finishes running.
Important
Prefer updating the plugin using the nx migrate command over manually updating its version. The plugin will sometimes apply version updates and run code migrations for packages it manages to ensure they work correctly.
For more information on the nx migrate command see https://nx.dev/nx/migrate.
To generate an Astro application run:
nx generate @nxtensions/astro:app my-appTo generate an Astro library run:
nx generate @nxtensions/astro:lib my-libTo generate an Astro component run:
nx generate @nxtensions/astro:component my-componentTo build an Astro application run:
nx build my-appForm more information on building an Astro application see https://docs.astro.build/en/reference/cli-reference/#astro-build.
To run an Astro application in development mode run:
nx dev my-appFor more information on the Astro development server see https://docs.astro.build/en/reference/cli-reference/#astro-dev.
To start a local static file server to serve a previously built Astro application run:
nx preview my-appFor more information on the local static file server for Astro applications see https://docs.astro.build/en/reference/cli-reference/#astro-preview.
To run diagnostic checks (such as type-checking) against a project run:
nx check my-appFor more information see https://docs.astro.build/en/reference/cli-reference/#astro-check.
To generate TypeScript types for all Astro modules for a project, run:
nx sync my-appFor more information see https://docs.astro.build/en/reference/cli-reference/#astro-sync.
To visualize the workspace graph of dependencies run:
nx graphSince v16, the plugin version is aligned to the Nx version it supports.