This page is subject to change — the technology is under active development.
Open Source Git Forge 🇪🇺 Proudly made in the EU

Your code.
Your infrastructure.

Gumtree is a self-hosted, hyperconverged git forge. It uses SHA-256 natively, stores metadata in FoundationDB with PostgreSQL projections, and keeps objects in Garage S3. CI/CD, real-time IRC, a translation editor, and full-text search are all built in. It runs on a single node and scales horizontally when you need it to. The whole thing is AGPL-3.0, and it will stay that way.

terminal — gumtree
# Install Gumtree
$ curl -fsSL https://gumtree.necessary.nu/install.sh | sh

# Single-node deployment — everything in one box
$ gumtree init --domain forge.example.com
✓ FoundationDB cluster connected
✓ PostgreSQL projections ready
✓ Garage S3 bucket created
✓ Tantivy search index built
✓ SHA-256 object format configured
✓ Cicada CI agent registered
✓ EucalyptIRCd listening on :6697

$ gumtree serve
🌿 Gumtree running at https://forge.example.com
SHA-256Object Format
AGPL-3.0Licence
1 → nNodes
HeadlessArchitecture
🇸🇪Made in Sweden

Why this exists.

The dominant code hosting platforms have drifted. What used to be infrastructure for developers has become a product surface — optimised for conversion, engagement, and upselling. Gumtree exists because we think a forge should be a community platform that serves the people who use it, not a business that extracts value from them. It's built in Sweden, hosted wherever you want it, and licensed to stay open.

Self-hosted by design

Gumtree runs on hardware you control. There is no telemetry, no analytics, and no usage tracking. If EU data residency matters to your organisation, you get it by default — your data lives where your servers do.

A platform for your community

Gumtree is a platform — for your team, your contributors, your translators. What it isn't is a product that optimises for someone else's engagement metrics. There are no upsell prompts, no feature gates, and no dark patterns. The people using the forge are the people it serves.

AGPL-3.0, the whole thing

Copyleft means improvements flow back to the commons. There is no open-core model where the interesting features are behind a paywall. Every feature ships in the same binary, under the same licence, for everyone.

GDPR-compliant by architecture

Data sovereignty is structural, not a checkbox. Gumtree doesn't phone home, doesn't embed third-party scripts, and doesn't require you to bolt on a consent banner. Host it in your jurisdiction and you're done.

Portable data

