Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/digitalkaoz/rechentrainer
let your kids train some basic math
https://github.com/digitalkaoz/rechentrainer
flutter learning mathematics mobx
Last synced: about 10 hours ago
JSON representation
let your kids train some basic math
- Host: GitHub
- URL: https://github.com/digitalkaoz/rechentrainer
- Owner: digitalkaoz
- Created: 2021-09-18T18:06:42.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-09-19T12:21:12.000Z (over 3 years ago)
- Last Synced: 2024-10-18T17:13:07.267Z (4 months ago)
- Topics: flutter, learning, mathematics, mobx
- Language: Dart
- Homepage:
- Size: 4.63 MB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rechentrainer
[![rechentrainer](https://github.com/digitalkaoz/rechentrainer/actions/workflows/ci.yml/badge.svg)](https://github.com/digitalkaoz/rechentrainer/actions/workflows/ci.yml)
![Coverage Badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/digitalkaoz/1df752c5d53b71493c5c0e998ff350c9/raw/rechentrainer.json)> train some basic math equations on time for kids!
[Web Version](http://digitalkaoz.github.io/rechentrainer)
[](./assets/screenshots/android_phone/users_set.png)
[](./assets/screenshots/android_phone/configuration.png)
[](./assets/screenshots/android_phone/calculation.png)
[](./assets/screenshots/android_phone/result.png)
[](./assets/screenshots/android_phone/history.png)## Features
* Crossplattform (ios/android/web) Controls
* Extensive Test Suite
* randomized equations using [`petitparser`](https://github.com/petitparser/dart-petitparser)
* [Mobx](https://mobx.netlify.app/) for state managment
* multiple users (with own configurations and results)
* Storing results and users on device using [localstore](https://pub.dev/packages/localstore)
* some confetti animations for the results using [confetti](https://pub.dev/packages/confetti)### Basic Algebra Generator
> at first, thanks for this awesome library!
The `petitparser` allows us to generate a parser for basic algebra.
We defined only basic arithmetics `+`, `-`, `*`, `%`.
The library is then able to solve equations from string like `5 + 4 * 2`.We can configure the Generator with the following constraints:
* `range`: the *Zahlenraum*, means the upper boundary for the equation like `100`, all equation results wont exceed this boundary
* `arithmetics`: the arithmetics to use, can be one or all of the defined arithmetics, giving `+` would only generated equations with `+`
* `chain`: how many arithmetics to include, `2` means use 2 random arithmetics like `1 + 2 + 3`, while `1` would result in equations like `2 * 3`
* `count`: how many training sets to be generated## Development
```shell
$ flutter pub get
$ flutter packages pub run build_runner build --delete-conflicting-outputs
```## Testing
```shell
$ flutter test
```or for running Integation-Tests:
```shell
$ flutter drive --driver=integration_test/integration_test_driver.dart --target=integration_test/app_test.dart -d
```> tests working cross platform too!
## Deployment
> testing and releasing works in *Github-Actions*