First of all, thank you for thinking about contributing. 🔥
You're more than welcome to contribute to the project. When contributing, please keep in mind that the project is open source, therefore is maintained by several people - your code should be simple and readable. If there's a specific question you need to discuss with someone, please join our Slack.
First of all, you should join our Slack, if you haven't already. Joining Slack is a great opportunity to meet the contributors of FogosPT projects and to discuss how you can help.
When you decide to contribute, gives us a shout at Slack so we can add you to the contributors (it's easy for us to test and validate your contributions if you branch of our repo than forking to your own repo).
If you already know us, take a look at the issues and take a stab at them. We'll try to make the issue as verbose as possible, so it is easy for you to help. When you're done, create a Pull Request (on the PR's description, you should include closes #<issue-number>
so you know what issue you're fixing and to make sure the issue is closed when we merge your PR).
If you have a suggestion of a feature or a thing that should be improved, speak with us on Slack. We'll be more than happy to listen to your thoughts.
You don't need to code to help us. If you see some bugs or other things that could be better, open an issue on Github.
This app is built with Flutter and Dart 2, follwing Redux's design Pattern.
Make sure you have installed Flutter following these instructions.
Important: We use the stable
Flutter channel. Make sure you are on the same channel running
$ flutter channel stable
Clone our repo and check flutter doctor
$ git clone https://github.com/FogosPT/fogosmobile
$ cd fogosmobile
$ flutter doctor
Fix anything flutter doctor
asks.
Make sure you have a device connected (Simulator or Emulator or a real device connected) and then run
$ flutter run
You can set up Visual Studio Code or IntelliJ IDEA/Android Studio to do this for you.
ATTENTION: If you're thinking about working with an Android Simulator or building for Android, you'll need to do these extra steps:
- create a file
key.properties
inside theandroid/
folder and inside write:
FCI_KEYSTORE_PASSWORD=myKeystorePassword
FCI_KEY_ALIAS=MyReleaseKey
FCI_KEY_PASSWORD=myKeypassword
This file is on .gitignore
so it shouldn't show up on git status
. If it does, be sure to not commit that file.
After that, everything should be working normally.
If you want to know more about Dart and Flutter, follow this useful links:
- Flutter FTW: Top Articles about Flutter
- Flutter — It’s Easy to Get Started
- What’s Revolutionary about Flutter
- The Fluture is Now!
- About Redux - Introduction to Redux in Flutter
- Flutter Create: A back-end dev gets Flutter running for the first time
- Flutter: How I built a simple app in under an hour from scratch. And how you can do it too.
- Flutter: Bookshelf App Part 2, Personal Notes and Database Integration (continuation of the previous article)
- Flutter: Introduction of Routing and navigation
- Getting Your Hands Dirty with Flutter: Basic Animations
- How to use dynamic home page in Flutter?
- Reactive app state in Flutter
- Inheriting Widgets
- A new Flutter app: from flutter create to the app store
- Flutter hands on: Building a News App
- How to build a Cryptocurrency price list app using Flutter SDK
- Flutter : From Zero To Comfortable
- Flutter 1: Navigation Drawer & Routes
- Flutter 2: Dynamic Drawer List, Stateful Widgets, Forms and Validation
- Building WhatsApp UI with Flutter Io and Dart
- Building WhatsApp Ui with Flutter Part 2 : The Chat List
- Really awesome Dart & Flutter Tutorial Series by Tensor Programming on Youtube and here is his GitHub
If you need to know anything that is not on this document, feel free to reach out via Slack or Twitter.