mirror of
https://github.com/smmarty/friflex_flutter_starter.git
synced 2025-12-22 01:20:46 +00:00
feat(snackbar): Добавить поддержку информационного снекбара и обновить документацию. Обновлены файлы .gitignore и README.md, добавлены новые цвета и методы для отображения снекбара с информацией.
This commit is contained in:
79
README.md
79
README.md
@@ -1,30 +1,63 @@
|
||||
#### Приложение [ProjectName]
|
||||
# Описание проекта Friflex Starter
|
||||
|
||||
## Общая информация
|
||||
Friflex Starter - это стартовый шаблон для разработки Flutter-приложений, который предоставляет готовую структуру проекта, настроенные инструменты и лучшие практики разработки.
|
||||
|
||||
## Архитектура
|
||||
Проект следует принципам чистой архитектуры с разделением на три основных слоя:
|
||||
- **data** - слой данных, отвечающий за работу с API и локальным хранилищем
|
||||
- **domain** - слой бизнес-логики, содержащий основные бизнес-правила и модели
|
||||
- **presentation** - слой представления, отвечающий за UI и взаимодействие с пользователем
|
||||
|
||||
Каждая функциональность (feature) реализуется в отдельной папке с внутренним разделением на слои, что обеспечивает модульность и масштабируемость кода.
|
||||
|
||||
## Технологический стек
|
||||
|
||||
### Основные библиотеки
|
||||
- **Роутинг**: [go_router](https://pub.dev/packages/go_router)
|
||||
- **Управление состоянием**: [flutter_bloc](https://pub.dev/packages/flutter_bloc)
|
||||
- **Внедрение зависимостей**: собственная реализация через InheritedWidget
|
||||
- **Работа с ресурсами**: [flutter_gen](https://pub.dev/packages/flutter_gen)
|
||||
- **Линтинг**: [friflex_lint_rules](https://pub.friflex.com/packages/friflex_lint_rules)
|
||||
- **Хранение данных**:
|
||||
- Защищенные данные: [flutter_secure_storage](https://pub.dev/packages/flutter_secure_storage)
|
||||
- Обычные данные: [shared_preferences](https://pub.dev/packages/shared_preferences)
|
||||
- **Работа с API**: [dio](https://pub.dev/packages/dio)
|
||||
|
||||
## Структура проекта
|
||||
- проект архитектурно делится на три слоя: data, domain и presentation;
|
||||
- все [features] реализуются в отдельных папках, с внутренним делением на слои;
|
||||
|
||||
## Основные пакеты и реализации (обновляется при добавлении или изменении)
|
||||
- управление роутингом: [go_router](https://pub.dev/packages/go_router);
|
||||
- основной state manager: [flutter_bloc](https://pub.dev/packages/flutter_bloc);
|
||||
- di: ручная реализация через InheritedWidget;
|
||||
- работа с ресурсами: [flutter_gen](https://pub.dev/packages/flutter_gen);
|
||||
- анализатор: используем [friflex_lint_rules](https://pub.friflex.com/packages/friflex_lint_rules), с правилами написания кода от компании.;
|
||||
- для хранения защищенных данных - [flutter_secure_storage](https://pub.dev/packages/flutter_secure_storage);
|
||||
- для хранения данных - [shared_preferences](https://pub.dev/packages/shared_preferences);
|
||||
- для работы с API - [dio](https://pub.dev/packages/dio);
|
||||
### Основные директории
|
||||
- `/lib` - основной код приложения
|
||||
- `/app` - основные компоненты приложения
|
||||
- `/features` - функциональные модули
|
||||
- `/router` - настройка маршрутизации
|
||||
- `/di` - настройка внедрения зависимостей
|
||||
- `/l10n` - локализация
|
||||
- `/gen` - сгенерированные файлы
|
||||
- `/targets` - специфичные настройки для разных платформ
|
||||
- `/assets` - ресурсы приложения
|
||||
- `/test` - тесты
|
||||
- `/tools` - инструменты и документация
|
||||
- `/app_services` - сервисы приложения
|
||||
|
||||
## Инструкция по запуску проекта
|
||||
- [Инструкция по запуску проекта](./tools/rfc/RFC-build.md)
|
||||
### Конфигурационные файлы
|
||||
- `pubspec.yaml` - зависимости и метаданные проекта
|
||||
- `analysis_options.yaml` - настройки анализа кода
|
||||
- `l10n.yaml` - настройки локализации
|
||||
|
||||
## Стиль написания кода
|
||||
- [Стиль написания кода](./tools/rfc/RFC-codestyle.md)
|
||||
## Документация для проектов
|
||||
Проект содержит подробную документацию в директории `/tools/rfc/`:
|
||||
- Рекомендованный README для проекта
|
||||
- Инструкции по запуску проект
|
||||
- Стиль написания кода
|
||||
- Git-flow процесс
|
||||
- Структуру проекта
|
||||
- Правила ведения документации
|
||||
|
||||
## Внесение изменений в код
|
||||
- [Внесение изменений в код](./tools/rfc/RFC-gitflow.md)
|
||||
## Дополнительные особенности
|
||||
- Поддержка мультиязычности (l10n)
|
||||
- Шаблон для PR
|
||||
- Настроенный анализ кода (analysis_options.yaml)
|
||||
|
||||
## Структура проекта
|
||||
- [Структура проекта](./tools/rfc/RFC-projects_structure.md)
|
||||
|
||||
## Ведение документации и комментариев в проекте
|
||||
- [Ведение документации и комментариев в проекте](./tools/rfc/RFC-documentation.md)
|
||||
## Начало работы
|
||||
Для начала работы с проектом рекомендуется ознакомиться с документацией в директории `/tools/rfc/`, особенно с инструкциями по запуску проекта и стилем написания кода.
|
||||
|
||||
Reference in New Issue
Block a user