You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/ff-concepts/design-system/design-system.md
+41Lines changed: 41 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -196,6 +196,47 @@ If you prefer watching a video tutorial, here is the guide for you:
196
196
</div>
197
197
<p></p>
198
198
199
+
## Use Library as Design System
200
+
201
+
You can also import a design system from the [Library](../../resources/projects/libraries.md) added to your project. A library can serve as a central repository for your design assets, components, and styles—effectively becoming a Design Library for your application(s).
202
+
203
+
:::tip[possible use cases]
204
+
205
+
-**Enterprise Applications:** Large organizations can develop a centralized design system as a library to ensure all internal applications maintain a cohesive look and feel, enhancing brand identity and user experience.
206
+
-**Startup MVPs:** Startups can expedite the development of Minimum Viable Products (MVPs) by leveraging a pre-built design library like [**shadcn**](https://marketplace.flutterflow.io/item/cNlm0zWW1Nfq11cFXBmp), allowing them to focus on functionality and user validation.
207
+
-**Cross-Platform Consistency:** Teams aiming to deploy apps across multiple platforms (iOS, Android, Web) can use a popular design system library to ensure uniformity in design, reducing the effort required for platform-specific adjustments.
208
+
209
+
:::
210
+
211
+
To add a design system from a library, first, ensure that you [add a library dependency to your project](../../resources/projects/libraries.md#importing-a-library). Then, navigate to **Theme Settings > Design System** and click on **No Design System Selected**. From the dropdown menu, **Select a library** you want to use.
212
+
213
+
214
+
<div style={{
215
+
position: 'relative',
216
+
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
keywords: [FlutterFlow, forms, input fields, user interface, mobile app development, data collection, user interaction]
6
6
description: Learn how to work with Forms in FlutterFlow app.
7
7
sidebar_position: 0
8
8
---
9
9
10
10
11
-
# Overview
11
+
# Forms Overview
12
12
Forms are a fundamental part of many applications, serving as the primary method for users to input and submit data. Whether you're building a simple contact form or a complex multi-step survey, FlutterFlow provides a comprehensive set of tools to create, validate, and manage forms effectively.
13
13
14
14
:::tip
15
15
In this section, you'll learn how to add form widgets such as [**TextField**](form-widgets/text-field.md), [**Dropdown**](form-widgets/dropdown.md), [**RadioButton**](form-widgets/radiobutton.md), [**Checkbox Widgets**](form-widgets/checkbox.md) and add [**Validations**](form-validation.md) and [**set**](form-actions/set-form-field.md)/[**reset**](form-actions/reset-form-field.md) actions on these widgets.
Copy file name to clipboardExpand all lines: docs/resources/projects/libraries.md
+22-7Lines changed: 22 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -85,7 +85,6 @@ To publish a FlutterFlow project as a library, start by creating a FlutterFlow p
85
85
When a project is converted into a library, the following features are disabled to ensure compatibility and functionality limitations:
86
86
87
87
- App settings
88
-
- Firebase
89
88
- Supabase
90
89
- Development environments
91
90
- Authentication
@@ -98,8 +97,6 @@ When a project is converted into a library, the following features are disabled
98
97
- Google Analytics
99
98
- OneSignal
100
99
- Mux
101
-
- Cloud functions
102
-
- Firestore Collections
103
100
104
101
## Importing a Library
105
102
@@ -318,6 +315,24 @@ To set library values, navigate to **Settings and Integrations > Project Setup >
318
315
For different [**development environments**](../../testing-deployment-publishing/development-environments/development-environments.md) (e.g., development vs. production), you can bind Library Values to [**environment values**](../../testing-deployment-publishing/development-environments/development-environments.md#use-environment-values). For instance, you could have two different Library Values for an API key, such as `DEV_OPENAI_API_KEY` and `PROD_OPENAI_API_KEY`, and bind them to the development and production environments to track API usage separately.
319
316
:::
320
317
318
+
## Libraries with Firebase
319
+
You can create collections and enable various Firebase features in library projects without connecting a separate Firebase project.
320
+
321
+
In library projects, you won’t see an option to link to a Firebase project. Instead, the project that imports the library handles the actual Firebase connection.
322
+
323
+
Any indexes or security rules defined in the library are recognized by the importing project and deployed accordingly.
324
+
325
+
:::warning[Limitations]
326
+
Libraries work with Firebase but have **some limitations**. The **Firebase Auth** and **Firebase Storage** are not directly supported in library projects at this time. If you need these features in your library’s functionality, you can include an action that accomplishes this task as a [**callback**](../../resources/ui/components/callbacks.md).
327
+
:::
328
+
329
+
If your team has multiple projects that share a common Firebase feature, turning it into a library is a great idea. This ensures the same logic is used and connects to the same Firestore project across all apps.
330
+
331
+
Here are some examples of library projects you can build with Firebase:
332
+
333
+
-**Basic Analytics or Tracking**: A library that logs events to Firestore; useful for aggregating usage data at an application level.
334
+
-**Configuration or Settings**: A library that serves app-wide configurations (like feature flags, UI themes, or layout choices) is handled in Firebase Remote Config.
335
+
321
336
## FAQs
322
337
323
338
<details>
@@ -328,16 +343,16 @@ Team code and API libraries will be migrated to library Projects. These projects
328
343
</details>
329
344
330
345
<details>
331
-
<summary>Will libraries work with Marketplace?</summary>
346
+
<summary>Do libraries work with Marketplace?</summary>
332
347
<p>
333
-
We plan to allow users to import a marketplace project as a library, making it easier to integrate marketplace resources into your projects.
348
+
Yes, you can add and import a Marketplace project as a library.
334
349
</p>
335
350
</details>
336
351
337
352
<details>
338
-
<summary>How do libraries work with themes?</summary>
353
+
<summary>How do libraries work with themes (design systems)?</summary>
339
354
<p>
340
-
The parent project's design system takes precedence over the imported library's design system. For example, if a library uses the standard FlutterFlow color scheme, the values defined in the parent project will override those in the library. However, if the library project has a custom color that the parent project does not have, it will be used as-is in the parent project.
355
+
By default, the design system of the parent project takes precedence over the imported library's design system. If you want to use a library's design system, you must [**select or set the library in the Design System**](../../ff-concepts/design-system/design-system.md#use-library-as-design-system) page.
Copy file name to clipboardExpand all lines: docs/resources/projects/settings/general-settings.md
+6-32Lines changed: 6 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ This section allows you to customize a wide range of settings that are crucial f
16
16
17
17
### Change Project, Package, and Display Name
18
18
19
-
If you didn't decide on the app or package name when creating a new project, you might have entered a random name. From here, you can change the name anytime.
19
+
Modify the app or package name of your project from this settings. You can also define different package names based on the development environment selected.
20
20
21
21
You can set a different name for the *App Store* and *Play Store* using the **Display Name**.
22
22
@@ -28,8 +28,9 @@ After changing the package name, errors may appear on the toolbar due to invalid
28
28
29
29
You can specify your app's **Entry Page** and **Logged In****Page** from this section.
30
30
31
-
-**Entry Page**: This is the home page for your app. If authentication is enabled, users who are not logged in will see this page, which is typically set to a login/signup or onboarding page.
32
-
-**Logged In Page** (*available only if auth is enabled*): This page is displayed on the app start if a user is already logged in. Users are automatically navigated to the page you specify here on a successful sign-in attempt.
31
+
-**Entry Page**: This serves as the home page for your app. When authentication is disabled, all users are directed to this page by default. If authentication is enabled, this page becomes the login, signup, or onboarding page for users who are not authenticated.
32
+
-**Logged In Page** (*available only if auth is enabled*): This page is displayed when the app starts for authenticated users. If a user successfully signs in, they are automatically redirected to the page specified here. If the user is already authenticated, this page bypasses the Entry Page.
33
+
33
34
34
35
To set the page, simply choose the page that you want to use from the dropdown menu.
35
36
@@ -74,35 +75,8 @@ If you want the improved folder organization for your project, **Enable Updated
74
75
75
76
### Routing & Deep Linking
76
77
77
-
From here, you can configure the global settings for navigation and deep link in your app [here](../../../ff-concepts/navigation-routing/deep-dynamic-linking.md).
78
-
78
+
Configure the global settings for navigation and deep link in your app. To learn, how to set up deeplinks, check out the **[Deep & Dynamic Linking](../../../ff-concepts/navigation-routing/deep-dynamic-linking.md)** guide.
79
79
80
-
If you prefer watching a video tutorial, here is the guide for you:
81
-
<div style={{
82
-
position: 'relative',
83
-
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
84
-
height: 0,
85
-
width: '100%'}}>
86
-
<iframe
87
-
src="https://www.youtube.com/embed/H_3yQsa8wT8"
88
-
title=""
89
-
style={{
90
-
position: 'absolute',
91
-
top: 0,
92
-
left: 0,
93
-
width: '100%',
94
-
height: '100%',
95
-
colorScheme: 'light'
96
-
}}
97
-
frameborder="0"
98
-
loading="lazy"
99
-
webkitAllowFullScreen
100
-
mozAllowFullScreen
101
-
allowFullScreen
102
-
allow="clipboard-write">
103
-
</iframe>
104
-
</div>
105
-
<p></p>
106
80
107
81
## App Assets
108
82
@@ -185,4 +159,4 @@ See the following resources for more information on Android adaptive icons.
See how to configure the [Nav Bar](../../ui/pages/page-elements.md#enable-nav-bar-in-settings) and the [App Bar](../../ui/pages/page-elements.md#appbar).
162
+
See how to configure the [Nav Bar](../../ui/pages/page-elements.md#enable-nav-bar-in-settings) and the [App Bar](../../ui/pages/page-elements.md#appbar).
0 commit comments