PRs, issues, and review comments live in refs/forge/* inside the git repo itself. A clone gives you the full forge history, not just code. Everything else uses standard git, standard S3, and standard IRC — you can leave at any time and take everything with you.

AI is your decision

Gumtree doesn't ship AI features and it doesn't block them. The objection was never to AI as a technology — it's to having it appear unbidden in every surface of your workflow as someone else's revenue strategy. If you want to integrate something, the API is there.

What it's built on.

Every component here was chosen deliberately. The result is a forge with no C runtime dependencies in the hot path, ACID transactions on all metadata, and a storage layer that scales geo-distributed without operational complexity.

gitoxide
gix · Rust

Pure Rust git implementation. Native SHA-256, no libgit2 shim, no C dependency chain. Faster clones, safer memory.

FoundationDB
fdb · C++ / Rust bindings

Distributed, ACID-transactional source of truth. Issues, PRs, users, permissions — serializable consistency at any scale.

PostgreSQL
Projection store

Relational projections for git history, commit graphs, contributor stats, and anything where doing it without joins would be miserable.

Garage
S3-compatible · Rust

Self-hosted, geo-distributed object storage. Git packfiles, LFS objects, CI artifacts. Binary-patched LFS with delta transfers and delta storage via bidiff.

Tantivy
Full-text search · Rust

Multilingual full-text search with CJK tokenization. Indexes code, issues, PRs, commits — including private repos. Trigram + regex.

Cicada
CI/CD · YAML DSL

Hybrid CI/CD with dynamic pipelines, agent-side secret resolution, and SSH into failed builds. Not a GitHub Actions clone.

EucalyptIRCd
IRCv3 · FoundationDB-backed

Real-time communication built into the forge. Auto-channels for PRs and CI runs. Reply, react, typing indicators. No third-party chat.

Fluent L10n
Project Fluent · .ftl

Integrated translation editor with AST-aware Fluent editing. BCP-47 tags, ICU4X runtime. Works for any language with a valid locale tag.

gumtree://
Custom protocol · git helper

Optimised git helper and custom protocol for massively faster clones and pushes. Parallel S3-direct object transfer.

Mirroring
Upstream sync

Full mirroring support for upstream repositories. Pull from GitHub, GitLab, Codeberg, or any git remote. Scheduled sync with conflict detection.

refs/forge/*
Portable forge data

PRs, issues, and reviews stored as git refs. Clone a repo and get the full forge history — not just code. Your data is never trapped.

ForgeFed
ActivityPub federation · preliminary

Cross-instance federation via the ForgeFed protocol. Open PRs, comment on issues, and follow repos across federated forges. Early support, growing fast.

CI/CD and IRC, built in.

Most forges treat CI and chat as integrations — external services you bolt on and hope stay connected. Gumtree ships both as first-class components backed by the same database, so they work together without glue code or webhook plumbing.

Cicada CI/CD

Cicada is the CI/CD system integrated into Gumtree. Pipelines are defined in a YAML DSL that supports conditional steps, matrix builds across targets, and agent-side secret resolution — secrets are decrypted on the build agent, never on the coordinator. When a build fails, you can SSH directly into the container to diagnose the problem instead of staring at log output.

  • Interactive DAG pipeline visualisation
  • Agent-side secret resolution (zero-trust)
  • SSH into failed build containers
  • Self-hosted agents, no cloud dependency
  • Artifact browser with Garage S3 backing
pipeline.cicada.yml
pipeline: app-ci
trigger:
  branches: [main, release/*]

stages:
  - name: build
    matrix:
      target: [aarch64-linux, x86_64-linux]
    steps:
      - cargo build --release --target ${matrix.target}
      - cargo test

  - name: locale-check
    needs: [build]
    steps:
      - gumtree locale lint locales/**/*.ftl
      - gumtree locale coverage --min 80%

EucalyptIRCd

EucalyptIRCd is a full IRCv3.2 server backed by FoundationDB. In multi-node deployments, all instances share the same message store, so the network appears as a single server regardless of how many nodes you're running. Channels are created automatically for repositories, pull requests, and CI runs. You can connect with any IRC client, or use the web interface embedded in the forge UI.

  • Auto-channels: !org/repo, !org/repo/pr/42
  • SASL auth tied to Gumtree accounts
  • IRCv3 reply, react, typing, read-marker
  • Chat embedded in CI runs and PR views
  • Full message history with chathistory spec
!acme/web-app
alice    Pushed fix for UTF-8 boundary handling
              → c7f2a01 on main · 2 min ago

bob      Nice — covers emoji sequences too?

alice    Yeah, ZWJ and flags both pass now.
              Regression tests added

cicada   ✓ web-app-ci #247 passed (8/8)
              1m 52s · aarch64-linux, x86_64-linux

carol    🎉
bob      👍

Integrated translation editor.

Gumtree ships with an AST-aware editor for Project Fluent .ftl files. It parses the Fluent syntax tree directly, so it understands selectors, placeables, and attributes — not just raw strings. Translators see source and target languages side by side with per-locale coverage tracking, and they can work directly in the forge without needing a developer to set up an external localisation tool. BCP-47 locale tags and ICU4X runtime support mean this works for any language with a valid locale tag, including those not yet covered by major localisation frameworks.

  • Side-by-side source/target with live validation
  • AST-aware — understands Fluent selectors, placeables, attributes
  • Per-locale coverage tracking with minimum thresholds
  • ICU4X runtime — plural rules, number/date formatting per locale
  • CI integration — lint and block merges on incomplete translations
  • No CLDR dependency — works for any language with a valid locale tag
locales/smn.ftl — Inari Sámi
Key
en — English
smn — Anarâškielâ
app-name
Keyboard
Näppäimistö
btn-save
Save changes
Vyeldi muttâsâid
settings-lang
Language
Kielâ
spellcheck-err
{$count} errors found
{$count} virheh lövdui
predict-none
No suggestions
⚠ missing
80% translated
4/5 keys

The gumtree:// protocol

