Flashcard and Kanji writing Flutter App. Stopped working on this Project. Currently just a graveyard.

Overview

KanjiMaru

Not in development anymore for reasons I shall not state here. Still loved the design I created, so it will stay up.

Flashcard and Japanese Characters writing mobile application made in Flutter. Still a work in progress!

As I have been frustrated by the fact that apps on the market do not provide a 'good' way to learn to write Japanese Characters, I have decided to create my own app.

Inspired by both Anki and WaniKani, tools which I still use at the moment on my Japanese learning journey. While they are great tools, I have been wanting to create something of my own for a while.

UI

Current Mock 'Overview Screen' in Figma

Current 'Overview Screen' in Flutter

Planned Features

Barebone features that this project will have to satisfy for me. Subject to change. UIs will change throughout time, so a tick does not mean it's the final version.

  • Front-end

    • Login Page
    • Overview Page
    • Statistics Page
    • Settings Page
    • Games Page
  • Firestore

    • Login System
      • Email/Password login
      • Google Login
      • Facebook Login
      • Anonymous Login
    • Firestore Integration
    • Update UI on Firestore Changes
    • Update Firestore on User Interaction/Background Processing
    • Create models to represent data to be stored in Firestore
  • SRS

    • Implement the SM2 algorithm
    • Hook up SRS to the rest of the application
    • Create efficient ways of mapping SRS data to Firestore
  • Learn System (Cannot review what you have not learned yet.)

  • Flashcard (Review) System

  • Kanji Writing Cards

    • Implement Writing Package
  • WaniKani Import

  • Implement Import from pre-defined decks

  • Japanese Character Data

    • Deserialize JP Data and Graphics into usable format
    • Make Deserialized data available via providers
    • Hook up Backend to this Data
  • Learning Games

    • Implement Shiritori
    • Implement Game where you have n pairs of cards mixed up, and you try to match them (Meaning -> Reading or other way around)

Where does the name come KanjiMaru come from?

It comes from an adorable fluff ball named Maru. The reason I remember the Kanji '丸'.

Click to watch the video. You must watch it!

Maru

Comments
  • Change UI to affect new changes to distinction between vocab and kanji

    Change UI to affect new changes to distinction between vocab and kanji

    The idea between separating the Vocab and Kanji was not a good idea. Instead I'll have the user decide during list creation whether each word has the writing feature or not. On the Overview page, instead of 'Vocab' and 'Kanji', we'll have a 'Learn' and 'Review' box.

    High Priority Feature 
    opened by ExitTrance 1
  • Deserialize the JSON JP Dictionary and Graphics

    Deserialize the JSON JP Dictionary and Graphics

    Use the following snippet as guideline.

    import 'dart:convert';
    
    void main() {
      String json = '{"characters": [{"char":"1","sm":"1"},{"char":"2","sm":"2"},{"char":"3","sm":"3"}]}';
      //var encoded = jsonEncode(json);
      var characters = jsonDecode(json)['characters'];
      var map1 = Map.fromIterable(characters, key: (e) => e['char'], value: (e) => {'char': e['char'],'sm': e['sm']});
      print(map1['1']);
    }
    
    opened by ExitTrance 1
  • Modify the 'Daily Study Goals' section to include the 'Daily Lessons Goal'.

    Modify the 'Daily Study Goals' section to include the 'Daily Lessons Goal'.

    Alongside the Daily Reviews Goal, add the Daily Lessons Goal.

    The progress indicator will also need to be changed to be a combination of both the Lessons and Reviews.

    High Priority Feature 
    opened by ExitTrance 0
  • Add tag/labels to words while adding words to a list

    Add tag/labels to words while adding words to a list

    These tags labels can be in the form of JLPT/N level, Jojo level, classifying the word as a noun/verb/adverb etc. Might need to scrape a website like this for data, or find an API.

    Low Priority Feature 
    opened by ExitTrance 0
  • Add audio to learning and review system

    Add audio to learning and review system

    As of now, the addition of audio is still something I'm thinking about. It's not something that will be added immediately, but is something that is required for smooth learning.

    High Priority Feature 
    opened by ExitTrance 0
Owner
Stefan Dourado
RHUL MSci Software Engineering Graduate| English | German
Stefan Dourado
just a flutter project called working_project that projects the project on the working.

Flutter & Firebase Realtime Apps This is a Shipper app that can be used as a shipper hooker using Flutter & Firebase. Go drawsql.app/c-5/diagrams/work

