Skip to main content

📘 a python nanolibrary for apply “spaced repetition” in learning purposes apps 📙

Project description

spacememo

📘 A python nanolibrary for apply “spaced repetition” in learning purposes apps 📙


npm version

PyPI version


Forget to logical process to know when to repeat the information for the optimal learning process of the user

Ideal for quizzes, micro learning, and practical exercises what requires domain


Installation

pip install spacememo

Usage

from spacememo import SpacedMemo

let memo = SpacedMemo()

# insert new values with the id number or string of the excercise or question
spacedRepetition.insertValue('idQuestion1');

# multiple values
[memo.insert_value(id) for id in ['id1', 'id2', 'id3']]

# optionally you can config a level of previous expertise to decrease initial frecuency instead default 'beginner' value
memo.insert_value('idQuestion6', {'domain': 'medium'})
memo.insert_value('idQuestion6', {'domain': 'expert'})


# spacememo gives the question or excersice that you need to resolve
memo.getValue() # returns an id

# evaluate the performance in last excersice or question with a boolean result
memo.evaluate(False)

# you can extract the data to render the order list for the user
memo.get_space_map()['values_queue']  # return an array of id elements

# and reorder the queue if user need to
config_value = memo.get_space_map().values_map

memo = SpacedMemo({
    'values_queue': user_reorder_list,
    'values_map': config_value
})



# or add in a persistent database and reuse in next sessions
saved_in_db = memo.get_space_map()  # return a config object for persistent saving

my_new_study_session = SpacedMemo(saved_in_db)


# even you can change the default start position in queue based on your business requirements
memo.insert_value('idQuestion6', {'initial_position_in_queue': 0})
memo.insert_value('idQuestion6', {'initial_position_in_queue': 3, 'domain': 'medium'})

The purpose of this library

Spaced repetition algorithms based in queues gives lighter libraries and more easy to use

Any approach that you decide to implement a spaced repetition algorithm or library is good. The important thing of spaced repetition is:

  • Estimulate the newest information more often than information with more domain
  • Maintenance old knowledge distant little by little to avoid forget it
  • Identify the question or skill with remember problems and review it

Happy learning! 📗

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

spacememo-0.1.4.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file spacememo-0.1.4.tar.gz.

File metadata

  • Download URL: spacememo-0.1.4.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for spacememo-0.1.4.tar.gz
Algorithm Hash digest
SHA256 e06ddb364c0c6a4f323be68b4e26346013c56cb8868b5a794f62ee61a972a67a
MD5 3e94697c0ee61484ec34860028fba7c0
BLAKE2b-256 1a1aa43c5018ecfd1a861035e0af567cc50249641006897ba316d1ff5ab06fb2

See more details on using hashes here.

Supported by

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