Memo: an open-source, programming-oriented spaced repetition software (SRS) written in Flutter

English | Portuguese

Memo



Monorepo for Memo.

Memo is an open-source, programming-oriented spaced repetition
software (SRS) written in Flutter.

As of now, this project is designed to only output builds for Android and iOS. Even though, given the current
stability of Flutter SDK for desktop (Windows, Linux and macOS) and web, there is a high probability that this
project will eventually support builds for all platforms.


This README is meant to guide how this project is structured and should serve as a guide to help the project scale with
the current and future requirements. Think of it as a flexible set of rules that guides the project’s decisions. While
they can (and probably will) change over time, discussions must be raised to trigger such changes: this means that
we will think/question ourselves before taking an action that breaks any rational decision taken here. It is also
effective to guide PR discussions.

Setup

If you have no idea how to install Flutter and run it locally, check this
Get started.

If you have Flutter setup locally, on the project’s root folder, install pubspec dependencies by running
flutter pub get.

Firebase dependencies

Memo has Firebase dependencies that needs to be setup before running locally. More information on this in
ARCHITECTURE#firebase.

Architecture

How this application works from inside and how it interacts with external dependencies – written in details in
ARCHITECTURE.md.

Background

If you’re interested in checking out an overview about how we dealt with this project’s software process (inside our
team), check out .process/ (sorry, for now only in ptBR).

Contributing & Good Practices

See CONTRIBUTING for details about how to contribute to the project.

License

Memo is published under BSD 3-Clause.

Sponsors

This project was built with the help of the sponsors below:

GitHub

https://github.com/olmps/memo