DokuroGitHub 0 Jan 1, 2022
Flashcard App where you can learn different topics and create your own flashcards in Google Drive.

flashcard_project Flashcard app connected with Google Spreadsheet Getting Started This is a Flutter Project that works on iOS, Android, Web and MacOS.

Max Weber 11 Oct 24, 2022
This is the code for the POAPin app, which is written in Flutter and currently supports iOS, Android, and Web platforms.

POAPin This is the code for the POAPin app, which is written in Flutter and currently supports iOS, Android, and Web platforms. ?? Get the app Platfor

Glory Lab 17 Nov 7, 2022
Warning: Xournal++ Mobile is currently in early development and not yet stable

Xournal++ Mobile Warning: Xournal++ Mobile is currently in early development and not yet stable. Use with caution! A port of the main features of Xour

Jonathan Baginski 1 Jun 6, 2022
🌈 Repository for a compass project, basically an App for displaying bank transfers, with API requests, Flag persistence, Infinite Scroll, Error Handling, Unit Tests, Extract Sharing working with SOLID, BLoC and Designer Patterns.

?? Green Bank Aplicação desenvolvida em Flutter com intuito de trabalhar conexão com API, Gerenciamento de estado usando BLoC, Refatoração, Arquitetur

André Guerra Santos 28 Oct 7, 2022
Flutter Plugin for Requesting and Writing Reviews in Google Play and the App Store

Flutter Plugin for Requesting and Writing Reviews in Google Play and the App Store. Apps have to be published for the app to be found correctly.

Flutter Community 274 Jan 4, 2023
Sibyl App written with Dart/Flutter. (My first experience in writing a real android app in flutter).

sibyl_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if thi

ALi.w 3 Feb 17, 2022
Cross-platform flutter plugin for reading and writing NFC tags. Not maintained anymore - not looking for new maintainer, fork instead.

nfc_in_flutter NFC in Flutter is a plugin for reading and writing NFC tags in Flutter. It works on both Android and iOS with a simple stream interface

Andi Semler 113 Sep 28, 2022
Create dart data classes easily, fast and without writing boilerplate or running code generation.

Dart Data Class Generator Create dart data classes easily, fast and without writing boilerplate or running code generation. Features The generator can

null 186 Feb 28, 2022
Flutter-writting-prompt - Flutter example app used to show Writing Prompts to the user

Writing Prompt A writing prompt application designed to showcase an approach to a "Clean"er architecture in Flutter with Bloc and RxDart, including Un

Gonçalo Palma 42 Dec 11, 2022
null 1 Jan 8, 2022
Glass-Design - Glass Design on one page writing in Flutter

glassdesign writing in Flutter framework / GlassDesign fait en Flutter framework

Tommy 6 Jun 15, 2022
Backbone - A Dart framework for writing REST APIs from an Open API spec

The Backbone Dart Backend Framework A Dart framework for writing REST APIs from

Marcus Twichel 39 Oct 6, 2022
A zero-dependency web framework for writing web apps in plain Dart.

Rad Rad is a frontend framework for creating fast and interactive web apps using Dart. It's inspired from Flutter and shares same programming paradigm

null 70 Dec 13, 2022
A collection of bricks to be more productive when writing code.

A collection of bricks that enable developers to be more productive when writing code. Bricks ?? Brick Description Version clean_architecture_global_s

Jônatas Brito 10 Nov 12, 2022
A thought experiment on writing a strange API for Dart.

Operator Frog ?? What is Operator Frog Operator Frog is a < 24h thought experiment that I did. I wanted to know if we could write a strange looking AP

Jochum van der Ploeg 19 Dec 8, 2022
Profile page ui - First Flutter Project. Just basic UI and Interaction experimentation.

Profile Page UI My first Flutter UI Page. Just experimenting with App Dev. Features The main home screen looks initially like this, The Follow Button

Aryan Bakshi 0 Jan 1, 2022
This package helps developer to sort the flutter/dart packages and plugins alphabetically, This makes it easier when managing too many packages and when working with teams

Package helps to sort the flutter/dart packages and plugins alphabetically, This makes it easier when managing too many packages and when working with

DANCHE 7 Dec 21, 2022
A Flutter Accident reporting App working in both iOS and Android

Flutter Accident Reporting App A Flutter Accident reporting App working in both iOS and Android.This project total size of all Dart files is 4714 bite

sk shamimul islam 32 Oct 13, 2022