🐣 Introduction
Welcome to the Frankly repo!
Frankly is an online deliberations platform that allows anyone to host video-enabled conversations about any topic. Key functionalities include:
- Matching participants into breakout rooms based on survey questions
- Creating structured event templates with different activities to take participants through
Frankly is a Flutter app with a Firebase backend.
Overview
🪧 This README includes the following sections:
- Overview: An overview of the contents of the README and a description of the contents of major directories in the repo.
- Running Frankly Locally for Development: Instructions for setting up and running the app locally.
- Testing
- Hosting Your Own Instance of Frankly: Instructions for setting up a full production-ready instance of the app.
- Troubleshooting and FAQ
Repo contents
This subsection provides a description of the contents of major directories in the repo.
💡 Important note: For the rest of this README, most terminal commands should be executed from within the client
directory (or subdirectories of it when specified).
-
client
The main Flutter app. -
data_models
These are the data models used by both the client and Firestore. -
firebase/functions
These are the Firebase Functions which are deployed on Google Cloud and called by the Flutter app. Firebase functions are built on top of Cloud Functions. -
firestore/firestore.rules
This is a Firestore security rules file which defines which Firestore documents are readable by which users. -
matching
Containslib/matching.dart
, which is the logic for matching participants into breakout rooms. See the README in this directory for links to helpful documentation on matching.