This repo is ONLY for Official Noctalia plugins maintained by the core Noctalia Team.
We do not accept PRs for new third-party plugins in the official repo, those should go in https://github.com/noctalia-dev/community-plugins
noctalia.d.luau declares the whole plugin API (noctalia.*, barWidget.*,
shortcut.*, launcher.*, desktopWidget.*, panel.*, ui.*, and the entry
callbacks) so you get autocomplete and typo diagnostics. Type annotations are a
runtime no-op — the Luau VM compiles them away — so this only affects your editor.
- Install luau-lsp (VS Code extension or standalone language server).
- Point it at the definitions. This repo ships a
.vscode/settings.jsonthat already does so; for another editor addnoctalia.d.luauto luau-lsp'stypes.definitionFiles. .luaurcsetslanguageModetononstrict, matching the--!nonstrictdirective every plugin file starts with — the right fit for these dynamically-typed scripts (full autocomplete and real type/typo diagnostics, without strict-mode noise about always-present optional values).
Plugin source strings live in each plugin's translations/en.json. Contributors should edit only that English file;
other locales are maintained through Noctalia Translate.
To test the latest translated locales in a working checkout, run:
./.tools/i18n-pull.shThe command asks for confirmation and overwrites the locale files returned by the translation service. It does not delete local locale files that are absent from the export. Review the resulting diff before committing anything.