Gumtree ships a git credential and transport helper that registers the gumtree:// protocol. It bypasses standard pack negotiation entirely — objects are transferred directly from the S3 backing store over parallel connections, which makes a significant difference on large repositories. The same helper optimises LFS: pushes send only binary deltas computed by bidiff rather than the full blob, and on the storage side only the most recent version of each file is kept in full while all prior versions are stored as deltas. The protocol falls back gracefully to standard git+ssh or git+https when the helper isn't installed.

  • Custom git credential/transport helper
  • Parallel S3-direct object transfer
  • Binary-patched LFS via bidiff — delta transfers and delta storage
  • Falls back to standard git+ssh/https seamlessly
  • git clone gumtree://forge.example.com/org/repo
Clone benchmark · 2.4 GB repo
git+ssh
47.2s
git+https
43.8s
gumtree://
12.1s
LFS push
256 MB upload
LFS delta push
12 MB delta
LFS storage
12.8 GB · 50 ver.
LFS deltas
2.1 GB · 50 ver.
Clone: 100 Mbps, 8 parallel streams. LFS: 256 MB binary, 50 revisions, ~5% change per version. Delta via bidiff.

Hyperconverged deployment.

All of Gumtree's services — git hosting, CI/CD coordination, IRC, full-text search — run in a single process on a single node. When you need more capacity, you add another node, configure FoundationDB and Garage to talk to each other, and the cluster rebalances. There is no migration step and no architectural change between a single-node personal instance and a multi-node production deployment. Docker and Kubernetes are both supported.

Single Node

All services on one machine — FoundationDB, PostgreSQL, Garage, Tantivy, Cicada agents, and EucalyptIRCd. This is a complete deployment, not a demo mode. Suitable for small teams, personal use, or evaluation.

$ gumtree init --single-node
$ gumtree serve
Multi-Node

Add a node to the cluster by pointing it at an existing instance. FoundationDB handles distributed coordination, Garage replicates objects across nodes, and PostgreSQL streams replicas. The application code is identical in both cases.

# On the new node:
$ gumtree join --cluster 10.0.0.1
✓ FDB cluster joined
✓ Garage ring updated
✓ Rebalancing objects...
Docker

A single container image runs all services. A Compose file is included for production deployments that split services across containers. Rootless container support is available.

$ docker run -v /data:/data \
  -p 443:443 -p 22:22 -p 6697:6697 \
  ghcr.io/necessary-innovations/gumtree
Kubernetes

A Helm chart is provided for Kubernetes deployments, using StatefulSets for FoundationDB and Garage, and Deployments for the application and Cicada coordinators. Horizontal pod autoscaling is supported.

$ helm install gumtree \
  oci://ghcr.io/necessary-innovations/\
  charts/gumtree --values prod.yaml

Headless. API-first.

Gumtree is a headless forge. The web UI is a static single-page application that talks exclusively to the public API — the same REST and GraphQL endpoints available to every user, script, and integration. There are no internal endpoints, no privileged UI routes, and no backend-for-frontend layer. The gt command-line tool works the same way: it is built entirely against the public API. If you don't like the provided UI, you can replace it, extend it, or not use one at all.

  • REST API — fully OpenAPI 3.1 compliant, versioned spec
  • GraphQL API — for when you need exactly the data you need
  • gt CLI — full forge management from the terminal, built 100% against the API
  • UI uses only the public API — no special access
  • Swap the UI, build a custom dashboard, or go CLI-only
Public API — the only API
# REST — OpenAPI 3.1 compliant
GET  /api/v1/repos/acme/web-app
POST /api/v1/repos/acme/web-app/issues
GET  /api/v1/search?q=grapheme&scope=org:acme

# GraphQL
POST /graphql
  {{ repo(owner:"acme", name:"web-app") {{
    pulls(state:OPEN) {{ title, author {{ login }} }}
  }} }}

# gt CLI — same APIs, from the terminal
$ gt repo list --org acme
$ gt issue create --title "Bug in normaliser"
$ gt ci logs acme/web-app#247

Tools for the people running the place.

