Skip to main content

README

Contributors Forks Stargazers Issues MIT License LinkedIn


Celo Compose Flutter

A comprehensive starter kit for rapid Web3 application development using Flutter.

View Demo·Report Bug·Request Feature

Table of Contents

About The Project

Project DEMO GIF HERE

Why Celo Composer Flutter?

  • One command to get started - Type flutter run to start development in your mobile phone.
  • Works with all major mobile crypto wallets.
  • Support for Android, IOS (Web, Windows, and Linux coming soon).
  • Working example app - The included example app shows how this all works together.
  • Easy to use and alwasy updated with latest dependencies.

(back to top)

Directory Structure

├──.vscode — VSCode settings including code snippets, recommended extensions etc.
├──android — Contains all the Android specific code.
├──ios — Contains all the IOS specific code.
├──lib — Core modules, controllers, UI Code, constants, etc.
├──.gitignore — A gitignore file specifies intentionally untracked files that Git should ignore.
├──pubspec.yaml — A pubspec is generated when you create a new Flutter project.

Built With

(back to top)

Getting Started

Clone the project from this repo, install project dependencies, update the environment variables found in core/*.env, and start hacking:

$ git clone https://github.com/viral-sangani/walletconnect_flutter
$ cd ./walletconnect_flutter
$ flutter pub get
$ flutter run

The app will start in the conenct device of connected emulator/simulator.

(back to top)

Roadmap

  • Add Android support
  • Add IOS support
  • Add Web support
  • Add Desktop support
    • Linux
    • Mac
    • Windows

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Acknowledgments

Use this space to list resources you find helpful and would like to give credit to. I've included a few of my favorites to kick things off!

(back to top)

Translations 🌐

This project should rely on easy_localization. This approach is recommended even if there's only a locale needed.

  1. To add a new localizable string, open the en-US.json file at assets/lang/en-US.json.
{
"new_string": "New String"
}
  1. Use the new string
import 'package:easy_localization/easy_localization.dart';

@override
Widget build(BuildContext context) {
return Text("new_string".tr());
}

Adding Supported Locales

Update the CFBundleLocalizations array in the Info.plist at ios/Runner/Info.plist to include the new locale.

...
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>es</string>
</array>
...

Adding Translations

  1. For each supported locale, add a new JSON file in assets/lang.
├── assets
│ ├── lang
│ │ ├── en-US.json
│ │ └── fr-FR.json
  1. Add the translated strings to each .json file: app_en.json
{
"new_string": "New String",
}

(back to top)