Project setup
moonlight requires Node.js 22 and pnpm 10.
- Clone the repository:
git clone https://github.com/moonlight-mod/moonlight.git - Install dependencies:
pnpm install. - Build the project:
pnpm run build.- For working on moonlight, a watch mode is available with
pnpm run dev. Remember that you must restart the command in some scenarios.
- For working on moonlight, a watch mode is available with
For more information on project structure, see the dedicated page.
Contribution guidelines
Section titled “Contribution guidelines”- Ensure your commits pass Prettier/ESLint. This is a requirement for merge.
- moonlight uses husky to check lints on commit. This should have automatically been setup for you when running
pnpm install.
- moonlight uses husky to check lints on commit. This should have automatically been setup for you when running
- Please make PRs to the
developbranch instead ofmain.developis merged intomainwhen moonlight updates happen. Our in-progress work resides ondevelop.
- Don’t break the existing API surface.
- Library extensions and moonlight globals cannot change in a way that breaks existing extensions (unless there is an upcoming API bump).