flutter_app/README.md

57 lines
1.6 KiB
Markdown

# flwtch
A new Flutter application.
## Getting Started
click the play button in android studio
### Linux
- libCwtch-go: the result of `make linux`, `libCwtch.so` should be in the link path
- `tor` should be in the PATH
### Windows
- libCwtch-go: the result of `make windows`, `libCwtch.dll` should be placed in the source root
- tor is bundled in `windors/Tor`
## l10n
### Adding a new string
Strings are managed directly from our Lokalise(url?) project.
Keys should be valid Dart variable names in lowerCamelCase.
After adding a new key and providing/obtaining translations for it, follow the next step to update your local copy.
### Updating translations
Only Open Privacy staff members can update translations automatically:
```
flutter pub run flutter_lokalise download -v --api-token "<X>" --project-id "<Y>"
```
This will download a bundle of translations from Lokalise and convert it to resource files in `lib/l10n/intl_*.arb`.
The next time Flwtch is built, Flutter will notice the changes and update `app_localizations.dart` accordingly (thanks to `generate:true` in `pubspec.yaml`).
### Using a string
Any widget underneath the main MaterialApp should be able to:
```
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
```
and then use:
```
Text(AppLocalizations.of(context).stringIdentifer),
```
### Configuration
API tokens are only available to Open Privacy staff at this time, who will perform the translation updates for you as part of merging your PRs.
With `generate: true` in `pubspec.yaml`, the Flutter build process checks `l10n.yaml` for input/output filenames.