---
# System prepended metadata

title: Material Math Brainstorming
tags: [Brainstorming]

---

# Material Math Brainstorming

###### tags: `Brainstorming`

- [ ] Re-factor the UI on Figma to be Overlay compatible 
- [Prototype Figma Page](https://www.figma.com/file/tExg6nS5uSG1ZnUzJnAwkx/Prototype?node-id=0%3A1)
- [User Journey Figma Page](https://www.figma.com/file/OkJ0nSorCnNLX0IWHmATev/User-Journey)

#### Introduction (2 to 3 lines on what material math is)

Material Math is an interactive and challenging way to practice mental math concepts and sharpen your grasp on them. It provides unlimited mental math practice regarding arithmetic problems for anyone who wants to polish and hone their math skills.
You can select how you want your practice to go:

* Timed Practice: A timed practice session means that you can challenge yourself to as many problems as you can solve in a given time.

* Maths Worksheet: If you want to practice at a pace you like, you can have the maths worksheet session and practice up to a 100 problems.

#### Motivation (describe that the application Boltz was the motivation behind it and MM is its spiritual successor)

Material Math is the spiritual successor to Boltz, a mental math app for Android. Grey software is building off of Boltz’s great work, and bringing Boltz's principles of unlimited fun math practice, interleaved concepts, and spaced repetition to the web.

#### Tools and Technology (describe in which languages and framework has MM been developed. A detailed description of each language and where is it being used in the code, the frameworks and why they have been selected)
•	Vue
Vue is a progressive framework that is used to  build interactive user interfaces. Material Math is built with Quasar which uses Vue.js as its base UI framework.
•	Typescript 
•	Quasar
•	Xstate

Arsala: We may not want to put Xstate in here yet since it is still experimental for this app 

#### Code Base (details and key concepts about the code, what was the base, what’s recent i.e. investigating FSMs, implementing state machines in UI of the code)

#### Onboarding Guide
* Step 1: Start and complete the onboarding to Grey Software
* Step 2: People at least have GitLab and GitHub accounts
* Step 3: Join the Grey Software discord channel
* Step 4: Create a branch on GitLab of their own to contribute to MM

Arsala: before this, we must have issues for them to work on. however, if they want to play around with the code it would be best for them to fork to their own name space 

Arsala: I think one of the primary considerations for the codebase is converting to Quasar v2 and Vue 3. They are in beta but will be stable soon 

![](https://i.imgur.com/6Qph27m.png)








