Skip to content

ckrybus/real-world-django

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Real World Django

Real World Django applications and their open source codebases for developers to learn from

This project brings 30+ (and growing) active, open source Django applications together in one repository, making it easier for developers to download the collected codebases and learn from Django apps written by experienced developers. Reading open source code can be an invaluable learning aid. You’ll find the source code in the apps/ subdirectory.

Real World Django Applications

  1. sentry - (Repo, Home) Developer-first error tracking and performance monitoring(apm, crash-reporting, crash-reports, csp-report, devops, django, error-logging, error-monitoring, hacktoberfest, monitor, monitoring, python, sentry, tag-production)
  2. plane - (Repo, Home) 🔥 🔥 🔥 Open Source JIRA, Linear and Asana Alternative. Plane helps you track your issues, epics, and product roadmaps in the simplest way possible.(django, docker, issue-tracker, jira, jira-alternative, kanban, linear, nextjs, postgresql, product-management, project-management, python, react, redis, rest-api, typescript)
  3. saleor - (Repo, Home) Saleor Core: the high performance, composable, headless commerce API.(cart, checkout, commerce, composable, e-commerce, ecommerce, graphql, headless, headless-commerce, multichannel, nextjs, oms, payments, pim, python, react, shop, shopping-cart, store)
  4. zulip - (Repo, Home) Zulip server and web application. Open-source team chat that helps teams stay productive and focused.(apache, chat, collaboration, electron, foss, free, javascript, python, python3, react-native, slack, zulip)
  5. ArchiveBox - (Repo, Home) 🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...(archivebox, backups, bookmark-archiver, browser-bookmarks, chromium, digipres, firefox, headless-browser, internet-archiving, pinboard, pocket, python, rss, self-hosted, singlefile, warc, wayback-machine, web-archiving, wget, youtube-dl)
  6. wagtail - (Repo, Home) A Django content management system focused on flexibility and user experience(cms, django, hacktoberfest, python, wagtail)
  7. posthog - (Repo, Home) 🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.(ab-testing, analytics, experiments, feature-flags, javascript, python, react, session-replay, typescript)
  8. paperless-ngx - (Repo, Home) A community-supported supercharged version of paperless: scan, index and archive all your physical documents(angular, archiving, django, dms, document-management, document-management-system, machine-learning, ocr, optical-character-recognition, pdf)
  9. netbox - (Repo, Home) The premier source of truth powering network automation. Open source under Apache 2. Public demo: https://demo.netbox.dev`(cabling, dcim, django, infrastructure-management, ipam, netbox, network, network-automation, python, sot, sysadmin)`
  10. cvat - (Repo, Home) Annotate better with CVAT, the industry-leading data engine for machine learning. Used and trusted by teams at any scale, for data of any scale.(annotation, annotation-tool, annotations, boundingbox, computer-vision, computer-vision-annotation, dataset, deep-learning, image-annotation, image-classification, image-labeling, image-labelling-tool, imagenet, labeling, labeling-tool, object-detection, pytorch, semantic-segmentation, tensorflow, video-annotation)
  11. django-cms - (Repo, Home) The easy-to-use and developer-friendly enterprise CMS powered by Django (cms, django, django-cms, hacktoberfest, python, web)
  12. doccano - (Repo) Open source annotation tool for machine learning practitioners.(annotation-tool, data-labeling, dataset, datasets, machine-learning, natural-language-processing, nuxt, nuxtjs, python, text-annotation, vue, vuejs)
  13. readthedocs.org - (Repo, Home) The source code that powers readthedocs.org(docs, mkdocs, python, sphinx, sphinx-doc)
  14. healthchecks - (Repo, Home) Open-source cron job and background task monitoring service, written in Python & Django(cron, cron-jobs, devops, django, monitoring, ops)
  15. edx-platform - (Repo, Home) The Open edX LMS & Studio, powering education sites around the world!(backend-service, hacktoberfest, pr-sandboxes-enabled)
  16. NewsBlur - (Repo, Home) NewsBlur is a personal news reader that brings people together to talk about the world. A new sound of an old instrument.(android, elasticsearch, feed-reader, ios, mongodb, postgresql, python, redis, rss, rss-reader)
  17. librephotos - (Repo) A self-hosted open source photo management service. This is the repository of the backend.(django, exif, hacktoberfest, machine-learning, photo, python, selfhosted)
  18. django-oscar - (Repo, Home) Domain-driven e-commerce for Django(django, django-oscar, ecommerce, oscar)
  19. graphite-web - (Repo, Home) A highly scalable real-time graphing system(django, graphite, graphite-components, graphite-web, metrics, python, time-series)
  20. flagsmith - (Repo, Home) Open Source Feature Flagging and Remote Config Service. Host on-prem or use our hosted version at https://flagsmith.com/`(cd, ci, continuous-integration, docker, feature-flag, feature-flaggers, feature-flagging, feature-flags, feature-management, feature-toggles, flagsmith, hacktoberfest, multivariate-testing, python, react, remote-config, remote-control, self-hosted)`
  21. oncall - (Repo) Developer-friendly incident response with brilliant Slack integration(alert, alerting, grafana, oncall, oncall-schedule, slack, telegram)
  22. modoboa - (Repo, Home) Mail hosting made simple(django, dovecot, email, hosting, javascript, jquery, modoboa, postfix, python, python3, vuejs)
  23. bookwyrm - (Repo, Home) Social reading and reviewing, decentralized with ActivityPub(activitypub, books, bookwyrm, decentralization, federation, openlibrary, reading, social-media)
  24. djangoproject.com - (Repo, Home) Source code to djangoproject.com
  25. Django-CRM - (Repo, Home) Open Source CRM based on Django(crm, crm-online, crm-platform, crm-system, django, django-crm, open-source, python3)
  26. pretix - (Repo, Home) Ticket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.(conferences, django, events, html, javascript, pretix, python, shop, tickets, web)
  27. askbot-devel - (Repo) Askbot is a Django/Python Q&A forum. Contributors README: https://github.com/ASKBOT/askbot-devel#how-to-contribute. Commercial hosting of Askbot and support are available at https://askbot.com`(django, forums, python, questions-and-answers)`
  28. reviewboard - (Repo, Home) An extensible and friendly code review tool for projects and companies of all sizes.(code-review, codereview, developer-tools, javascript, python)
  29. pythondotorg - (Repo, Home) Source code for python.org
  30. kitsune - (Repo, Home) Platform for Mozilla Support
  31. bedrock - (Repo, Home) Making mozilla.org awesome, one pebble at a time(css, django, firefox, html, javascript, mozilla, python)
  32. djangopackages - (Repo, Home) Django Packages is a directory of reusable apps, sites, tools, and more for your Django projects.(django, packaging, python)
  33. taiga-back - (Repo) None
  34. fragdenstaat_de - (Repo, Home) Froide Theme for fragdenstaat.de(fragdenstaat)

