tsParticles official confetti website
Install dependencies (uses pnpm):
pnpm installCommon commands:
pnpm run build— generatepublic/js/confetti-modes.jsfromconfetti-modes.handlebarspnpm run deploy— run the deploy script (deploy.cjs)pnpm run lint— run ESLint forpublic/jspnpm run lint:fix— run ESLint with--fixonpublic/jspnpm run format— run Prettier to format the repository
The repository includes a GitHub Actions workflow .github/workflows/lint.yml that runs pnpm install, pnpm run lint, and pnpm run format:check on pushes and PRs. ESLint treats certain rules as errors (e.g. no-unused-vars) while warnings are left permissive.
Quick checklist for contributors:
- Fork the repo and create a feature branch:
git checkout -b feat/your-change - Install dependencies:
pnpm install - Before committing run:
pnpm run formatto apply Prettier formattingpnpm run lintto run ESLint (fix issues withpnpm run lint:fix)
- Commit changes with a clear message and push your branch
- Open a Pull Request describing the change and linking relevant issues
Notes:
- Generated files (e.g.
public/js/confetti-modes.js) are ignored by ESLint and should not be edited directly; update the sourceconfetti-modes.handlebarsand run the build. - Maintain code style by running
pnpm run formatandpnpm run lintlocally.
This project requires a Node.js LTS release. We recommend using nvm to manage Node versions and to install the current LTS:
nvm install --lts
nvm use --ltsAfter switching Node versions, run pnpm install to ensure dependencies are installed for the correct environment.
Husky is used to run pre-commit hooks that format code and run ESLint auto-fixes. To enable hooks locally, simply run:
pnpm install
# or if hooks are not installed: pnpm dlx husky installIf a pre-commit hook blocks your commit and you need to bypass it for an emergency, you can use git commit --no-verify, but avoid doing this routinely.