TaskManager — это гибкое приложение для управления задачами, разработанное на языке Elixir. 🚀 Оно помогает эффективно организовывать рабочие процессы, управлять сроками и контролировать выполнение задач. С помощью TaskManager вы можете:
- Создавать задачи: Добавляйте задачи с указанием названия, описания, статуса, приоритета и дедлайна 📝
- Группировать задачи: Организуйте задачи в группы для удобного управления проектами, командами или категориями 📂
- Фильтровать и сортировать: Легко находите нужные задачи с помощью фильтров по статусу (например, "в процессе", "завершено"), приоритету (например, "высокий", "низкий") и дедлайну (например, "просроченные задачи") 🔍
- Отслеживать прогресс: Просматривайте задачи, которые уже выполнены, и те, что требуют внимания 📊
- Создание задач: Добавление новых задач с указанием названия, описания, статуса, приоритета и дедлайна 📅
- Объединение задач в группы: Добавление новых задач с указанием названия, описания, статуса, приоритета и дедлайна 🗂️
- Редактирование задач: Обновление существующих задач ✏️
- Удаление задач: Удаление задач из системы 🗑️
- Фильтрация задач:
- По статусу (например, "в процессе", "завершено") 🚦
- По приоритету (например, "высокий", "низкий") ⚡
- По дедлайну (например, "просроченные задачи") ⏳
- Язык: Elixir 🧪
- База данных: SQLite3 🗄️
- Библиотеки:
- ecto_sql {3.12} 📚
- ecto_sqlite3 {0.18.0} 📚
- bandit {1.6.2} 📚
- ex_doc {0.30} 📚
- credo {1.7} 📚
- exsync {0.4.1} 📚
- ORM: Ecto 🛠️
- Шаблонизатор: EEx 📝
Убедитесь, что у вас установлены:
- Elixir (версия 1.14 или выше) 🧪
- npm (версия 11.0.0 или выше) 📦
git clone https://github.com/adamanr/TaskManager.git
cd task_manager
mix deps.get
Создайте базу данных и настройте подключение в файле config/config.exs
:
config :task_manager, TaskManager.Repo,
adapter: Ecto.Adapters.SQLite3,
database: "./database.db", # Или другой любой удобный путь
pool_size: 10
Создайте и выполните миграции:
mix ecto.create
mix ecto.migrate
npm i
mix run --no-halt
npx tailwindcss -i ./assets/css/app.css -o ./priv/static/css/app.css --watch
Приложение будет доступно по адресу: http://localhost:4000. 🌐
- lib/task_manager — Основной код приложения
- repo.exs — Настройки репозитория Ecto 🗄️
- router.exs — Маршруты и обработчики запросов 🛣️
- tasks.exs — Контекст для работы с задачами 📝
- groups.exs — Контекст для работы с группами 📂
- tasks_groups.exs — Контекст для связи задач с группами 🔗
- templates.exs — Модуль для работы с html.eex шаблонами 📄
- priv/repo/migrations — Миграции базы данных 🗄️
- templates — Шаблоны для рендеринга HTML 📄
- config — Конфигурационные файлы ⚙️
Этот проект распространяется под лицензией MIT. Подробнее см. в файле LICENSE.
- Adamanr 🧑💻
Данный проект является больше учебным пет-проектом нежели чем-то продуктовым, но его всегда можно улучшить. Если же у вас появились данные намерения, то
- Форкните репозиторий. 🍴
- Создайте ветку для вашей функции (
git checkout -b feature/AmazingFeature
) 🌿 - Зафиксируйте изменения (
git commit -m 'Add some AmazingFeature'
) 💾 - Отправьте изменения в ваш форк (
git push origin feature/AmazingFeature
) 🚀 - Создайте Pull Request 📥
Если у вас есть вопросы или предложения, создайте Issue или свяжитесь со мной! 📩