Опис та деталі проекту
Задача
Expense Tracker решает прикладную задачу: Простое веб-приложение для учета доходов и расходов. Добавляйте транзакции, просматривайте баланс, общие доходы/расходы и историю. Данные сохраняются локально в хранилище браузера.
Это учебный проект (завершён и используется), где отрабатывались конкретные паттерны и инструменты без лишней обвязки.
Кейс демонстрирует типовой цикл разработки: постановка → прототип → стабилизация → сопровождение.
Перед стартом зафиксировали критерии готовности: понятный первый экран, предсказуемые ошибки форм, возможность доработки без переписывания половины кодовой базы.
Решение
Сделана учебная, но полноценная реализация с акцентом на читаемость кода и воспроизводимую сборку.
Сценарии спроектированы так, чтобы основные действия укладывались в один–два экрана: меньше переключений, меньше ошибок при вводе. Навигация и подписи полей согласованы с привычными паттернами — пользователю не нужно «учить интерфейс».
Отдельное внимание — состояния загрузки и пустые списки: skeleton/spinner там, где данные приходят асинхронно, и понятные empty-state тексты вместо пустой таблицы.
Архитектура и стек
Инфраструктура и утилиты: JavaScript.
Распределение языков в репозитории: JavaScript (44.7%), CSS (34.8%), HTML (20.5%).
Слои разделены так, чтобы UI не знал деталей транспорта: адаптеры API/хранилища, доменные типы, компоненты представления. Это упрощает замену бэкенда и точечные UX-правки.
Ключевые функции
- JavaScript — использован в продуктовой логике: снижает количество самописного кода и ускоряет добавление новых экранов.
Дополнительно:
- Интеграция и использование JavaScript в продуктовой логике и интерфейсе.
- Валидация пользовательского ввода и понятные сообщения об ошибках.
- Адаптивная вёрстка для desktop и mobile.
Результат
Проект доведён до рабочего состояния: команда/пользователь получает стабильный инструмент вместо ручных таблиц и переписки. Сокращено время на типовые операции за счёт автоматизации в интерфейсе.
Исходный код открыт: https://github.com/astropsy999/Expense-tracker — можно оценить структуру модулей и стиль коммитов.
Учебный формат позволяет быстро повторить паттерн в своих pet-проектах без лишней инфраструктуры.
Что бы улучшил
Добавил бы e2e-тесты на критичные сценарии и вынес бы конфигурацию в отдельный слой для экспериментов. Для публичного demo — CI-сборку и preview-окружение на каждый pull request.
Часті запитання
Для чого потрібен проєкт «Expense Tracker»?
Простий веб-додаток для обліку доходів та витрат. Додавайте транзакції, переглядайте баланс, загальні доходи/витрати та історію. Дані зберігаються локально у сховищі браузера.
Який стек у «Expense Tracker»?
Технології: JavaScript.
Інформація про проект
LearningCompleted
- Створено: 13 Feb 2021
- Оновлено: 13 Feb 2021
- URL GitHub: Переглянути репозиторій


