Skip to content

Latest commit

 

History

History
193 lines (157 loc) · 9.08 KB

README.md

File metadata and controls

193 lines (157 loc) · 9.08 KB

Build Coverage Uptime Lines Commit


Logo

CyberDAS API

Программный интерфейс CyberDAS'a, проекта цифровизации общежития
Спецификация »

Сообщить об ошибке · Предложить улучшение


Содержание
  1. О проекте
  2. Приступаем к работе
  3. Дорожная карта
  4. Содействие
  5. Лицензия
  6. Контакты
  7. Благодарности




О проекте

Вы когда-нибудь стояли в очереди на заселение по несколько часов? Жили пару дней без света в коридоре, потому что не хотелось подниматься к коменданту? Тогда вам знакомо, как неприветлива бывает бюрократия.

Этот проект призван упростить жизнь студентов в общежитии, избавив от их бюрократических рутин и дав им новые, цифровые, возможности.

Мы хотим дать студентам возможность:

  • Оставлять заявки на вызов технических служб не выходя из комнаты
  • Дистанционно записываться на заселение и не тратить свою жизнь в очереди
  • Составлять и отправлять заявления в администрацию без особых усилий
  • Делиться ненужными вещами без пабликов-барахолок в ВК
  • И многое другое...

Сейчас этот проект создается на базе общежития ДАС МГУ, но мы планируем сделать API достаточно абстрактным для того, чтобы его можно было развертывать и использовать и в других общежитиях без каких либо манипуляций.

Если ты тоже хочешь помочь и умеешь в дизайн или код, то пиши нам!

Приступаем к работе

Следуйте этим шагам, для того чтобы локально развернуть версию API и поэкспериментировать с ней.

Необходимое ПО

Команды будут отличаться в зависимости от вашего пакетного менеджера. Инструкции написаны для APT (его используют Debian, Ubuntu).

  • PostgreSQL и pgAdmin4 (опционально)
    apt-get install postgresql-12
    apt-get install pgadmin4
  • Python 3 и pip
    apt-get install python3
    apt-get install python3-pip
  • setuptools
    pip3 install --upgrade setuptools wheel

Установка

  1. Скопируйте репозиторий
    git clone https://github.com/CyberDAS-Dev/API.git
  2. Запустите pgAdmin и создайте новый сервер
  3. Создайте новую базу данных
  4. Укажите URL вашей базы данных в поле sqlalchemy.url в секции alembic файла cfg.ini, в таком формате:
    postgresql+psycopg2://[Postgres login]:[Postgres password]@[Postgres server url]/[DB name]
  5. Все последующие действия нужно производить, находясь в одной папке с файлом README.md
    cd API
  6. Создайте виртуальное окружение Питона и активируйте его
    python3 -m venv .venv
    source .venv/bin/activate
  7. Установите проект со всеми зависимостями
    pip3 install -e ".[testing]"
  8. Обновите базу данных до последней ревизии и инициализируйте её
    alembic -c cfg.ini upgrade head
    initialize_db
  9. Убедитесь в том, что все тесты проходят без предупреждений
    pytest -W error
    
  10. Запустите Gunicorn-сервер; API будет доступно по адресу http://127.0.0.1:8000
    gunicorn cyberdas.app

Дорожная карта

Смотрите open issues для информации о планируемых улучшениях и известных проблемах.

Содействие

Совместная разработка это то, что делает опен-сорс сообщество таким удивительным местом для обучения и творчества. Мы ценим любой ваш вклад в проект.

  1. Сделайте копию (Fork) проекта
  2. Создайте свою ветку для работы (git checkout -b feature/AmazingFeature)
  3. Сохраните изменения (git commit -m 'Add some AmazingFeature')
  4. Отправьте их в удаленную ветку (git push origin feature/AmazingFeature)
  5. Создайте Pull Request

Лицензия

Распространяется под лицензией MIT. Смотрите LICENSE для дополнительной информации.

Контакты

Команда API - api@cyberdas.net

Ссылка на проект: https://github.com/CyberDAS-Dev/API

Благодарности