Программный интерфейс CyberDAS'a, проекта цифровизации общежития
Спецификация »
Сообщить об ошибке
·
Предложить улучшение
Содержание
Вы когда-нибудь стояли в очереди на заселение по несколько часов? Жили пару дней без света в коридоре, потому что не хотелось подниматься к коменданту? Тогда вам знакомо, как неприветлива бывает бюрократия.
Этот проект призван упростить жизнь студентов в общежитии, избавив от их бюрократических рутин и дав им новые, цифровые, возможности.
Мы хотим дать студентам возможность:
- Оставлять заявки на вызов технических служб не выходя из комнаты
- Дистанционно записываться на заселение и не тратить свою жизнь в очереди
- Составлять и отправлять заявления в администрацию без особых усилий
- Делиться ненужными вещами без пабликов-барахолок в ВК
- И многое другое...
Сейчас этот проект создается на базе общежития ДАС МГУ, но мы планируем сделать 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
- Скопируйте репозиторий
git clone https://github.com/CyberDAS-Dev/API.git
- Запустите pgAdmin и создайте новый сервер
- Создайте новую базу данных
- Укажите URL вашей базы данных в поле
sqlalchemy.url
в секцииalembic
файлаcfg.ini
, в таком формате:postgresql+psycopg2://[Postgres login]:[Postgres password]@[Postgres server url]/[DB name]
- Все последующие действия нужно производить, находясь в одной папке с файлом
README.md
cd API
- Создайте виртуальное окружение Питона и активируйте его
python3 -m venv .venv source .venv/bin/activate
- Установите проект со всеми зависимостями
pip3 install -e ".[testing]"
- Обновите базу данных до последней ревизии и инициализируйте её
alembic -c cfg.ini upgrade head initialize_db
- Убедитесь в том, что все тесты проходят без предупреждений
pytest -W error
- Запустите Gunicorn-сервер; API будет доступно по адресу http://127.0.0.1:8000
gunicorn cyberdas.app
Смотрите open issues для информации о планируемых улучшениях и известных проблемах.
Совместная разработка это то, что делает опен-сорс сообщество таким удивительным местом для обучения и творчества. Мы ценим любой ваш вклад в проект.
- Сделайте копию (Fork) проекта
- Создайте свою ветку для работы (
git checkout -b feature/AmazingFeature
) - Сохраните изменения (
git commit -m 'Add some AmazingFeature'
) - Отправьте их в удаленную ветку (
git push origin feature/AmazingFeature
) - Создайте Pull Request
Распространяется под лицензией MIT. Смотрите LICENSE
для дополнительной информации.
Команда API - api@cyberdas.net
Ссылка на проект: https://github.com/CyberDAS-Dev/API
- Александр Букреев, оригинальный создатель проекта
- Студенческий комитет ДАС МГУ
- Best-README-Template