Skip to content

Commit 61ad045

Browse files
authored
Merge pull request #22 from FlutterFlow/pinkesh/ff-ui
Understanding FF UI
2 parents f697b9c + 8e3c5a5 commit 61ad045

32 files changed

+502
-6
lines changed

docs/intro/ff-ui/builder.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
slug: builder
3+
title: App Builder
4+
tags: []
5+
description: Explore the App Builder in FlutterFlow, featuring a comprehensive interface with four main sections. Navigation Menu, Toolbar, Canvas, and Properties Panel.
6+
sidebar_position: 0
7+
---
8+
9+
# App Builder
10+
11+
On opening the project, you'll see the App Builder, which consists of four main sections: [Navigation Menu](#navigation-menu), [Toolbar](#toolbar), [Canvas](#canvas-area), and [Properties panel](#properties-panel).
12+
13+
![app-builder](imgs/builder.avif)
14+
15+
## Navigation Menu {#navigation-menu}
16+
17+
The Navigation Menu, located on the left side of the builder, allows you to switch between various FlutterFlow features. These include designing the UI, managing databases, setting up API, adjusting app settings, adding integrations, and more.
18+
19+
Here is a list of all the features accessible from the navigation menu:
20+
21+
1. **Dashboard**: Manage projects, access account info, and FlutterFlow resources.
22+
2. **Widget Palette**: Access all widgets for your app.
23+
3. **Page Selector**: Manage pages and components, create folders as needed.
24+
4. **Widget Tree**: Get an overview of all widgets on a selected page.
25+
5. **Storyboard**: Visualize app's design and navigation.
26+
6. **Firestore**: Create collections and adjust Firestore-related settings.
27+
7. **Data Types**: Create custom data types for your app.
28+
8. **App Values**: Manage App State variables and Constants.
29+
9. **API Calls**: Define API calls.
30+
10. **Media Assets**: Upload assets for your app and team.
31+
11. **Custom Functions**: Add custom functionalities, widgets, and actions.
32+
12. **Cloud Functions**: Write and deploy cloud functions for Firebase.
33+
13. **Tests**: Add automated tests.
34+
14. **Theme settings**: Customize visual appearance.
35+
15. **Settings and Integrations**: Access app-related settings and integrations.
36+
37+
## ToolBar {#toolbar}
38+
39+
From [ToolBar](toolbar), you can search for project resources, change canvas size, see project history, branching, optimization and enhancements, view-download code, and run your app.
40+
41+
## Canvas Area {#canvas-area}
42+
43+
In the [Canvas Area](canvas), you can see a preview of a device's screen and build your app page.
44+
45+
## Properties Panel {#properties-panel}
46+
47+
The Properties Panel lets you modify both the visual appearance and interactive behavior of UI elements on the canvas. It allows you to add [Actions](#), set up a [Backend Query](#), add [Animations](#) and more.

docs/intro/ff-ui/canvas.md

Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
---
2+
slug: canvas
3+
title: Canvas
4+
tags: []
5+
description: Dive into the versatile Canvas in FlutterFlow, where you can effortlessly design and preview your app’s interface.
6+
sidebar_position: 2
7+
---
8+
9+
# Canvas
10+
The Canvas shows the screen of the device, which could be mobile, iPad, web, or desktop. It allows you to add widgets via drag-and-drop. You can select, move, and position widgets anywhere on the Canvas.
11+
12+
It allows zoom level adjustments and previews in light or dark mode. It also includes features for multi-language preview, adding App Bar and Nav Bar, simulating larger font visualization, and more.
13+
14+
![canvas area](imgs/canvas-new.avif)
15+
16+
## Preview Screen
17+
18+
This is the canvas of the device screen where you can build the user interface. You can customize the screen by adding widgets using drag and drop from the [Widget Palette](#) and by applying properties present in the [Properties Panel](#).
19+
20+
## Show or hide Navigation Menu
21+
22+
From here, you can open or close the [Navigation Menu](#).
23+
24+
## Zoom Controls
25+
26+
There's a zoom in ( + ) and a zoom out ( - ) button to control the zoom level of the canvas. While working on complex user interface designs, this comes in handy to give you a better preview of the widgets by zooming in to a particular area and then zooming out to have an overview.
27+
28+
## AI Generated Page
29+
30+
From here, you can [create a page using AI](#).
31+
32+
## Add App Bar
33+
34+
From here, you can add an [App Bar](#) to your page. Clicking this button opens a popup displaying different [App Bar styles](#) for you to choose from. Just select any App Bar style from the list and it will appear in the Preview Screen.
35+
36+
![AddAppBar.avif](imgs/AddAppBar.avif)
37+
38+
## Multi-Language Preview
39+
40+
If you've enabled the multi-language feature for your project, you can use this to preview your app in different languages. Just select the language from the dropdown menu, and the text in your app will be translated accordingly.
41+
42+
:::tip
43+
This feature is valuable for testing your app across multiple locales without needing to run your app.
44+
:::
45+
46+
<div style={{
47+
position: 'relative',
48+
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
49+
height: 0,
50+
width: '100%'
51+
}}>
52+
<iframe
53+
src="https://demo.arcade.software/E6otMpbcKewMYCfkjl9d?embed&show_copy_link=true"
54+
title="Sharing a Project with a User"
55+
style={{
56+
position: 'absolute',
57+
top: 0,
58+
left: 0,
59+
width: '100%',
60+
height: '100%',
61+
colorScheme: 'light'
62+
}}
63+
frameborder="0"
64+
loading="lazy"
65+
webkitAllowFullScreen
66+
mozAllowFullScreen
67+
allowFullScreen
68+
allow="clipboard-write">
69+
</iframe>
70+
</div>
71+
72+
## Dark/Light Mode
73+
74+
This toggle lets you switch between light and dark mode in your app, allowing you to ensure your design looks great in both modes. This feature is only available if you've enabled dark mode support in your project.
75+
76+
## Display Device
77+
78+
You can use this to show the device frame in the preview. This is particularly useful for checking how your screen will look with device-specific features such as the safe area or notches on iPhones and Android devices.
79+
80+
## Handle Bars
81+
82+
Enabling the Resize Handle Bars will show the handle bars at the right and bottom sides of the preview screen. This allows you to change the size of the preview screen to better test your app on a screen with a custom resolution and the overall responsiveness of your app.
83+
84+
![handle-bars](imgs/handle-bars.gif)
85+
86+
## Show or Hide Keyboard
87+
This option, when enabled, displays a virtual keyboard on the device preview screen. This is particularly useful for visualizing the user interface with the keyboard displayed.
88+
89+
## Larger Font Visualization
90+
91+
This enables you to simulate how your app appears when users adjust text scale or accessibility settings on their devices. It's vital for developing an app that's visually appealing and also accessible, especially for those requiring larger text sizes.
92+
93+
## Canvas Settings
94+
![canvas-settings](imgs/canvas-settings.avif)
95+
### Safe Area
96+
The Safe Area is a concept in mobile design that prevents content from being obscured by physical features of the device, such as camera notches, sensors, or rounded display edges. In this context, the FlutterFlow offers a Safe Area switch which allows you to enable or disable this feature as needed.
97+
98+
### Resize Snapping
99+
100+
When resizing a widget, you can snap its size to the specific pixel values or a percentage of the screen size.
101+
102+
<div style={{
103+
position: 'relative',
104+
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
105+
height: 0,
106+
width: '100%'
107+
}}>
108+
<iframe
109+
src="https://demo.arcade.software/1IOtwXpNus8W4dLgdHsm?embed&show_copy_link=true"
110+
title="Sharing a Project with a User"
111+
style={{
112+
position: 'absolute',
113+
top: 0,
114+
left: 0,
115+
width: '100%',
116+
height: '100%',
117+
colorScheme: 'light'
118+
}}
119+
frameborder="0"
120+
loading="lazy"
121+
webkitAllowFullScreen
122+
mozAllowFullScreen
123+
allowFullScreen
124+
allow="clipboard-write">
125+
</iframe>
126+
</div>
127+
128+
### Change canvas color
129+
Changing the canvas color can be helpful when creating components, especially when you want to preview them against the background color of the page. For example, if you have a text component that is black or dark-colored, and the default background is also dark, changing the canvas color to a lighter shade can improve visibility and make the design process easier.
130+
131+
## Add Nav Bar
132+
133+
This button allows you to add the [Nav Bar](#) to your page. Clicking on this button opens the popup that allows you to enable Nav Bar for your project. Once the Nav Bar is enabled, you can customize it to match your design.
134+
135+
![AddNavBar.avif](imgs/AddNavBar.avif)
136+
137+
---
138+
139+
## Video guide
140+
141+
Watch this video if you prefer watching a video tutorial.
142+
<div class="video-container"><iframe width="760" height="428" src="https://www.youtube.com/embed/NDrte4nOXYc" title="The Canvas | FlutterFlow University" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
143+
144+
---

docs/intro/ff-ui/imgs/AddAppBar.avif

72.1 KB
Binary file not shown.

docs/intro/ff-ui/imgs/AddNavBar.avif

193 KB
Binary file not shown.

docs/intro/ff-ui/imgs/AppBuilder.avif

147 KB
Binary file not shown.

docs/intro/ff-ui/imgs/CanvasArea.avif

81.3 KB
Binary file not shown.
84.7 KB
Binary file not shown.
98.7 KB
Binary file not shown.
16.2 KB
Binary file not shown.

docs/intro/ff-ui/imgs/Toolbar.avif

120 KB
Binary file not shown.

0 commit comments

Comments
 (0)