Рабочий стол > External Testing Results > Home > Просмотр
Home Войти | Зарегистрироваться   Просмотр версии для печати текущей страницы.

Добавлен Alexey Kaminsky, отредактирован Владислав Свиридков Oct 05, 2023 показать комментарий
Метки: 
(нет)

Вы просматриваете старую версию (v. 2) этой страницы.

External Testing Results (ETR) - приложение по отслеживанию посылок учеников на Codeforces API. В перспективе не только с Codeforces.

Документация для работы с API Codeforces.

Исходники доступны по ссылке.

 Стек технологий

Приложение написано на Flask. Для валидирования данных используется Pydantic. В качестве базы данных используется MySQL. Для работы с БД используется библиотека SQLAlchemy. Для работы с API Codeforces используется библиотека requests.

 Как запустить?

Перед запуском необходимо проинициализировать файл .env. Пример находится в README.md.

Для запуска достаточно прописать:

 flask --app etr run

Более актуальная информация для запуска проекта может находится в README.md.

Также, можно запустить в Docker образе. Все необходимы команды написаны в README.md.

 Структура проекта

 Общая информация

В проекте есть несколько модулей:

  • models -  представляет собой схему в базе данных. Каждый модуль отображает таблицу (в некоторых случаях таблицы) из базы данных;
  • schemas - отвечает за валидирование данных на входе и на выходе;
  • templates - содержит в себе шаблоны frontend части;
  • views - отвечает за обработку пользовательских запросов.

How It's Made

 На момент последней версии (v0.1.1) проект обрабатывает следующие запросы:

  • GET /etr/user - возвращает html с таблицей всех пользователей в базе данных
  • GET /etr/user/new - возвращает html форму для добавления нового пользователя
  • POST /etr/user/new - принимает на вход handle с Codeforces и добавляет его в базу данных
  • GET /etr/contest - возвращает html с таблицей всех отслеживаемых контестов
  • GET /etr/contest/new - возвращает html форму для добавления нового контеста
  • POST /etr/contest/new - ожидает id контеста и добавляет его в базу данных
  • GET /etr/status - возвращает таблицу, содержащую все отправки отслеживаемых учеников (BBIWY) на отслеживаемые контесты

TODO проекта

Здесь собраны всевозможные хотелки, которые реализуем, реализуются или будут реализовываться.

Powered by Atlassian Confluence, the Enterprise Wiki. (Version: http://www.atlassian.com/software/confluence Build:#2.6.1 916) - Ошибка/новая особенность - Свяжитесь с Администраторами