GithubHelp home page GithubHelp logo

ethanclawsie / learn Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 3.62 MB

Command-line application designed to help users learn and memorize terms efficiently.

Batchfile 0.41% Shell 0.41% Go 99.17%

learn's Introduction

Learn CLI

Learn CLI is a command-line application designed to help users learn and memorize terms and their definitions efficiently. Whether you're studying for an exam, expanding your vocabulary, or simply enhancing your knowledge, Learn CLI provides a convenient way to learn and practice.

Features

  • Customizable Learning Experience: Choose between learning terms in random order or sequentially to suit your preferences.
  • Chunked Learning: Terms are grouped into manageable chunks, making it easier to absorb and retain information.
  • Persistent Configuration: Learn CLI remembers your last used file and preferences, so you can pick up where you left off.
  • Interactive Learning: Engage in an interactive learning process where you input your definitions and receive immediate feedback.
  • Easy Setup: Simply provide the path to a text file containing terms and definitions, and you're ready to start learning.

Download and Run

  1. Download the Executable

    Visit the Releases section of this repository and download the appropriate binary for your operating system (e.g., learn for Unix-like systems or learn.exe for Windows).

  2. Move the Executable

    Place the downloaded learn (or learn.exe) executable in a directory that is included in your system's PATH. This step is necessary to run the CLI from any location in the terminal.

    • For Unix-like systems (Linux and macOS), you can add the following line to your shell profile file (e.g., ~/.bashrc, ~/.zshrc, or ~/.bash_profile):

      export PATH=$PATH:/path/to/learn-cli-directory
    • On Windows, you can add the directory containing learn.exe to your system's PATH via the system settings.

  3. Run the CLI

    You can now run the Learn CLI from anywhere in the terminal by typing:

    learn
  4. Configuration:

    • The application will prompt you to provide the path to a text file containing terms and definitions. If you're returning to your previous session, it will remember your last-used file.
  5. Learning:

    • Choose between learning terms randomly or sequentially as per your preference.
    • Follow the on-screen prompts to answer the definitions and receive immediate feedback.
    • Incorrect answers will be re-asked until you get them right.
  6. Completion:

    • Upon successfully answering all terms, the application will congratulate you on completing the learning session.

Example Term File Format

The text file containing terms and definitions should follow this format: Term : Definiton

Configuration File

Learn CLI uses a configuration file (learnconfig.json) to store your preferences and the last-used file path. This file is located in your user's home directory.

Dependencies

Learn CLI relies on the following Go packages:

  • github.com/urfave/cli: For creating the command-line interface.
  • Standard Go libraries for file handling and randomization.

learn's People

Contributors

ethanclawsie avatar

Stargazers

 avatar

Watchers

 avatar

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.