How to install on your computer

Make sure you have enough free disk space available. Currently ~12GB are needed.

# Clone this git repo:
git clone git@github.com:ckrybus/real-world-django.git

cd real-world-django/

# The Django apps are linked to as git submodules.
# This will take some time...(see comment below for possible speedup)
git submodule update --init

# OR If you've got git 2.9+ installed try to run updates in parallel:
# git submodule update --init --jobs 4

Other Real World Codebase Collections

Know any others? Please open a PR and add the link here

Information for Contributors

Is your app the right fit?

  • The vast majority of the codebase should be written in Python and use Django as framework.
  • Some projects are monorepos and use Django only as backend/API, those are allowed too.
  • Only standalone django projects are accepted, no single "django apps" or python libraries. If in order to run a project you first need to add it to INSTALLED_APPS then it does not meet the criteria.
  • The app should be somewhat popular and active, in order to limit the apps in this repo to a manageable amount. There is some leeway in what constitutes a popular app. A possible indicator can be GitHub stars compared to similar apps.

Don't hesitate to submit a pull request if you meet the criteria!

How to add a Real World Django app

Given a GitHub repo for a Django app githubuser/foo:

# Inside the project root:
git submodule add -b default_branchname git@github.com:githubuser/foo.git apps/foo

Updating the Django apps submodules to latest

The Django apps in apps/ are git submodules. Git submodules are locked to a revision and don't stay in sync with the latest revision.

To update the revisions, run:

# This will take some time:
git submodule foreach git pull

Contributors

  • Contributions are welcome, fork the GitHub repo, make your changes, then submit your pull request! Reach out if you'd like some help.