Skip to content

Contributing

Want to help improve Immich Kiosk? Great! Here’s what you’ll need to get started:

First, make sure you have these tools installed on your computer:

  • Go - The main programming language we use
  • Taskfile - Helps automate common tasks
  • Node.js - For running the frontend
  • pnpm - Package manager for the frontend

Ready to contribute? Here’s how:

  1. Fork the repository and create a new branch for your changes

    Terminal window
    git checkout -b feature/my-feature
  2. Run task install to set up your development environment

  3. Make your changes! Just remember to:

    • Follow the existing code style
    • Add tests if you’re adding new features
    • Test your changes with task test
    • Check code quality with task lint
  4. Commit your changes with a helpful message

    Terminal window
    git commit -m "feat: description of your change"
  5. Push your changes to GitHub

    Terminal window
    git push origin feature/my-feature
  6. Create a Pull Request to the main branch

    • Tell us what your changes do and why you made them
    • Link to any related issues
    • Add screenshots if you changed anything visual

We try to keep things organized, so please:

  • Follow Go best practices
  • Write clear commit messages following conventional commits
  • Keep changes focused and manageable in size
  • Update docs if you change how things work
  • Add tests for new features

Your changes will need to pass our automated checks before being merged.

Need help? We’re here for you!