Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hideoo/generator-starlight-plugin
Yeoman generator for Starlight plugins
https://github.com/hideoo/generator-starlight-plugin
astro documentation plugin starlight yeoman-generator
Last synced: 4 months ago
JSON representation
Yeoman generator for Starlight plugins
- Host: GitHub
- URL: https://github.com/hideoo/generator-starlight-plugin
- Owner: HiDeoo
- License: mit
- Created: 2024-08-31T11:04:58.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-09-02T08:29:42.000Z (5 months ago)
- Last Synced: 2024-09-24T08:43:26.798Z (4 months ago)
- Topics: astro, documentation, plugin, starlight, yeoman-generator
- Language: TypeScript
- Homepage:
- Size: 186 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
generator-starlight-plugin 🔋
Yeoman generator for Starlight plugins.
## Features
An **opinionated** but still **lightweight** Yeoman generator to help create Starlight plugins.
- **opinionated**: [Git](https://git-scm.com/) and [pnpm](https://pnpm.io/) 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:
```shell
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:
```shell
pnpm dev
```To learn more about plugin development, check the [Starlight documentation](https://starlight.astro.build/reference/plugins/).
## 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:
- [Starlight Documentation](https://starlight.astro.build/)
- [Starlight Plugins Reference](https://starlight.astro.build/reference/plugins/)
- [Starlight Plugins Showcase](https://starlight.astro.build/resources/plugins/)
- [Astro Documentation](https://docs.astro.build/)
- [Astro Integration API](https://docs.astro.build/en/reference/integrations-reference/)
- [Astro “Deploy your site” guide](https://docs.astro.build/en/guides/deploy/)
- [Astro Discord](https://astro.build/chat/)
- [npm Registry Publishing Guide](https://docs.npmjs.com/packages-and-modules/contributing-packages-to-the-registry)> [!TIP]
> After [deploying](https://docs.astro.build/en/guides/deploy/) 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](https://github.com/HiDeoo/generator-starlight-plugin/blob/main/LICENSE) for more information.