Backend Layout and Approach

Backend Layout and Approach#

OEP-49: Django App Patterns defines the common conventions used for Django apps written for this project.

New apps, services, and libraries should be created using edx-cookiecutters, which will fill in a lot of the boilerplate pieces for you (e.g. license, translations, testing dependencies).

There are other OEPs that define accepted best practices (see Best Practices), including things like OEP-38: Data Modeling Best Practices and OEP-22: Caching in Django. Some of these best practices are encoded into the edx-django-utils package.

Many repositories and individual apps will contain Architecture Decision Records (ADRs) ADRs explaining the reasoning behind various decisions that were made there. It’s a good idea to at least skim over the relevant ADRs in a repo before starting major work there.

Maintenance chart

Review Date

Working Group Reviewer

Release

Test situation