Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

TaskManager is a flexible task management application built on Elixir 🚀 Create, group, filter, and track tasks effortlessly 📝📂🔍📊

License

Notifications You must be signed in to change notification settings

Adamanr/TaskManager

Repository files navigation

TaskManager 🖥

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 📝

Установка и запуск 🚀

1. Установите зависимости

Убедитесь, что у вас установлены:

  • Elixir (версия 1.14 или выше) 🧪
  • npm (версия 11.0.0 или выше) 📦

2. Клонируйте репозиторий

git clone https://github.com/adamanr/TaskManager.git
cd task_manager

3. Установите зависимости проекта

mix deps.get

4. Настройте базу данных

Создайте базу данных и настройте подключение в файле config/config.exs:

config :task_manager, TaskManager.Repo,
 adapter: Ecto.Adapters.SQLite3,
 database: "./database.db", # Или другой любой удобный путь
 pool_size: 10

Создайте и выполните миграции:

mix ecto.create
mix ecto.migrate

5. Подтяните npm зависимости (Нужно для tailwind)

npm i

6. Запустите приложение

mix run --no-halt

7. В случае, если нужно будет пересобрать tailwind

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.

Автор 👤

Как внести вклад 🤝

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

  1. Форкните репозиторий. 🍴
  2. Создайте ветку для вашей функции (git checkout -b feature/AmazingFeature) 🌿
  3. Зафиксируйте изменения (git commit -m 'Add some AmazingFeature') 💾
  4. Отправьте изменения в ваш форк (git push origin feature/AmazingFeature) 🚀
  5. Создайте Pull Request 📥

Если у вас есть вопросы или предложения, создайте Issue или свяжитесь со мной! 📩

About

TaskManager is a flexible task management application built on Elixir 🚀 Create, group, filter, and track tasks effortlessly 📝📂🔍📊

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /