NRU RANEPA (Timetable)
Custom crossplatform open-source NRU RANEPA mobile client written on Flutter.
Features
- iOS today extension and android app widget
- Platform adaptive design (using CupertinoApp & MaterialApp)
- Caching support
- Multicolor themes with dark & light app appearance
- Multiple site api's support
- Fully internationalization
- Customizable timetable app design
- Cool intro screen
- iOS & Android calendar integration
- Android alarm clock integration
Getting Started
For help getting started with Flutter, view our online documentation.
Project setup
Android:
- Create key.properties to /android with:
storePassword=# STORE PASSWORD #
keyPassword=# KEY PASSWORD #
keyAlias=# KEY ALIAS #
storeFile=/path/to/keystore/# FILENAME #.keystore
iOS:
- Get carthage deps in /ios folder
cd ios
carthage update --platform iOS
References, used in the development
Localization flutter app
Icons for IOS/Android versions for Flutter app
Useful commands
Regenerate .arb translations files
flutter pub pub run intl_translation:extract_to_arb --output-dir=lib/l10n lib/localizations.dart
Regenerate translations classes
flutter pub pub run intl_translation:generate_from_arb --output-dir=lib/l10n --no-use-deferred-loading lib/localizations.dart lib/l10n/intl_messages.arb lib/l10n/intl_ru.arb
Regenerate icons
flutter pub pub run flutter_launcher_icons:main
Regenerate all json serialized .g.dart files
flutter packages pub run build_runner build --delete-conflicting-outputs