finance-tracker
Описание
Управление финансами
Языки
- JavaScript46%
- HTML32,7%
- CSS21,3%
Finance Tracker Starter Kit
Перед началом работы
Перед запуском проекта на компьютере должны быть установлены:
- Node.js
- npm
- Git
Node.js и npm нужны для установки зависимостей и запуска Vite-проекта, а Git нужен для клонирования репозитория на компьютер.
Как проверить, что всё установлено
Откройте терминал и выполните команды:
Если команды выводят версии, значит всё установлено правильно. Для проектов на Vite нужен установленный Node.js с npm, а запуск локального сервера обычно выполняется через .
Как получить проект
Сначала нужно склонировать репозиторий с GitHub на свой компьютер. GitHub рекомендует открыть страницу репозитория, скопировать URL и выполнить команду в терминале.
Пример:
После клонирования нужно перейти в папку проекта через и работать уже внутри неё.
Установка зависимостей
После того как вы перешли в папку проекта, установите все зависимости командой:
Для Vite-проектов установка зависимостей через — стандартный шаг перед первым запуском.
Запуск проекта
Чтобы запустить проект в режиме разработки, выполните:
После этого Vite поднимет локальный dev-server и в терминале появится адрес, обычно вида , по которому можно открыть проект в браузере.
Сборка проекта
Когда работа будет завершена, можно собрать проект командой:
Эта команда создаёт production-сборку проекта, которую потом можно использовать для публикации.
Обзор проекта
В проекте уже подготовлены:
- готовая HTML-разметка;
- готовые стили;
- базовое подключение логики;
- стартовые данные для демонстрации.
Вам не нужно писать интерфейс с нуля — ваша задача сосредоточена именно на JavaScript-логике учебного приложения.
Структура проекта
Что находится в файлах
— готовая разметка страницы.index.html— готовые стили проекта.src/style.css— уже подключает интерфейс, форму и рендер.src/main.js— основной файл, в котором нужно писать решение.src/finance-logic.js
Что нужно сделать
Ваша основная задача — дописать логику в файле:
В этом файле нужно реализовать 4 функции.
1. validateTransactionForm(values)
Нужно проверить данные формы:
- заполнено ли название;
- введена ли сумма больше нуля;
- заполнена ли категория.
Функция должна вернуть объект:
или объект с ошибками, если форма заполнена неправильно.
2. createTransaction(values)
Нужно создать объект новой операции на основе данных формы.
Пример структуры:
3. filterTransactions(transactions, type)
Нужно реализовать фильтрацию операций:
- если
, вернуть все операции;type === 'all' - если
, вернуть только доходы;type === 'income' - если
, вернуть только расходы.type === 'expense'
4. calculateSummary(transactions)
Нужно посчитать:
- общую сумму доходов;
- общую сумму расходов;
- общий баланс.
Функция должна вернуть объект:
Как работать по шагам
Рекомендуемый порядок работы:
- Установить Node.js, npm и Git.
- Склонировать проект с GitHub.
- Перейти в папку проекта.
- Выполнить
.npm install - Выполнить
.npm run dev - Открыть проект в браузере.
- Перейти в
.src/finance-logic.js - Реализовать функции по очереди.
- Проверять результат после каждого изменения.
- После завершения выполнить
.npm run build
Дополнительные задания
Когда базовая логика будет готова, можно добавить:
- удаление операции;
- поиск по названию;
- фильтр по категории;
- сохранение данных в
;localStorage - сортировку по сумме.
Полезное замечание
Если после запуска команда не работает, сначала убедитесь, что зависимости были установлены через , потому что Vite должен быть установлен в проекте перед запуском dev-сервера.