https://github.com/braincreator/proviante_notes
https://github.com/braincreator/proviante_notes
Last synced: 8 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/braincreator/proviante_notes
- Owner: braincreator
- Created: 2025-05-06T00:17:49.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-06T00:29:43.000Z (about 1 year ago)
- Last Synced: 2025-05-06T01:27:23.525Z (about 1 year ago)
- Language: Dart
- Size: 3.56 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Proviante Notes
## Описание
Простое кроссплатформенное приложение для создания и управления заметками, созданное с помощью Flutter.
## Основные возможности (Features)
* **Создание, редактирование и удаление заметок:** Базовый функционал для работы с заметками.
* **Темная тема:** Поддержка светлой и темной тем оформления.
* **Поиск по заметкам:** Быстрый поиск заметок по их содержимому или заголовку.
* **Сортировка:** Возможность сортировки заметок (например, по дате создания или изменения).
* **Кроссплатформенность:** Поддержка Android, iOS, Web, Windows и macOS.
* **Тесты:** Наличие юнит-тестов, виджет-тестов и golden-тестов для обеспечения качества кода.
* **Сплэш-скрин:** Кастомный экран загрузки при запуске приложения.
* **Кастомная иконка приложения:** Уникальная иконка приложения для всех платформ.
* **Кастомные анимации:** Плавные анимации переходов между экранами и анимированные элементы интерфейса (кнопки, возможно, списки).
* **Локализация:** Поддержка нескольких языков (английский, русский).
## Скриншоты (Screenshots)

## Технологии (Technologies Used)
* **Фреймворк:** Flutter
* **Язык:** Dart
* **Управление состоянием:** flutter_bloc
* **База данных:** Isar (локальная NoSQL БД)
* **Внедрение зависимостей (DI):** get_it / injectable
* **Локализация:** easy_localization
* **Анимации:** flutter_animate, animations
* **Тестирование:** flutter_test, mockito, golden_toolkit
* **Генерация иконок/сплэша:** flutter_launcher_icons, flutter_native_splash
* **Шрифты:** google_fonts
* **Прочее:** equatable, path_provider, intl, shared_preferences
## Архитектура (Architecture)
Проект придерживается принципов **Clean Architecture**, разделяя логику на слои:
* **Data:** Источники данных (локальная БД Isar), репозитории.
* **Domain:** Сущности (Entities), интерфейсы репозиториев, Use Cases (хотя в данном проекте могут быть неявно выражены в BLoC).
* **Presentation:** UI (экраны, виджеты), управление состоянием (BLoC).
Внедрение зависимостей осуществляется с помощью `get_it` и `injectable`. Управление состоянием построено на `flutter_bloc`.
## Запуск проекта (Getting Started / Installation)
1. **Убедитесь, что у вас установлен Flutter SDK.** Инструкции по установке: [https://flutter.dev/docs/get-started/install](https://flutter.dev/docs/get-started/install)
2. **Клонируйте репозиторий:**
```bash
git clone
cd proviante_notes
```
3. **Установите зависимости:**
```bash
flutter pub get
```
4. **Запустите генерацию кода** (необходимо для Isar и Injectable):
```bash
flutter pub run build_runner build --delete-conflicting-outputs
```
*Примечание: Эту команду нужно выполнять после изменений в моделях Isar или конфигурации Injectable.*
5. **Запустите приложение:**
```bash
flutter run
```
Выберите целевое устройство (эмулятор, реальное устройство или десктоп/веб).
## Тестирование (Running Tests)
Для запуска всех тестов выполните команду:
```bash
flutter test
```
Для обновления golden-файлов (если виджет-тесты используют `golden_toolkit`):
```bash
flutter test --update-goldens