https://shaggy-crm.web.app/ - Shaggy CRM
https://us-central1-ineedshaggy.cloudfunctions.net/api - GraphQL сервер для Shaggy CRM
https://api.nubble.ru/ - REST API сервер тестовых данных
https://swagger.nubble.ru/ - SWAGGER для REST API
https://мойшерстяной.рф - Сайт для размещения анкет животных
Ссылка для подключения к БД (MongoDB):
mongodb://shaggy:fG4bArMN5AyT@35.228.52.242:27017/development
React ANT + ApoloJS = FirebaseApp
3 уровня доступа:
Департамент: owner@nubble.ru, pass: ownerowner
Префектура: manager@nubble.ru, pass: managermanager
Эксплуатирующая организация: pet@nubble.ru, pass: petpet
Теперь мы должны познакомиться и донести до Вас нашу этику написания кода.
Мы пишем на TypeScript / NestJS / React / GraphQL / MongoDB / NEO4j
Мы стараемся идти в ногу со временем и придерживаемся парадигмы
Domain Driven Design
Ещё мы знаем, что бизнес логику с фреймворком объединять нелья!
При добавлении новой фитчи, код должен быть обособлен и не затрагивать уже написанный.
Сейчас сервер обрабатывает все запросы, но мы привыкли писать чистый код, поэтому расскажем как будет выглядеть архитектура.
Решение будет представлять собой связку:
NestJS сервер
Стандартные облачный балансировщик
Redis хранилище
Кластер MongoDB
Оркестрация контейнеров с помощью Kubernetes
Разработка готового решения, по предварительной оценки должна занять 3 месяца, мы выкладываем устоявшиеся парадигмы и фрагменты кода для того, чтобы показать силь и архитектуру, которой мы придерживаемся.
Пример реализации DDD шаблона
application
- Ядро системы controllers, DIinfrastructure
- Вызовы API, подключения к базе данныхdomain
- Непосредственно бизнес логика
Код, который ярко показывает необходимость внедрения DI систем
У нас большой опыт внедрения разных стратеги авторизации
Архитектура, которая выражает устройство модульной системы