Skip to content

DrKJeff16/nvim-plugin-boilerplate

Repository files navigation

nvim-plugin-boilerplate Mentioned in Awesome Neovim

Codeberg Mirror | GitHub Mirror

Important

This was NOT AI-generated!

An annotated Neovim plugin template with pre-commit, StyLua and selene configs, with some useful GitHub actions included.


Features


Setup

Note

The script is subject to breaking changes in the future. Therefore please review the instructions below.

To configure the template simply run generate.sh in your terminal:

./generate.sh # Has to be run in the repository root!

It'll invoke many prompts so that you may structure your plugin as desired.

The script will delete itself after a successful setup!


Structure

This template includes the following relevant files:

generate.sh  <==  Bash script plugin template generator
stylua.toml  <==  Config file for StyLua
selene.toml  <==  Config file for selene
vim.yml  <==  Std file for selene
.busted  <==  Config file for busted
spec/  <==  Contains all the unit tests
└── my-plugin_spec.lua  <==  NOTE: All test files must end up with `*_spec.lua`!
lua/
├── my-plugin.lua  <==  The main module
├── my-plugin/  <==  Folder containing all the plugin utils
│   ├── config.lua  <==  Configuration module. Contains your main `setup()` function
│   ├── health.lua  <==  Hooks for `:checkhealth` (OPTIONAL)
└   └── util.lua  <==  Utilities for the plugin
rplugin/
├── python3/  <==  Folder containing the Python 3 components
└   └── my-plugin.py  <==  The Python 3 component
.github/
├── workflows/  <==  Folder containing all the GitHub Actions
│   ├── selene.yml  <==  Workflow for selene
└   └── stylua.yml  <==  Workflow for StyLua

License

MIT

About

An annotated Neovim plugin template with pre-commit, StyLua and selene configs, GitHub actions and more.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project