{"repo":"tough-dev-school/education-backend","free":true,"listed":false,"github":"https://github.com/tough-dev-school/education-backend","clone":"git clone https://github.com/tough-dev-school/education-backend.git","description":"Django-based backend for our learning management system","language":"Python","stars":487,"topics":["django","python","django-rest-framework","django-application","real-world"],"license":"MIT","category":"deployment-docker-iac","readme_excerpt":"Backend for tough-dev.school Django-based production project, integrated with Tinkoff, Dashamail, Postmark, S3 and telegram. Frontend is built on vue.js in the separate repo. Configuration Configuration is stored in src/core/.env , for examples see src/core/.env.ci Installing on a local machine This project requires python 3.14. Deps are managed by uv. Install requirements: Configure postgres and redis. It's convenient to use docker and docker-compose: If you don't have access to de-anonymized db image use postgres:13.6-alpine in docker-compose.yml instead: Run the server: Testing: Backend Code requirements Style Obey django's style guide. Configure your IDE to use ruff for checking your python code. For running linters manualy, do make lint Prefer English over your native language in comments and commit messages. Commit messages should contain the unique id of issue they are linked to (refs #100500) Every model and a model method should have a docstring. Code organisation KISS and DRY. Obey django best practices If you want to implement some business logic — make a service for that. Service examples: UserCreator, OrderCreator No logic is allowed within the views or templates . Only services and models. Use PEP-484 type hints when possible. Prefer Manager methods over static methods. Do not use signals for business logic. Signals are good only for notification purposes. No l10n is allowed in python code, use django translation.","default_branch":null,"files":null,"tree":[],"storefront":"/r/tough-dev-school","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tough-dev-school/education-backend/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}