Developing Lemonade
Lemonade is a community-driven project organized around the Lemonade Discord server. That should be your first stop to meet the developers, get support, and propose contributions.
This documentation is here to help you set up your environment, start modifying Lemonade to your liking, and join the developer community!
Developer Setup
Start here: getting started.
You can also reference the app and web-ui guides to learn more about the GUI side of the project.
Philosophy
Understand Lemonade's mission and design tenets before contributing by reading the philosophy.
Roadmap
Lemonade's roadmap is defined by a set of working groups, and most substantial contributions should be within the scope of one of these groups.
Contributing
The Lemonade project welcomes contributions! Learn about the project's mission, maintainers, and contribution process here.
Documentation
Writing or improving docs? Read the documentation guide for style, structure, and guidance on AI-assisted contributions.
Testing
Preparing a PR? Read the testing guide to learn which test suites cover your change and what reviewers expect.
Adding a Backend
If you are adding a new backend, follow the template in the adding a backend guide.
Lemonade Omni Models
Lemonade has a unique capability to group LLM, image, and speech models together to present a unified omni-modal "model" to end-users. These one-click bundles are called Lemonade Omni Models, and they're routed via an internal mechanism called OmniRouter. Learn more here.
CI System
Lemonade has a CI system that tests changes on real AI PC hardware targets — in the merge queue by default, or on a labeled PR (the testing guide maps each ci:* label to the jobs it opts in). The self-hosted runners guide documents how those are set up.