All Projects → cramkle → cramkle

cramkle / cramkle

Licence: MIT License
Web-based flashcard studying app

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects
CSS
56736 projects

Projects that are alternatives of or similar to cramkle

roamsr
Spaced Repetition in Roam Research
Stars: ✭ 96 (+269.23%)
Mutual labels:  spaced-repetition, srs
anki-apkg-export
📖 Generate decks for Anki (spaced repetition software)
Stars: ✭ 124 (+376.92%)
Mutual labels:  spaced-repetition, srs
awesome-supermemo
A list of resources which can be used with SuperMemo.
Stars: ✭ 72 (+176.92%)
Mutual labels:  spaced-repetition, srs
Lazycard
A simple flashcard application where cards are formatted with Markdown.
Stars: ✭ 18 (-30.77%)
Mutual labels:  spaced-repetition, flashcard
VueStudy
Vue.js学习系列示例代码及教程
Stars: ✭ 80 (+207.69%)
Mutual labels:  study
spaced-inbox
A minimal spaced writing inbox
Stars: ✭ 30 (+15.38%)
Mutual labels:  spaced-repetition
resumen-estudios-git
Resumen estudios Git
Stars: ✭ 28 (+7.69%)
Mutual labels:  study
cissp
CISSP Study Materials PDF and Web Copy for 2021
Stars: ✭ 24 (-7.69%)
Mutual labels:  study
TamoStudy
TamoStudy is a productivity work and study timer that implements a fun, virtual pet to help you stay driven to focus.
Stars: ✭ 35 (+34.62%)
Mutual labels:  study
typescript-programming-study
Do it typescript programming study repository 📘
Stars: ✭ 30 (+15.38%)
Mutual labels:  study
42-algorithm
data structure and algorithm
Stars: ✭ 56 (+115.38%)
Mutual labels:  study
go-oryx-lib
The public multiple media library for https://github.com/ossrs/go-oryx.
Stars: ✭ 98 (+276.92%)
Mutual labels:  srs
computeiro
Computer science courses, books and exams in your pocket. Built with Flutter and Free! ❤️
Stars: ✭ 27 (+3.85%)
Mutual labels:  study
ilms-react-native
NTHU iLms app using react-native!
Stars: ✭ 22 (-15.38%)
Mutual labels:  study
lectures
Computer Vision & Deep Learning course materials
Stars: ✭ 27 (+3.85%)
Mutual labels:  study
FlashCards
Learning Blazor By Creating A Flash Cards Application
Stars: ✭ 17 (-34.62%)
Mutual labels:  spaced-repetition
emacs-workshop
Emacs Course Prep Material
Stars: ✭ 82 (+215.38%)
Mutual labels:  study
simple-about-rust
Пошаговые уроки по языку программирования Rust для начинающих
Stars: ✭ 25 (-3.85%)
Mutual labels:  study
HealerJean.github.io
HealerJean的梦想博客,代码都在博客里面(_posts下面具备很多代码,请大家耐心查找,以及MarkDown笔记)
Stars: ✭ 27 (+3.85%)
Mutual labels:  study
Eloquent
Eloquent is a bible study tool for macOS
Stars: ✭ 88 (+238.46%)
Mutual labels:  study

Cramkle

CI

Cramkle is a web-based flashcard studying app that helps you organize your study using a spaced repetition algorithm, used in many flashcard apps and learning websites, such as Anki and SuperMemo.

Getting started

If you want to access the Cloud version of Cramkle, go to www.cramkle.com, else you can follow the instructions below.

git clone https://github.com/cramkle/cramkle
cd cramkle

# Install dependencies
yarn

# Compile messages translations
yarn compile

If you want to run this project locally, you will also need to setup and run Hipocampo, which is our GraphQL API.

Development

Now that you've setup all the dependencies for both this project and Hipocampo, you can run the local server with the command below.

yarn dev

Adding and updating translations

This project uses lingui-js for i18n. In case you need to translate something that isn't yet translated, or you are adding some new texts, you'll need to use one of the macros from the lingui package. Lingui comes with several macros to handle all sorts of cases of language translation, but the most common one is just plain text. For simple texts, you can use either the Trans macro or the t macro (in conjunction with the useLingui hook).

Now, to translate something you can just wrap it up with one of lingui macros, like one of the two above:

import { Trans, t } from '@lingui/macro'
import { useLingui } from '@lingui/react'
import React from 'react'

const ComponentWithTrans = () => {
  return (
    <span>
      <Trans>My translated text</Trans>
    </span>
  )
}

const ComponentWithUseLingui = () => {
  const { i18n } = useLingui()

  return (
    <span>
      {i18n._(t`My translated text`)}
    </span>
  )
}

After adding the macro to the component like in the example above, you'll need to run yarn extract so lingui an extract those texts into PO files (under ./src/locales/). Then, edit the translation in the corresponding files and run yarn compile. You can see more info and other examples on the Lingui docs.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].