Contributing to LittlevGL

Do you have some free time to spend with programming? Are you working on an Embedded GUI project with LittlevGL? See how can you help to improve the graphics library!

There are many different possibilities to join the community. If you have some time to work with us I’m sure you will find something that fits you! You can:

But first, start with the most Frequently Asked Questions.

FAQ about contributing

Where can I write my question and remarks?

We use GitHub’s issue tracker to ask questions., report bugs and suggest features. But there are some simple rules:

How can I send fixes and improvements?

Merging new code happens via Pull Requests. If you are still not familiar with the Pull Requests (PR for short) here is a quick guide about them:

  1. Fork the lvgl repository. To do this click the “Fork” button in the top right corner. It will “copy” the lvgl repository to your GitHub account (https://github.com/your_name?tab=repositories)
  2. Clone the forked repository and add your updates
  3. Create a PR on the GitHub on the page of you lvgl repository(https://github.com/your_name/lvgl) by hitting the “New pull request” button
  4. Set the base branch. It means where you want to merge your update. Fixes go to master, new features to the actual dev-x.y branch.
  5. Describe what is in the update. An example code is welcome if applicable.

Some advice:

Where is the documentation?

You can read the documentation here: https://docs.littlevgl.com/
You can edit the documentation here: https://github.com/littlevgl/doc

Where is the blog?

You can read the blog here: https://blog.littlevgl.com/
You can edit the blog here: https://github.com/littlevgl/blog

So how and where can I contribute?

Answering other’s questions

It’s a great way to contribute to the library if you already use it. Just go the issue tracker, read the titles and if you are already familiar with a topic, don’t be shy, and write your suggestion.

Reporting and/or fixing bugs

For simple bugfixes (typos, missing error handling, fixing a warning) is fine to send a Pull request directly. However, for more complex bugs it’s better to open an issue first. In the issue, you should describe how to reproduce the bug and even add the minimal code snippet.

Suggesting and/or implementing new features

If you have a good idea don’t hesitate to share with us. It’s even better if you have time to deal with its implementation. Don’t be afraid if you still don’t know LittlevGL well enough. We will help you to get started.

During the implementation don’t forget the Code style guide.

Improving and/or translating the documentation

The documentation of LittlevGL is written in Markdown and available here for editing. If you find some parts of the documentation obscure or insufficient just search the related .md file, hit the edit icon and add your updates. This way a new Pull request will be generated automatically.

If you can devote more time to improve the documentation you can translate it!

  1. Just copy the English .md files from the root folder to locale/LANGUAGE_CODE (language code is e.g. DE, FR, ES etc)
  2. Append the language code the end of files (e.g. Welcome_fr.md)
  3. Update the filenames in _Sidebar.md
  4. Translate the page(s) you want
  5. Create a Pull request

Writing a blog post about your experiences

Have you ported LittlevGL to a new platform? Have you created a fancy GUI? Do you know a great trick? You can share your knowledge on LittlevGL’s blog! It’s super easy to add your own post:

The blog uses Jekyll to convert the .md files to a webpage. You can easily run Jekyll offline to check your post before creating the Pull request

Summary

I hope you have taken a liking to contribute to LittlevGL. A helpful and friendly community is waiting for you! :)