finovy / finovy_ui_kit

轻量、可靠的移动端Flutter组件库(A lightweight and reliable mobile Flutter component library))

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Finovy UIKit

A lightweight and reliable mobile Flutter component library

English | 中文版

1. Usage

Add the following line to the dependencies section in the pubspec.yaml file:

fn_ui_kit:
  git:
    url: https://github.com/finovy/finovy_ui_kit.git

2. Basic Information of the Component Library

Name fn_ui_kit
Category UI
Development Framework flutter
Development Language Dart
Minimum Environment Requirement flutter >=3.0.0 dart >=2.17.0 <=4.0.0
Current Version 1.1.0
Third-Party Dependencies auto_size_text pin_code_fields pull_to _refesh visibility_detector
Open Source Repository https://github.com/finovy/finovy_ui_kit.git

3. Component Library Directory Structure

fn_ui_kit
├── icons (svg universal icon: will not be compiled)
│ ├── base (most commonly used icon)
│ └── tabbar (bottom navigation bar icon)
├── lib (source code)
│ └── assets
│ ├── images (picture resources)
│ └── fn_icons.dart (general icon reference class type IconData)│
│ └── fn_icons_font.otf (font file generated by universal icons, referenced in pubspec.yaml file)
│ └── src
│ ├── basic (basic components, including Text, Button, Image, Icon, TextFiled, Public Page, and Tag)
│ └── charts (chart components, including LineChart, BarChart, etc.)
│ ├── constant (constant, including color, font size FontSize, and image path ImagePath)
│ └── feedback (feedback component, including pop-up confirmation box Dialog, light prompt box Toast, notification bar NoticeBar, and step bar Step)
│ ├── form (form component, including Cell, CheckBox, Form, RadioButton, Search component, Segment component, and Star Voting Rate)
│ ├── third_lib (third-party library)
│ └── business (business component, including verification code input box VerifyInput, event container Event Container, status placeholder component EmptyWidget, and date selection DatePicker)
│ ├── theme (theme component, including theme configuration of most components)
│ └── navigation (navigation component, including navigation bar AppBar, navigation return, grid component Grid, and scaffolding Scaffold)
├── pubspec.yaml (project configuration information)
└── README.md (English description document)
├── README_CN.md (Chinese description document)
└── CHANGELOG.md (modification record)

Directory Structure Explanation:

  1. The icons directory is universal and will not be compiled when referenced;
  2. The third_lib directory is for local dependencies of third-party libraries, ensuring the stability and iterative updates of the component library.
  3. The pubspec.yaml file is the configuration file of the component library, which contains version information and related dependencies of the component library.
  4. The CHANGELOG.md file must be filled in each time the component library is iteratively updated, recording the specific information of each iteration update of the component library.
  5. The readme.md file is the description file when the component library is updated to other platforms such as GitHub, Pub, GitLab, etc.

Component Statistics in the Directory:

Directory NameComponent CategoryComponent NameComponent DescriptionUsage Scenarios

basic

(Basic Class)

buttonFNUIButtonbutton component, supporting primary button, secondary button, text button, icon buttoncan be used globally, supporting three states (available, disabled, loading), border customization, and text customization
imageFNUIImage,image components, supporting network and local images, and supporting specified module loadingGlobal Use
inputFNUITextField, FNUIPasswordInput

Input components, supporting regular text input, keyboard style, text style, and other general settings Password input component, supporting regular password input, keyboard style, text style, and other general settings

Interactive input scenarios, validation scenarios
text

FNUIText,

FNExpandLabel

Text component, supporting normal text display and custom text style

Foldable text component, supporting the folding and unfolding interaction of multiple lines of text

The most commonly used components are used globally

Multiple lines of text are required to display the folding effect

iconFNUIIconIcon component, supports text and icon style customizationGlobal use, universal icons return IconData

form

(Form class)

