Skip to main content

In addition to helping you memorise, this code helps you do other things that I don't remember...

Project description

Mnemocards logo

Mnemocards CI pipeline status Mnemocards coverage status Mnemocards issues Mnemocards contributors Mnemocards total downloads Mnemocards downloads per month
In addition to helping you memorise, this code helps you do other things that I don't remember...


:books: Documentation: https://guiferviz.com/mnemocards

:keyboard: Source Code: https://github.com/guiferviz/mnemocards


๐Ÿค” What is this?

Mnemocards is a Python package originally intended for creating Anki flashcards from text files. It allows users to define a series of steps to read flashcards from any source, transform them and export them to different formats such as Anki APKG packages. Mnemocards is designed to be fully extensible, which means that users can create their own tasks and customize the card generation process to their specific needs.

Reading flashcards from text files has several advantages over binary formats or manually creating cards in the Anki app. Text files are easily readable and editable by humans. This means that users can easily understand and modify the flashcard content using common text editors, and also can use version control systems like Git to track changes and collaborate with others.

๐Ÿท๏ธ Features

  • Generates Anki APKG packages that you can later import into the Anki app.
  • Auto generate pronunciations from the words that you are learning.
  • Generates flashcards from text files that can be stored in Git repositories. This brings several positive things:
    • Keep track of changes.
    • Maintain different versions of flashcards using Git branches.
    • Easily share and collaborate with others. If you know how to work with Git you can create forks and pull requests to existing repositories.
  • Fully extensible architecture that allows you to define tasks that perform custom transformations on a list of notes.
    • Possibility to export flashcards to other existing flashcards apps.
    • Create indexes or analyze your collection of cards, create visualizations, clustering, analyze how the cards relate to each other...

๐Ÿค“ How it works?

To get started with Mnemocards, you'll need to have Python >= 3.10 installed on your computer. Then, you can install Mnemocards using pip:

$ pip install mnemocards

You can check that the installation went well by executing the following command:

$ mnemocards --version
โ•”โ•ฆโ•—โ•”โ•—โ•”โ•”โ•โ•—โ•”โ•ฆโ•—โ•”โ•โ•—โ”Œโ”€โ”โ”Œโ”€โ”โ”ฌโ”€โ”โ”Œโ”ฌโ”โ”Œโ”€โ”
โ•‘โ•‘โ•‘โ•‘โ•‘โ•‘โ•‘โ•ฃ โ•‘โ•‘โ•‘โ•‘ โ•‘โ”‚  โ”œโ”€โ”คโ”œโ”ฌโ”˜ โ”‚โ”‚โ””โ”€โ”
โ•ฉ โ•ฉโ•โ•šโ•โ•šโ•โ•โ•ฉ โ•ฉโ•šโ•โ•โ””โ”€โ”˜โ”ด โ”ดโ”ดโ””โ”€โ”€โ”ดโ”˜โ””โ”€โ”˜ X.Y.Z
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ <A super mega funny joke here> โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

If the joke made you laugh you can continue with this tutorial, otherwise this program is not for you and you should consider other alternatives.

Once you have Mnemocards installed, you can start creating your own flashcards. Let's start creating our own vocabulary file.

You can use the provided sample files as a starting point, or create your own. Mnemocards uses a configuration file to define the steps that will be used to process the flashcards. In this file, you can specify the tasks that you want to use, the order in which they will be executed, and any necessary parameters or settings.

Here's an example of a simple configuration file that reads in a CSV file containing flashcard data, and then generates an Anki APKG package:

steps:
  - type: ReadFile
    path: flashcards.csv
  - type: Anki
    deck:
      name: My Flashcards
      id: b45f6d48-d1ab-4d0e-80a9-08a2ab473a41
    note_type:
      type: BasicNoteType
  - type: Package

In this example, the first step reads in a CSV file called "flashcards.csv", the second step generates an Anki package with a deck named "My Flashcards" and a specific id, and the last step creates the APKG package.

You can run the configuration file using the mnemocards command:

Copy code mnemocards run my_config.yml This will execute the steps in the configuration file, and create the Anki APKG package.

You can also use the package to export your flashcards to other flashcard apps like Quizlet by adding a Quizlet task to the configuration file and providing the necessary credentials.

With Mnemocards, you can customize the flashcard generation process to suit your needs and easily collaborate with others. Give it a try and see how it can help you learn more efficiently!

TODO

๐Ÿงช Examples

Japanese Flashcards :jp: Thinks you will learn:
  • UnionPipeline task.
  • Audio generation.

DELETEME: Fast ideas

Mnemocards is a tool for processing your flashcards. Mnemocards first appeared with the objective of generating Anki APKG packages that you can later import into the Anki app. Mnemocards allow us to generate our cards from text files that we can store in repositories. Having text files in repos allow us to keep track of the changes, maintain different versions of our flashcards and easily collaborate with others (creating forks of existing projects or creating pull requests, for example). It is fully extensible, you can define tasks that perform transformations on a list of notes. You can also auto generate pronunciations from the words that you are learning. You may even export your flashcards to other existing flashcards apps. The possibilities are endless, you can create an index or somehow analyze your collection of cards, create visualizations, clustering, analyze how the cards relate to each other...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mnemocards-1.0.0a0.tar.gz (18.7 kB view hashes)

Uploaded Source

Built Distribution

mnemocards-1.0.0a0-py3-none-any.whl (22.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page