Memo

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

Mobile App DevelopmentDartBSD-3-Clause

Abstract

Memo is an open-source Mobile App Development project. Memo is an open-source, programming-oriented spaced repetition software (SRS) written in Flutter. It is built using Dart, Flutter. The complete source code is publicly available on GitHub under the BSD 3-Clause "New" or "Revised" License, making it a useful reference for students building a Mobile App Development mini project or final-year project.

1. Introduction

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

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

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.

2. Objective

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

This project demonstrates how Dart, Flutter can be applied to a real-world Mobile App Development problem.

4. Technology Stack

DartFlutter

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Flutter SDK
  • Android Studio or VS Code with Flutter plugin
  • Android / iOS device or emulator
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/olmps/memo.git
cd memo

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add push notifications with Firebase Cloud Messaging
  • Add offline support with local caching
  • Publish an internal test build on the Play Store

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Which framework is used and why (native vs cross-platform)?
  2. How is app state managed across screens?
  3. Where is the data stored — locally, Firebase or a REST backend?
  4. How are permissions (camera, location, storage) handled?
  5. How would you publish this app to the Play Store / App Store?

9. Source Code & License

This project is developed by olmps and published on GitHub under the BSD 3-Clause "New" or "Revised" License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on a Mobile App Development project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Mobile App Development Internship