Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sumaro2101/resx

Good habits project
https://github.com/sumaro2101/resx

Last synced: 19 days ago
JSON representation

Good habits project

Awesome Lists containing this project

README

        

=========================================TITLE===========================================
Этот проект нацелен на то что бы пользователь мог
создавать, редактировать, удалять свои привычки.

Это помогает человеку лучше планировать и придерживаться
своим прычкам которые могут помочь ему быть лучше.

Пользователь может создавать привычки "приятные" и "полезные",
а так же связывать их.

Каждая привычка не может исполняться более 2 минут, это поможет
быть привычке найболее эффективной.

Периодичность привычки должна быть чаще чем 1 раз в неделю.

========================================INSTALL==========================================
1. Для развертывания сервера неоходимо заполнить переменные окружения в .env.sample
2. Далее Все что нужно это запустить Docker
2.1 docker-compose build --up

=====================================INSTRUCTIONS========================================
Для использования данного сервиса нужно запомнить некоторые вещи:

Периодичность "periodic" для облегчения ввода
было реализованно использование сточного типа ввода:
Пример: 0/15/0
1. Первая цифра это день, не более 7 включительно
2. Вторая цифра это час, не более 23 включительно
3. Третья цифра это минута, не более 59 включительно
4. Нельзя указывать более одного значения
5. Не допускаются пробелы
6. Можно указывать только циферное целое значение
7. Должно быть строго 3 цифры и 2 косые черты "/"
8. Если не указывать это поле тогда будет установленно стандартное значение 1/0/0
9. Отрицательные значения не допускаются

Время исполнения привычки "time_to_do" так же использует строчный тип ввода:
Пример: 19:42
1. Первая цифра это час, не более 23 включительно
2. Вторая цифра это минута, не более 59 включительно
3. Можно указывать только циферное целое значение
4. Должно быть строго 2 цифры и 1 двоеточее ":"
5. Это поле обязательное
6. Не допускаются пробелы
7. Отрицательные значения не допускаются

Время необходимое для выполнения привычки "time_to_done" использует строчный тип ввода:
Пример: 0:50
1. Первая цифра это минута, не более 2 включительно
2. Вторая цифра это секунда, не более 59 включительно
3. Можно указывать только циферное целое значение
4. Должно быть строго 2 цифры и 1 двоеточее ":"
5. Это поле обязательное
6. Не допускаются пробелы
7. Неоходимо указать не более 2 минут (120 секунд)
8. Отрицательные значения не допускаются

Вы не можете указывать одновременно "reward" и "related_habit"

Вы не можете указывать приятную привычку "is_nice_habit" и "related_habit" или "reward"

При указании связанной привычки,
связанная привычка дожна быть "Приятной" - "is_nice_habit",
так же они не могут иметь разную "Публичность" - "is_published"

При изменении "Публичности" - "is_published" так же меняется у всех связанных привычек,
все зависимости от количества.

Так же если привычка является "Приятной" - "is_nice_habit"
при изменении "Публичности" - "is_published",
меняется у всех привычек которые на нее ссылаются.

При удалении привычки связанные привычки продолжают жить.

========================================SUMMARY==========================================
Этот сервис я писал очень тчательно в течении двух недель

Сервис состоит примерно из ~ 2400 строк кода

Покрытие тестами было обеспечено на 90%

Общее количество строк тестов приблизительно ~ 2100
Общее количество тестов 79

Сервис написан по стандартам PEP8

========================================THANKS===========================================
Отдельное спасибо моей жене и ребенку,
их поддержка и терпение титаническое. Каждый день я писал этот сервис до 5-6 утра
и они все это терпели.