This repo contains source code for the official Flutter Client of Open CodeYard
A higly configurable community website template built using Flutter
:construction:Actively under development:construction:
Documentation :notebook:
dart doc .
from root of project directory to generate documentation webpage.This project depends heavily on firebase. A few resources to get you started if this is your first Firebase project:
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Flutter App:
Fork and clone this repository.
cd into ocyclient
directory.
Run flutter clean
command.
Run flutter pub get
command.
Run flutter run
command.
Firebase:
Create a firebase project
Add android app with your package name in firebase console.
Enable Google Auth from Authentication
menu in Firebase.
Create a file named env and store github_access_token in it (See env_example.txt file in project root for example). Check this link to see how to create a github access token.
Generate SHA-1 key hash
for your debug keystore from your pc. This needs to be added to SHA certificate fingerprints
section under your android app in Firebase project settings
. Without this step Google login won't work.
Enable Cloud Firestore
Recommended rules for Firestore
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if
request.auth != null;
}
}
}
Enable Cloud Storage
Download google_services.json
from Console
-> Project Settings
. File is present in app section. SDK instructions found in the same page
(Optional) Enable Cloud Messaging from Firebase Console if you wan't notifications to work in your app
(Optional) If released to play store get SHA-1 key hash
from playstore and upload them to firebase, otherwise google sign in won't work in play store app.
Made with contributors-img.
Check Contributing.md for guidelines on contributing to this repo.
If you have a question, please feel free to contact us through email or our telegram community channel.