generator-starlight-plugin 🔋
Yeoman generator for Starlight plugins.
Features
An opinionated but still lightweight Yeoman generator to help create Starlight plugins.
- opinionated: Git and pnpm are required to generate a monorepo containing a Starlight plugin package and a Starlight documentation project acting at the same time as a playground to test your plugin. The plugin is expected to be written in TypeScript, hosted on GitHub, and licensed under the MIT license.
- lightweight: Formatting, linting, testing, bundling, publishing, deploying the documentation, which are all optional for a Starlight plugin, are not enforced by the generator. You are free to add them to your project as you see fit using the tools and services you prefer.
Usage
To use the generator, run the following command in your terminal from the directory where you want to work on your plugin:
npx -p yo -p @hideoo/generator-starlight-plugin -- yo @hideoo/starlight-plugin
To start creating your Starlight plugin, edit the packages/plugin-name/index.ts
file which will be the entry point of your plugin.
To test your plugin, run the following command from the docs/
directory:
pnpm dev
To learn more about plugin development, check the Starlight documentation.
Project Structure
The generated project uses a monorepo structure with different pnpm workspaces:
docs/
: A Starlight documentation project to document your plugin that also acts as a playground to test it.packages/plugin-name/
: A package containing your Starlight plugin.
Resources
The generated project contains the bare minimum to get started with a Starlight plugin. Here are some additional resources to help you develop and release your plugin:
[!TIP]
After deploying your documentation, add a link to it in the packages/plugin-name/README.md
file to help users find it.
License
Licensed under the MIT License, Copyright © HiDeoo.
See LICENSE for more information.