Overview of external systems
We try and minimise the number of external systems required to use Karrot.
Here's all the systems that Karrot can interact with.
Email
Email essential for confirm email addresses and notifying users of things they need to know about. It is required for a working Karrot installation.
See the Email section in settings.
Incoming email (optional)
This allows users to reply to notifications, it's only supported if you're using postal for email.
We run an instance of postal for karrot.world, and sometimes make arrangements with other groups if they want to make use of it - email us at info@karrot.world if you're interested.
Push notifications
Users can opt-in to receiving push notifications, if they do then it uses whichever push server associated with their device/browser.
OpenStreetMap
We use OpenStreetMap tiles and geo lookup for finding locations for addresses in location input fields.
Emoji images
We currently use a library that uses https://www.jsdelivr.com/ for the hosting of emoji image assets.
We did start looking into how to self-host these images: see https://codeberg.org/karrot/karrot-frontend/issues/2674.
Sentry (optional)
Sentry can be configured for error reporting.
See the Sentry section in settings.
InfluxDB (optional)
This can be used to collect anonymous group-aggregated statistics for later display in tools like grafana. No user information is stored there, only by group id.
See the InfluxDB section in settings.
We have a public instance for karrot.world stats over at grafana.karrot.world.
Discourse (optional)
To try and get users engaged with our discourse forum, we built an integration where a feed from a discourse forum can be displayed inside Karrot.
Additionally, it can be used to display a banner on the top of every page by posting into a specific category.
See the Discourse section in settings.
MaxMind GeoIP data (optional)
Used for geolocating IP addresses to show users a default location on the map. It doesn't call an external API, but MaxMind data is installed on your server.
LiveKit (optional)
We built our video calling feature on top of LiveKit. You can either self-host this, or use a hosted instance with them.
See the Meet section in settings.