formFNUIFormForm component, supporting form display with regular input boxes, arrow style, and multi line text stylePersonal information display or modification scenarios, feedback scenarios, etc.
CellFNUICellForm single line component, supporting display of titles, content, icons, etc.User information display and data display scenarios
radioFNUIRadioRadio button component, supporting unique radio control and displayUsers can select a single data scene
checkboxFNUICheckBoxCheck button component, supporting multiple selection control and displayUsers selecting multiple data scenarios
tableFNUITableTable component, supporting regular header and content displayData list display scenario with header
rateFNUIRateVoting component, supporting icon displays such as voting and rating.Voting and rating scenarios
searchFNUISearchSearch component, supporting regular search view displayScenarios that require search services
segmentFNUISegmentColumn component, supporting multiple sets of text for single selectionScenarios that require selecting or switching between unique classifications

feedback

(operation feedback class)

toastFNUIToastLight prompt component, supporting display of upper, middle, and lower positions, supporting mask interaction isolationInteractive success, failure, and pop-up scenarios, loading waiting
dialogFNUIDialogPopup box component, supporting pop-up confirmation boxes, bottom confirmation boxes, custom buttons, and event responsesInteractive confirmation scenarios, user active selection confirmation scenarios
progress

FNUILinearProgress,

FNUICircularProgress

Progress prompt component, supporting linear and circular visual effects

navigation

(navigation class)

appbarFNUIAppbarTop navigation bar component, supporting general background, text, buttons, and other configurationsGlobal configuration, routing navigation page
backFNUINavBackNavigation return buttonGlobal configuration, routing navigation page
gridFNUIGridGrid component, supporting multiple menusGlobal configuration
scaffoldFNUIScaffoldScaffold componentsGlobal configuration

charts

(chart class)

---Packaging not yet completed

business

(Business)

verifycodeFNUISerifyCodeInputThe verification code input component supports over 90% of verification code scenarios and can be highly customized.Used for login, registration, and other verification code input scenarios
place_ HolderFNUIEmptyThe placeholder view component supports multi category displays such as no data, request errors, network errors, etc.Used for view placeholder scenarios, and can be selected according to actual needs
pickerFNUIDataPickerTime selection component, supporting multiple styles of time selectionfor selecting specific times, supporting regular time formatting
eventFNUIEventContainerEvent ordinary container component, inheriting ordinary containers, supporting click eventsScenarios that require containers to bring click events

constant

(constant class)

colorsFNColorsColor constant class, categorizing color values for different scenes on the design draft, supporting quick accessFor unified color values, used in conjunction with themes
fontsFNFontSizeFont size constant class, unified font sizeused to unify font size within a project, generally without additional specifications
imagesFNImagePathImage path processing class, providing image path storage and processingUsed to define image class addresses in component libraries

theme

(Theme Configuration Class)

stylesComponent Theme Configuration FolderContains most component theme configurationsUsed for individual theme configurations for each component
themeFNThemeTheme Configuration Main FileMain File Entry Reference

third_ Lib

(Third Party Dependency Class)

auto_ Size_ Text-Text automatic size component, supporting adaptive text font size based on widthFor special text font size adaptation display scenarios
pin_ Code_ Fields-Verification code input component, supporting verification code input, automatic filling, etc.Used for login, registration, and other verification code input scenarios
pull_ To_ Refresh-List refresh component, supports customization of the header and bottomfor list component refresh scenarios
visibility_ Detector-Visible area detection component, supporting visible state detection of viewsUsed for route switching, page switching, front and back switching scene detection

context

(Context class)

contextFNDesignContextContext configuration entry, mainly used to provide context for pop-up classes; Two initialization methods are provided: initFNUIKitContext, FNUIKitContextBuilderProgram main entry for initialization

About

轻量、可靠的移动端Flutter组件库(A lightweight and reliable mobile Flutter component library))

License:MIT License


Languages

Language:Dart 99.4%Language:Shell 0.6%