You are encouraged to submit issues and merge requests.
A good issue includes reproducible steps for bugs. Clear use cases for feature requests.
A good merge request includes a unit test demonstrating how a bug exists and is fixed with your change. Out of caution, contributors must not view or be familiar with proprietary Sentry code. Our codebase borrows code and ideas from Sentry when it was open source. We provide a fork of the last open source version of sentry here. You may and should read, understand, and copy open source Sentry code. While Sentry's current code is on GitHub, it would violate their proprietary license to use it.
Please open an issue to discuss any larger feature or new Python dependency before starting work. We aim to be very dependency-light, so as to keep the project maintainable with very little time. Larger feature development is encouraged, provided you are willing to assist with general project maintenance. Consider asking what maintenance task you can help with.
GlitchTip has an API only Django backend. The frontend is built in Angular and runs as a single page application, fully isolated from our backend. You could build your own frontend if you wanted to. We attempt to be API compatible with Sentry. GlitchTip users can use Sentry client SDK's to send their events to GlitchTip without any modification.
This diagram shows how the backend handles events from ingestion to REST API endpoints.
Backend code has high test coverage and all features and bug fixes require a unit test.
We are not a Sentry fork. The older open source Sentry project had a vast code base including multiple programming languages and a custom search engine. We do not believe that a small team of interested contributors can maintain such a large codebase. Instead we reimplement Sentry's features and sometimes port Sentry's open source python code.
GlitchTip backend is built with
Avoid:
Use ruff and mypy. Use an editor plugin or run ruff check glitchtip/ apps/
. Add --fix to auto fix.
This section describes the idealized approach to coding GlitchTip. You may notice inconsistencies.
The GlitchTip core team at this time is not interested in legacy sdk client support. Merge requests are accepted and welcome. Open legacy client feature requests along with the intention to implement or interest in funding development.