Giter Site home page Giter Site logo

ulangi / ulangi Goto Github PK

View Code? Open in Web Editor NEW
438.0 12.0 61.0 126.54 MB

Ulangi is a language flashcards app with spaced repetition system and more.

Home Page: https://ulangi.com

License: GNU General Public License v3.0

JavaScript 1.02% TypeScript 82.41% HTML 16.13% Java 0.05% Objective-C 0.10% Ruby 0.06% Swift 0.02% C 0.01% Shell 0.19% Dockerfile 0.01% Starlark 0.01% Pug 0.01%
ulangi language-learning react-native spaced-repetition spaced-repetition-system react-native-app anki

ulangi's Introduction

Open-source language learning tools


Introduction

Ulangi makes it easy for you to manage and create flash cards to learn languages. It comes with built-in dictionaries, translators, built-in TTS, image search engine and more. You can use different learning methods to memorize them, such as spaced repetition, writing, quiz... Everything about Ulangi (mobile, server, add-on, etc) is hosted in this repository.

Ulangi is completely free thanks to Midterm App. We are going to use some technology from it to make the desktop version.


Main apps

Ulangi (Full version)

Platform Store
iOS Download on App Store
Android Download on Play Store
Mac Not yet available
Windows Not yet available
Linux Not yet available

Development principles

  • Write type-safe code
  • Use design patterns
  • Make it easy to build/customize tools

Documentation

All docs are hosted here: https://ulangi.github.io/ulangi

We're adding more docs. Stay tuned!


Change log

Please view CHANGELOG.md file.


License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See full detail here.


Credits

ulangi's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ulangi's Issues

Show more data from dictionary

  • IPA for most languages (except Vietnamese)
  • Pinyin for Chinese
  • Romaji for Japanese
  • Romanization for Korean (re-parse required)
  • Japanese form (hiragana, romaji,...)
  • Chinese form (traditional, simplied)
  • Add missing IPA for most languages

Use custom view TopBar instead of native TopBar

Problems:

  • Native TopBar put constraints on design. For example, contentInsetStarts of TopBar on Android is set to 16dp by default.
  • It's not possible to add styles for text buttons (e.g. Save, Done buttons)
  • Future OS updates may affect the design.

By using custom views,

  • we can easily migrate to React-Navigation if required.
  • it's easier to update TopBar title and buttons through observables.

Add different review strategies in Spaced repetition

Currently, cards are reviewed in forward direction; that is, given a term answer what it means

Add 2 more strategies:

  • reversed => given definitions, answer what the term is.
  • alternating => change review direction every 3 levels
  • 50/50 => from level 1 to 5, cards are reviewed in forward direction; from level 5 to 10, cards are reviewed in reversed direction

opening the project with expo cli

please can you help me open the project with expo cli?
i tried download the files >extract> npm install > expo start
but i am getting error that react native not installed in this project.
actully i want test the app on my phone and try edit the code.
for learning purposes.
githubtoexpo

(Android) Root saga terminated without any reasons

This bug is hard to reproduce.

Hypothesis:

  • jsc bug?
  • infinite loop?
  • redux-saga bug?
  • Android lib error?
  • Adblocker?
  • Autorun?

Observations:

  • root saga was terminated
  • can happen after navigating to tab based screen
  • only happen on Android

Make writing better

  • Allow users to choose what to write (hanzi/kanji/hiragana)
  • Allow to skip
  • Add play audio

Update typescript, eslint, move common deps to root

"@typescript-eslint/eslint-plugin": "^2.24.0",
"@typescript-eslint/parser": "^2.24.0",
"eslint": "^6.8.0",
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-jest": "^23.8.2",
"eslint-plugin-simple-import-sort": "^5.0.2",
"prettier": "^1.19.1",
"typescript": "^3.7.5"

Fix Wiktionary attribution

Currently, we haven't put the license (CC-BY-SA 4.0) and link to the license along with the source in dictionary picker and in library.

A list of features that are guaranteed to be rolled out soon

The order is not guaranteed (usually small features will be rolled out first)

  • redesign review action bar
  • autoplay audio during review
  • allow to skip in Writing lesson
  • adjust number of feedback buttons (3, 4, or 5 buttons)
  • improve writing (ability to perform more actions during review)
  • allow to archive cards during review
  • duplicate prevention
  • add category bulk action
  • built-in IPA (pinyin, romaji,..)
  • remove stop words when searching dictionary
  • add suggestions picker
  • add web view screen (avoid redirecting outside the app)
  • add statistics screen (heat map)
  • randomize review
  • support iPad, tablets (with multi-tasking)
  • add more sorting options
  • make it compatible with FireOS (for Amazon store)
  • show all definitions in writing lesson
  • show due and new counts
  • randomize review on database level.
  • desktop version
  • use deep-linking to add terms from outside the app
  • add example
  • remember sort options
  • make font larger for Korean, Chinese, Japanese
  • add custom formatting (customize cards)
  • allow to hide extra fields during review

Add heat map

  • Add heat map to track user progress for spaced repetition and writing

Refactor store

  • Move makeInitialState to ulangi-mobile
  • Remove StoreEnv, StoreConfig as they no longer needed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.