Running a forge means dealing with spam accounts, sockpuppets, coordinated abuse, and the thousand small decisions that keep a community functional. Gumtree ships moderation and administration tooling as first-class features — not afterthoughts bolted onto a settings page. Users can block and report other users directly, and reports feed into a moderation queue that spans both the forge and EucalyptIRCd — banning a user from a repository also removes them from the associated IRC channels. Every administrative action is written to an immutable, append-only audit log backed by FoundationDB, giving you a complete, tamper-resistant record of who did what and when.

  • User blocking and reporting built into every profile, issue, and comment
  • Immutable audit trail — every admin and moderator action logged
  • Unified moderation queue across forge and IRC
  • Anti-spam and sockpuppet detection with behavioural fingerprinting
  • Org-level and instance-level moderation roles with scoped permissions
Audit log · acme
14:32:07 BAN alice banned user spam-bot-47 — forge + IRC
14:28:41 WARN Anti-spam flagged 3 accounts — similar sign-up pattern
13:55:12 MOD bob locked issue acme/web-app#89 — off-topic
13:22:03 ROLE alice granted carol moderator on acme
12:47:58 SOCK Sockpuppet cluster detected — 2 accounts linked, queued for review

System architecture.

Gumtree consists of one application binary and three integrated services, backed by FoundationDB for transactional metadata, PostgreSQL for relational projections, and Garage for object storage. There are no runtime dependencies on cloud providers.

Clients
Web UIStatic SPA · public API only
gt CLIForge management
Git CLIgit+ssh · git+https · gumtree://
IRC ClientAny IRCv3 client
Application
GumtreeHeadless REST API · Git transport · gumtree:// · Search · L10n
CicadaCI/CD Coordinator
EucalyptIRCdIRCv3 Server
Data
FoundationDBSource of truth · IRC history · CI state
PostgreSQLProjections · Git history · Commit graphs
Garage S3Git packs · LFS (delta) · Artifacts

Every script. Every writing system.

Gumtree was built with the assumption that your users might not be working in English, or Latin script, or a language that Unicode has finished standardising. The built-in Fluent editor, BCP-47 locale tags, ICU4X runtime, and Tantivy's multilingual tokenization mean the forge works properly in Northern Sámi, Inuktitut syllabics, Chinese, Arabic, and everything in between.

