-
Кончно же Golang (интерфейсы, контексты, горутины ...)
-
Сервер на gRPC с HTTP Gateway
-
Зачем-то сделал ещё и RESTful API на фреймворке Gin
-
Авторизация по 2м токенам (paseto или jwt) и верификация почты
-
Использовал Redis и как брокер сообщений, и как кэш
-
Развернул приложение в Docker (написал Dockerfile и docker-compose)
-
Mock-тесты и обычные unit-тесты, с общим покрытием ~40%
-
Поработал с CI/CD (GitHub Actions)
-
Лучше освоил linux
-
Имеется репликация данных в отдельный контейнер
-
SQLC для генерации кода на Golang из SQL запроса
-
Где необходимо, сделал транзакции
-
Бд реализовал на PostgreSQL
Мелочи:
-
Сделал автогенерацию документации (в ./doc/)
-
>6000 строк отлаженного, работающего, лично написанного кода (+5500 сгенерированного)
-
Понял что Makefile — очень удобная штука
-
Migrate для, собственно, миграций
-
Настроил красивый логгер
Можно запустить через Docker Compose:
docker compose up
Или можно выполнить команду на ubuntu:
make all
Убрать всё что было создано:
make clean