Skip to content
This repository was archived by the owner on Dec 18, 2024. It is now read-only.

Commit 727e65e

Browse files
committed
README updates: device access permissions
1 parent 9e36c52 commit 727e65e

File tree

1 file changed

+19
-18
lines changed

1 file changed

+19
-18
lines changed

README.md

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,24 @@ Hello and welcome to the Flutter AI Toolkit!
22

33
The AI Toolkit is a set of AI chat-related widgets to make it easy to add an AI chat window to your Flutter app. The AI Toolkit is organized around an abstract LLM provider API to make it easy to swap out the LLM provider that you'd like your chat provider to use. Out of the box, it comes with support for two LLM provider integrations: Google Gemini AI and Firebase Vertex AI.
44

5-
## Current Alpha Features
6-
The AI Toolkit is currently under active development and at the alpha stage, with the following features currently available:
7-
5+
## Features
86
- multi-turn chat (remembering context along the way)
97
- streaming responses
10-
- multi-line chat text input (via Alt/Opt+Enter on web/desktop)
8+
- multi-line chat text input
119
- cancel in-progress request
12-
- edit the last prompt (starting with long-press as the UI gesture)
10+
- edit the last prompt
1311
- rich text response display
1412
- chat microphone speech-to-tech prompt input
15-
- copy any response (starting with long-press as the UI gesture)
16-
- multi-media attachments ([the web currently doesn't like file attachments](https://github.com/csells/flutter_ai_toolkit/issues/18), so they're disabled)
17-
- handling structured LLM responses
13+
- copy any response
14+
- multi-media attachments
15+
- handling structured LLM responses to show app-specific Flutter widgets
1816
- app-provided prompt suggestions
19-
- pre-processing prompts to add prompt engineering, etc.
20-
- pre-processing requests to enrich the output, e.g. host Flutter widgets
21-
- updated UX based on Google design guidelines
17+
- pre-processing prompts to add logging, prompt engineering, etc.
2218
- custom styling support
23-
- dev-configured chatbot label + icon
2419
- support for Cupertino as well as Material
2520
- chat session serialization/deserialization
2621
- swappable support for LLM providers; oob support for Gemini and Vertex
27-
- support for all Flutter platforms, focusing initially on mobile and web
22+
- support for all Flutter platforms
2823

2924
Here's an example of [a sample app](https://github.com/csells/flutter_ai_toolkit/blob/main/example/lib/demo/demo.dart) hosting the AI Tookit running on the web:
3025

@@ -119,14 +114,20 @@ class ChatPage extends StatelessWidget {
119114
);
120115
}
121116
```
122-
If you like, use your Firebase project with the <a href="https://github.com/csells/flutter_ai_toolkit/blob/main/example/lib/vertex/vertex.dart">vertex.dart</a> sample. This sample has also been tested on Android, iOS, the web and macOS.
117+
If you like, use your Firebase project with the <a href="https://github.com/csells/flutter_ai_toolkit/blob/main/example/lib/vertex/vertex.dart">vertex.dart</a> sample. This sample is supported on Android, iOS, the web and macOS.
123118

124119
Note: There's no API key; Firebase manages all of that for you in the Firebase project. However, in the same way that someone can reverse engineer the Gemini API key out of your Flutter code, they can do that with your Firebase project ID and related settings. To guard against that, check out [Firebase AppCheck](https://firebase.google.com/learn/pathways/firebase-app-check), which is beyond the scope of the sample code in this project.
125120

126-
## More Features Coming Soon!
127-
As I mentioned, the AI Toolkit is just in the alpha phase of it's lifetime and it's under active development. Coming soon, you should expect the following features:
128-
- stand-alone chatbot app sample with multi-session support
129-
- thoroughly tested multi-platform support, including Windows and Linux
121+
## Device Access Permissions
122+
To enable the microphone feature, configure your app according to [the record package's permission setup instructions](https://pub.dev/packages/record#setup-permissions-and-others).
123+
124+
To enable the user to select a file on their device to upload to the LLM, configure your app according to [the file_selector plugin's usage instructions](https://pub.dev/packages/file_selector#usage).
125+
126+
To enable the user to select an image file on their device, configure your app according to [the image_picker plugin's installation instructions](https://pub.dev/packages/image_picker#installation).
127+
128+
To enable the user to take a picture on their device, configurate your app according to [the image_picker plugin's installation instructions](https://pub.dev/packages/image_picker#installation).
129+
130+
To enable the user to take a picture on the web, configure your app according to [the camera plugin's setup instructions](https://pub.dev/packages/camera#setup).
130131

131132
## Feedback!
132133
Along the way, as you use this package, please [log issues and feature requests](https://github.com/csells/flutter_ai_toolkit/issues) as well as any [code you'd like to contribute](https://github.com/csells/flutter_ai_toolkit/pulls). I want your feedback and your contributions to ensure that the AI Toolkit is just as robust and useful as it can be for your real apps.

0 commit comments

Comments
 (0)