Anarâškielâ smnInari Saami (shifting)
Spoken in: Finland, Norway
Aragonés anAragonese (shifting)
Spoken in: Spain, France
Armani rupAromanian (shifting)
Spoken in: Albania, Bosnia & Herzegovina, Bulgaria, Greece, North Macedonia, Romania, Serbia
Arpitan frpArpitan (shifting)
Spoken in: Switzerland, France, Italy
Asturianu astAsturian-Leonese-Cantabrian (not endangered)
Spoken in: Spain, Portugal
Bidumsámegiella sjePite Saami (nearly extinct)
Spoken in: Norway, Sweden
Boarisch barBavarian (threatened)
Spoken in: Austria, Switzerland, Czechia, Germany, Italy, Romania, Slovenia
Bosanski bsSerbian-Croatian-Bosnian (not endangered)
Spoken in: Serbia
brezhoneg brBreton (not endangered)
Spoken in: France
català caCatalan (threatened)
Spoken in: Andorra, Spain, France, Italy
Corsu coCorsican (not endangered)
Spoken in: France, Italy
Dansk daDanish (not endangered)
Spoken in: Germany, Denmark, Faroe Islands, Greenland
Davvisámegiella smeNorth Saami (shifting)
Spoken in: Finland, Norway, Russia, Sweden
Deutsch deGerman (not endangered)
Spoken in: Austria, Belgium, Switzerland, Czechia, Germany, Denmark, France, Hungary, Italy, Liechtenstein, Luxembourg, Netherlands, Poland, Romania, Slovenia, Slovakia
Dolnoserbšćina dsbLower Sorbian (shifting)
Spoken in: Germany
Eesti etEstonian (not endangered)
Spoken in: Estonia, Latvia, Russia
English enEnglish (not endangered)
Spoken in: Australia, Bermuda, Brazil, Belize, Canada, Cocos Islands, Cook Islands, Cuba, Christmas Island, Dominican Republic, Falkland Islands, United Kingdom, Guernsey, Gibraltar, Guadeloupe, South Georgia, Guatemala, Guyana, Honduras, Ireland, Isle of Man, British Indian Ocean Territory, Jersey, Cayman Islands, Liberia, Mexico, Norfolk Island, Pitcairn Islands, Saint Helena, Suriname, US Minor Outlying Islands, United States, Venezuela, South Africa
Español esSpanish (not endangered)
Spoken in: Andorra, Argentina, Bolivia, Brazil, Belize, Chile, Colombia, Costa Rica, Cuba, Dominican Republic, Ecuador, Spain, France, Gibraltar, Guatemala, Guyana, Honduras, Haiti, Morocco, Mexico, Nicaragua, Panama, Peru, Puerto Rico, Portugal, Paraguay, El Salvador, United States, Uruguay, Venezuela
Euskara euBasque (threatened)
Spoken in: Spain, France
Français frFrench (not endangered)
Spoken in: Andorra, Belgium, Canada, Switzerland, France, French Guiana, Italy, Luxembourg, Monaco, Saint Pierre & Miquelon, French Southern Territories, United States
Frysk fyWestern Frisian (not endangered)
Spoken in: Netherlands
Furlan furFriulian (threatened)
Spoken in: Austria, Italy
Føroyskt foFaroese (threatened)
Spoken in: Denmark, Faroe Islands
Gaeilge gaIrish (shifting)
Spoken in: United Kingdom, Ireland
Galego glGalician (not endangered)
Spoken in: Spain, Portugal
Hornjoserbšćina hsbUpper Sorbian (threatened)
Spoken in: Germany
Hrvatski hrSerbian-Croatian-Bosnian (not endangered)
Spoken in: Serbia
Italiano itItalian (not endangered)
Spoken in: Austria, Switzerland, France, Croatia, Italy, Slovenia, San Marino, Vatican City
Julevsámegiella smjLule Saami (shifting)
Spoken in: Norway, Sweden
Kalaallisut klKalaallisut (threatened)
Spoken in: Denmark, Greenland
Karjala krlKarelian (shifting)
Spoken in: Finland, Russia
Kashubian csbKashubian (threatened)
Spoken in: Poland
Kven Finnish fkvKven Finnish (moribund)
Spoken in: Finland, Norway, Russia
Ladin lldLadin (shifting)
Spoken in: Italy
Ladino ladLadino (not endangered)
Spoken in: Albania, Bosnia & Herzegovina, Bulgaria, Algeria, Greece, Croatia, Israel, Morocco, North Macedonia, Puerto Rico, Romania, Serbia, Turkey, United States
Latgališu ltgLatvian (threatened)
Spoken in: Belarus, Estonia, Lithuania, Latvia, Russia
Latviešu lvLatvian (threatened)
Spoken in: Belarus, Estonia, Lithuania, Latvia, Russia
Lietuvių ltLithuanian (not endangered)
Spoken in: Belarus, Lithuania, Latvia, Poland, Russia
Ligurian lijLigurian (shifting)
Spoken in: France, Italy, Monaco
Limbourgeois, Limburgs liLimburgan (threatened)
Spoken in: Belgium, Germany, Netherlands
Livvin kieli oloLivvi (shifting)
Spoken in: Finland, Russia
Livõ kel livLiv (extinct)
Spoken in: Latvia
Lombard lmoLombard (not endangered)
Spoken in: Switzerland, Italy
Lëtzebuergesch lbMoselle Franconian (threatened)
Spoken in: Belgium, Germany, France, Luxembourg
Magyar huHungarian (not endangered)
Spoken in: Austria, Croatia, Hungary, Romania, Serbia, Slovenia, Slovakia, Ukraine
Malti mtMaltese (not endangered)
Spoken in: Malta
Meänkieli fitMeänkieli (not endangered)
Spoken in: Finland, Sweden
Mirandés mwlMirandese (threatened)
Spoken in: Spain, Portugal
Neapolitan napContinental Southern Italian (threatened)
Spoken in: Italy
Neddersass'sch ndsEastern Low German (threatened)
Spoken in: Germany
Nederlands nlDutch (not endangered)
Spoken in: Aruba, Belgium, Caribbean Netherlands, Brazil, Curaçao, Germany, French Guiana, Guyana, Netherlands, Suriname, Sint Maarten
Norsk bokmål nbNorwegian (not endangered)
Spoken in: Finland, Norway, Russia, Sweden, Svalbard
Northern Frisian frrNorthern Frisian (shifting)
Spoken in: Germany, Denmark
Nuõrttsääʹmǩiõll smsSkolt Saami (nearly extinct)
Spoken in: Finland, Norway, Russia
Nynorsk nnNorwegian (not endangered)
Spoken in: Finland, Norway, Russia, Sweden, Svalbard
Occitan ocOccitan (not endangered)
Spoken in: Andorra, Spain, France, Italy, Monaco
Picard pcdPicard (threatened)
Spoken in: Belgium, France
Piemontèis pmsPiemontese (threatened)
Spoken in: Australia, Italy, United States
Polski plPolish (shifting)
Spoken in: Belarus, Czechia, Germany, Lithuania, Poland, Russia, Slovakia, Ukraine
Português ptPortuguese (not endangered)
Spoken in: Andorra, Argentina, Bolivia, Brazil, Colombia, Spain, France, French Guiana, Guyana, Peru, Portugal, Paraguay, Suriname, Uruguay, Venezuela
Romani rmyVlax Romani (not endangered)
Spoken in: Albania, Austria, Bosnia & Herzegovina, Bulgaria, Belarus, Switzerland, Czechia, Germany, Spain, Finland, France, Greece, Croatia, Hungary, Italy, Lithuania, Latvia, Moldova, Montenegro, North Macedonia, Netherlands, Norway, Poland, Portugal, Romania, Serbia, Russia, Sweden, Slovenia, Slovakia, Turkey, Ukraine
Romany romVlax Romani (not endangered)
Spoken in: Albania, Austria, Bosnia & Herzegovina, Bulgaria, Belarus, Switzerland, Czechia, Germany, Spain, Finland, France, Greece, Croatia, Hungary, Italy, Lithuania, Latvia, Moldova, Montenegro, North Macedonia, Netherlands, Norway, Poland, Portugal, Romania, Serbia, Russia, Sweden, Slovenia, Slovakia, Turkey, Ukraine
Română roRomanian (not endangered)
Spoken in: Bulgaria, Hungary, Moldova, Romania, Serbia, Ukraine
Rumantsch rmRomansh (threatened)
Spoken in: Austria, Switzerland, Italy
Saa´mekiill sjtTer Saami (moribund)
Spoken in: Russia
Sardinian scCampidanese Sardinian (threatened)
Spoken in: Italy
Saterland Frisian stqEms-Weser Frisian (shifting)
Spoken in: Germany
Schwiizertüütsch gswCentral Alemannic (threatened)
Spoken in: Austria, Switzerland, Germany, France, Italy, Liechtenstein
Shqip sqGheg Albanian (not endangered)
Spoken in: Albania, Bulgaria, Montenegro, North Macedonia, Romania, Serbia
Sicilian scnSicilian (threatened)
Spoken in: Italy
Silesian szlSilesian (threatened)
Spoken in: Poland
Slovenčina skSlovak (threatened)
Spoken in: Austria, Czechia, Hungary, Poland, Serbia, Slovakia, Ukraine
Slovenščina slSlovenian (not endangered)
Spoken in: Austria, Croatia, Hungary, Italy, Slovenia
Suomi fiFinnish (not endangered)
Spoken in: Estonia, Finland, Norway, Russia, Sweden
Svenska svSwedish (not endangered)
Spoken in: Åland Islands, Denmark, Finland, Norway, Sweden
Tiếng Việt viVietnamese (threatened)
Spoken in: China, Laos, Vietnam
Türkçe trTurkish (not endangered)
Spoken in: Albania, Armenia, Azerbaijan, Bulgaria, Cyprus, Georgia, Greece, Iraq, Iran, North Macedonia, Syria, Turkey
Ubmejensámien giella sjuUme Saami (nearly extinct)
Spoken in: Sweden
Veneto vecVenetian (threatened)
Spoken in: Brazil, Croatia, Italy, Mexico, Slovenia
Vepsä vepVeps (moribund)
Spoken in: Russia
Võro kiil vroSouth Estonian (shifting)
Spoken in: Estonia
Walloon waWalloon (shifting)
Spoken in: Belgium, France, Luxembourg
Wu Chinese wuuWu Chinese (not endangered)
Spoken in: China
Åarjelsaemien gïele smaSouth Saami (shifting)
Spoken in: Norway, Sweden
Íslenska isIcelandic (not endangered)
Spoken in: Iceland
Čeština csCzech (not endangered)
Spoken in: Austria, Czechia, Poland, Slovakia
Ελληνικά elModern Greek (not endangered)
Spoken in: Albania, Bulgaria, Cyprus, Egypt, Greece, Italy, North Macedonia, Romania, Turkey, Ukraine
беларуская beBelarusian (threatened)
Spoken in: Belarus, Lithuania, Latvia, Poland, Russia, Ukraine
български bgBulgarian (not endangered)
Spoken in: Bulgaria, Greece, Moldova, North Macedonia, Romania, Serbia, Turkey, Ukraine
Кӣллт са̄мь кӣлл sjdKildin Saami (moribund)
Spoken in: Russia
Македонски mkMacedonian (not endangered)
Spoken in: Albania, Bulgaria, Greece, North Macedonia, Serbia
Русиньскый язык‎ rueRusyn (threatened)
Spoken in: Belarus, Hungary, Poland, Romania, Slovakia, Ukraine
Русский ruRussian (not endangered)
Spoken in: Belarus, China, Estonia, Finland, Georgia, Kyrgyzstan, North Korea, Kazakhstan, Lithuania, Latvia, Moldova, Mongolia, Norway, Poland, Romania, Russia, Svalbard, Turkmenistan, Ukraine, Uzbekistan
Српски srSerbian-Croatian-Bosnian (not endangered)
Spoken in: Serbia
українська ukUkrainian (threatened)
Spoken in: Belarus, Hungary, Moldova, Poland, Romania, Russia, Slovakia, Ukraine
ייִדיש yiEastern Yiddish (not endangered)
Spoken in: Argentina, Australia, Belgium, Belarus, Canada, Costa Rica, Estonia, Hungary, Israel, Lithuania, Latvia, Moldova, Panama, Poland, Puerto Rico, Romania, Russia, Sweden, Ukraine, United States, Uruguay, South Africa
اردو urUrdu (not endangered)
Spoken in: Afghanistan, Bangladesh, India, Pakistan
العربية arStandard Arabic (not endangered)
Spoken in: UAE, Bahrain, Djibouti, Algeria, Egypt, Eritrea, Israel, Iraq, Jordan, Comoros, Kuwait, Lebanon, Libya, Morocco, Oman, Palestine, Qatar, Saudi Arabia, Sudan, Somalia, Syria, Chad, Tunisia, Tanzania, Yemen
فارسی faWestern Farsi (not endangered)
Spoken in: Afghanistan, Azerbaijan, Iraq, Iran, Turkmenistan, Turkey
مصري‎ arzEgyptian Arabic (not endangered)
Spoken in: Egypt, Israel, Libya
मराठी mrMarathi (not endangered)
Spoken in: India
हिन्दी hiHindi (not endangered)
Spoken in: Bangladesh, Bhutan, India, Nepal
বাংলা bnBengali (not endangered)
Spoken in: Bangladesh, India, Nepal
தமிழ் taTamil (not endangered)
Spoken in: India, Sri Lanka
తెలుగు teTelugu (not endangered)
Spoken in: India
中文 zhMandarin Chinese (not endangered)
Spoken in: China, North Korea, Laos, Myanmar, Mongolia, Russia, Taiwan, Vietnam
日本語 jaJapanese (not endangered)
Spoken in: Japan
粵語 yueYue Chinese (not endangered)
Spoken in: China, Vietnam
한국어 koKorean (not endangered)
Spoken in: China, North Korea, South Korea, Russia
Your language here
not endangered threatened shifting moribund nearly extinct extinct

Endangerment status per the Glottolog 5.2 AES scale, June 2025.

Coming soon.

Gumtree is under active development. Follow for updates.

AGPL-3.0 · Built by Necessary Innovations AB · Göteborg, Sweden