Skip to content

Latest commit

 

History

History
51 lines (46 loc) · 4.45 KB

File metadata and controls

51 lines (46 loc) · 4.45 KB

Zasady rozwijania projektów: Backend

Jeśli nie zgadzasz się z czymś w tym dokumencie przeczytaj sekcję "Dobór i użycie technologii" w "Zasadach Rozwijania Projektów" żeby dowiedzieć się jak go zmienić.

Ogólne zasady

  1. Backend tworzymy korzystając z najnowszej wersji "Long Term Support" frameworku Django i z Pythona 3
  2. Nowe projekty powinny zostać wygenerowane poprzez generator projektów
  3. Projekty powinny stosować się do Coding Style projektu Django. Oznacza to jednocześnie stosowanie się do zasad PEP-8 (wyjątkiem jest zgoda na linie do 119 znaków oraz brak wymogu oznaczania napisów do tłumaczenia)
  4. Projekty powinny mieć skonfigurowane Continuus Integration (zazwyczaj CI od Heroku) skonfigurowane z linterem i odpalane automatycznie dla każdego pull requesta
  5. Jeśli projekt udostępnia web API, powinien również zawierać automatycznie generowaną do niego dokumentację.

Standardowe komponenty

Lista standardowych komponentów których używamy w projektach przy budowaniu backendu

Typ komponentu Wybrane oprogramowanie Uwagi
Manager paczek pythonowych pipenv
Framework backend Django wygenerowany z generatora projektów
Baza SQL PostgreSQL
Linter Python flake8 max-line-length = 119
Zaawansowany silnik wyszukiwania Elastcsearch
Klient HTTP requests
CMS dla stron treściowych Wagtail
Prosty silnik wyszukiwania django.contrib.postgres.search projekt wbudowane w Django
Context processor dla ustawień django-settings-context-processor
Tłumaczenia treści django-modeltranslation
Edytor WYSIWYG django-ckeditor
Generowanie REST API Django Rest Framework autentykacja oparta na tokenie
Szeregowanie wpisów w adminie django-admin-sortable2
Zarządzanie ustawieniami w adminie django-constance
Skład plików media w AWS S3 (i innych CDNach) django-storages
Przetwarzanie obrazów django-imagekit
Import i eksport danych django-import-export
Zaawansowane wizualnie emaile django-mjml