Skip to content

ti-broish/api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 Cannot retrieve latest commit at this time.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ти Броиш лого

Ти Броиш REST API

Ти Броиш е платформа за паралелно преброяване и проследяване на парламентарните избори в България.

Това е REST API приложението, което приема и обработва данните от мобилните приложения.

Първоначална инсталация

Пуснете Docker, включете Docker Compose 2.0 и изпълнете следните команди:

# Clone the project
git clone git@github.com:ti-broish/api.git
cd ti-broish-api
# Copy the environment configuration template
cp .env.schema .env
# Пуснете всички нужни контейнери - API, Postgres база данни и Redis cache
docker compose up
# Create the schema and seed the data
docker compose exec ti-broish-api npm run migration:run
docker compose exec ti-broish-api npm run seed:run

Конфигурация

.env.schema файлът съдържа стойности по подразбиране и всички възможни настройки на средата, които приложението приема. Коригирайте всичко, което е нужно да промените в .env.

Свалете Service account JSON файл от Firebase и го запазете като firebase.json в проекта.

Генериране на Firebase JWT Token

Ако искате лесно да генерирате JWT токен за автентикация с Firebase, създайте потребител във Firebase Console и попълнете в .env:

  • FIREBASE_API_KEY
  • FIREBASE_UID

След това можете лесно да генерирате ключ със следната команда:

npm run firebase:token

Работа с ReCAPTCHA

Регистрирайте приложението си за ReCAPTCHA като следвате стъпките описани тук.

При локално стартирано приложение трябва да закоментирате следния ред skipIf: process.env.NODE_ENV !== 'production', в app.module.ts.

Стартиране

npm run start

API Документация

Ти Броиш REST API- използва Swagger OpenAPI стандарта. След като стартирате приложението можете да намерите API документация на:

Разработване

# watch mode
npm run start:dev

Тестове

# unit tests
npm run test

# e2e tests
npm run test:e2e

# test coverage
npm run test:cov

Контакти

Лиценз

Кодът на Ти Броиш е лицензиран под MIT лиценз.