LibreLingo๐Ÿข ๐ŸŒŽ ๐Ÿ“š a community-owned language-learning platform

Overview

Build status This project is using Percy.io for visual regression testing. BCH compliance David

LibreLingo

a community-owned language-learning platform

ยป Try LibreLingo now! ยซ

๐Ÿ’ฌ Chat โ€ข ๐Ÿ‘ฉโ€๐Ÿ’ป Contribute! โ€ข ๐Ÿ’ต Sponsor โ€ข ๐Ÿ“„ Development docs โ€ข โ˜Ž๏ธ Schedule a call about Librelingo

About LibreLingo

LibreLingo's mission is to create a modern language-learning platform that is owned by the community of its users. All software is licensed under AGPLv3, which guarantees the freedom to run, study, share, and modify the software. Course authors are encouraged to release their courses with free licenses.

If you want to know why I built LibreLingo, I recommend reading my article. If you agree with LibreLingo's mission, consider helping to build and maintain it, and please consider making a monetary contribution.

Table of Contents
  1. About LibreLingo
  2. Platform
  3. Milestones
  4. Attributions
  5. Articles
  6. Become a contributor
  7. See also

Platform

Web app

The LibreLingo web app is a lightweight, interactive web app for learning foreign languages using LibreLingo courses.

Features:

  • ๐ŸŽฏ practice using interactive exercises
  • ๐Ÿ—“๏ธ spaced repetition
  • ๐Ÿ’พ save and monitor progress
  • ๐Ÿ” synchronise progress across multiple devices
  • ๐Ÿ“ฑ works on various devices such as phones, tablets and desktop computers

Screenshots

librelingo-yaml-loader

librelingo-yaml-loader is a Python ๐Ÿ package that lets you load LibreLingo courses to create software based on LibreLingo.

To see an extensive tutorial, check out this article.

Setup

librelingo-yaml-loader can be installed using pip:

pip install librelingo-yaml-loader

Loading courses in a Python program

You can use librelingo-yaml-loader to load YAML-based LibreLingo courses in your Python program.

from librelingo_yaml_loader import yaml_loader

course = yaml_loader.load_course("./path/to/my/course")

load_course returns a Course() object

librelingo-json-export

librelingo-json-export is a Python ๐Ÿ package that contains modules that let's you export LibreLingo courses into JSON files that will be read by the web app. This might be useful if you want to deploy YAML-based LibreLingo courses as a web app.

Setup

librelingo-json-export can be installed using pip:

pip install librelingo-json-export

Exporting courses to JSON

librelingo-json-export has a command line program that can export YAML-based LibreLingo courses into the JSON format used by the web app.

Usage: cli.py [OPTIONS] INPUT_PATH OUTPUT_PATH

  Convert a YAML course into a JSON course.

Options:
  --dry-run / --no-dry-run
  --help                    Show this message and exit.

Milestones

Current focus

Make it possible to contribute to courses through GitHub

  • ๐Ÿ Demo course content in Spanish for English speakers
  • ๐Ÿ Some basic building blocks of course content implemented
  • ๐Ÿ Developers can use course editor
  • ๐Ÿ Basic theme/branding
  • ๐Ÿ Course progress can be properly synchronised across devices
  • ๐Ÿ Course editor can be accessed by all course contributors
  • ๐Ÿ At least the basics of the Spanish course are ready
  • ๐Ÿ Most of the course building blocks are implemented
  • ๐Ÿ All of the basic building blocks of courses are implemented
  • ๐Ÿ Spaced repetition implemented

Become a contributor

๐ŸŒ UI translation

๐Ÿ“– Course content

๐Ÿ‘ฉ๐Ÿพโ€๐Ÿ’ป Development

You can help LibreLingo by testing it and submitting feature requests or bug reports: https://github.com/kantord/LibreLingo/issues/new. If you want to get in touch, you can use my contact details on my GitHub profile.

Confused? Have a question?

There is a Matrix/FreeNode IRC channel #LibreLingo, instructions for joining:

  • Matrix: #LibreLingo on matrix.org
  • IRC: connect to irc.freenode.net with your favourite client and join #LibreLingo

Articles

License

LibreLingo is licensed under the AGPL-3.0 License. Course content and other creative content might be licensed under other licenses, such as CC.

This image shows a summary of the licensing of our dependencies:

FOSSA Status

Attributions

Mascot

Creative Commons License
Mascot images are released under Creative Commons Attribution-ShareAlike 4.0 International License.

The mascot is designed by @almostdesigner.

Contributors โœจ

All Contributors

Thanks goes to these wonderful people (emoji key):


Daniel Kantor

๐Ÿ’ป

Klemen Skerbiลก

๐Ÿค”

Mirek Mazel

๐Ÿค”

Chris Babcock

๐Ÿค”

Liaizon Wakest

๐Ÿค”

Trolli Schmittlauch

๐Ÿค”

Jรฉrรดme Deuchnord

๐Ÿค”

Felix Ableitner

๐Ÿ›

Navan Chauhan

๐Ÿš‡ ๐Ÿ’ป ๐ŸŽจ ๐Ÿ“–

Roshan Jossy

๐Ÿค” ๐Ÿ’ป ๐Ÿ“–

ledgelight

๐Ÿค”

Francis Tyers

๐Ÿค” ๐Ÿ“–

titanix

๐Ÿค”

Michael Moroni

๐ŸŒ

pssandhu

๐ŸŽจ

Stefan Lobbenmeier

๐Ÿ›

kylepollina

๐Ÿ’ป

slesingerm

๐Ÿค” ๐Ÿ› ๐Ÿ‘€

iasonasma

๐Ÿ’ป โš ๏ธ

Caroline Delesalle

๐ŸŽจ

borbota

๐Ÿ›

decentral1se

๐Ÿ“– ๐Ÿค”

James Adams

๐Ÿ›

Arnold Schrijver

๐Ÿค”

Dale Visser

๐Ÿ›

oscarfrancois

๐Ÿ“–

dhelmr

๐Ÿ’ป

Matt

๐Ÿ‘€ ๐Ÿ› ๐Ÿšง ๐Ÿ’ป ๐Ÿ“–

Jean-Andrรฉ Santoni

๐Ÿค” ๐Ÿ“– ๐ŸŽจ

Lucas Campos Teixeira e Nascimento

๐Ÿ“– ๐Ÿค” ๐Ÿ›

Pooja Desur

๐Ÿ“–

Wesley Mutwiri

๐Ÿ’ป

Simon B.

๐Ÿค”

Karthik Shetty

๐Ÿšง

Joshua Ide

๐Ÿ’ป

Jobe Dylbas

๐Ÿ’ป

Dรกvid Kristiรกn Luteranฤรญk

๐Ÿค” ๐Ÿ’ป

Sai Sandeep Mutyala

๐Ÿ’ป

Artur Bauer

๐Ÿ’ป

Etza

๐Ÿ’ป

Kyle Mumma

๐Ÿ’ป ๐Ÿค”

zinovik

๐Ÿ’ป

Himank Pathak

๐Ÿ’ป ๐Ÿ›

x4th

๐Ÿ’ป

Christian Dimas

๐Ÿ’ป

Marco Ciampa

๐Ÿ›

Joshua | DC7IA

๐Ÿ›

Reyzadren

๐Ÿค”

Andreas

๐Ÿ“–

Marco H

๐Ÿ–‹

Dan OReilly

๐Ÿค”

Douglas Ferlini

๐Ÿ’ป

Michael Nock

๐Ÿ’ป ๐Ÿค”

davidak

๐Ÿค”

adnan360

๐Ÿ–‹ ๐Ÿค” ๐Ÿ“–

Lamdarer

๐Ÿ“–

Luther

๐Ÿค”

Nart Tlisha

๐Ÿ›

Binyamin Aron Green

๐Ÿ“–

Stรฉphane Guillou

๐Ÿค”

Mohammad-Ali A'Rร‚BI

๐Ÿ–‹

RGBradley

๐Ÿ–‹

Cameron Radmore

๐Ÿ–‹ ๐Ÿ’ป

Zeb Burke-Conte

๐Ÿ“– ๐Ÿ’ป ๐Ÿ›

Florian CUNY

๐Ÿค”

uberstar100

๐Ÿค”

Gabe D

๐Ÿ› ๐Ÿ’ป

Ekaterina Mozheiko

๐Ÿ’ป

Gerardo Alcantara

๐Ÿ’ป

JP Damas

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

See also

  • omnilingo, listening-based language learning
Comments
  • Looking for a mascot

    Looking for a mascot

    This is not an urgent issue, but I think LibreLingo could do with a nice mascot animal :smile_cat: I was thinking maybe of a turtle or a cat, with some nice personality, but I'm open to any suggestions.

    Ideally we would have at least a few different SVG designs with the same mascot, or a mascot that could easily be customized for different purposes or re-created in different scenarios.

    help wanted good first issue design 
    opened by kantord 31
  • feat: audio generation script: TTS only

    feat: audio generation script: TTS only

    Description

    With the changes made here, TTS can be configured on a per-course basis in YAML, and then a script can be used to generate audio using those settings. The script can run in either update (only generate new audios) or overwrite (generate everything from scratch) modes. Audios of removed phrases will be deleted automatically. An index JSON file is created for each course.

    Note that this PR does not include the results of running the script for existing courses.

    Is this related to any open issue(s)?

    This is the first step of #1473. The further work that could be done:

    • Add phrase-level setting to customize IPA
    • Other audio sources & attribution
    • Possible stylistic changes like creating voice subdirectories

    Is there anything you need help with to get this PR merged?

    I've used tons of relative path installs (otherwise it's not really possible to develop without write access to the PyPI packages), so I'll need help reverting those and replacing with actual published versions.

    Checklist

    Don't worry if you haven't done everything on this checklist. Simply create your PR, and make sure everything is done later, or ask for help if you don't know how to do it.

    • [x] The CI is passing
    • [x] I tested my implementation manually
    • [x] I wrote new tests to test my code, or updated existing tests to test my changes
    opened by zmbc 30
  • Help: how to open course editor to more people?

    Help: how to open course editor to more people?

    Problem statement

    While the course editor is fully functional and makes it easy to edit the course content, it does not facilitate collaboration sufficiently. It's not enough to draw in a wealth of contributions, it's also extremely important to maintain an efficient, sensible, and fun course structure. To do this, the course editor would probably need to enforce some sophisticated constraints, and also have a way to determine who can approve content.

    Some ideas

    Extend Django Admin with the required functionality. Or perhaps use Django to create a GraphQL or REST API, and build a custom frontend on top of that for the course editor. Perhaps move to a document store model for the course editor. Perhaps let some people experiment with course content being stored in a git repo for a specific course. Or try using a MediaWiki instance? What do you think about these ideas?

    I already have a proposed solution, however it might be rather tough to implement. Ideally, we'd have a solution that can be broken up into small tasks.

    help wanted question 
    opened by kantord 25
  • Easier-to-use audio generation

    Easier-to-use audio generation

    Is your feature request related to a problem? Please describe. If I want to add a new course with TTS listening exercises, it is not easy to do so.

    Describe the solution you'd like I am not sure about all the details, but it would at least include:

    • Configuration of TTS in the course YAML file.
    • A script that recognizes missing audios, generates them using the course's TTS configuration, and places them in the right directory with the right names.

    Describe alternatives you've considered I've seen this but it's more of an example for developers than anything, and in any case it doesn't show the whole process.

    The fetchAudios.sh script is in bash, which is probably not ideal and even less ideal if it gets more complex. I'm guessing Python would be better. There is also no documentation I can find of how the audios_to_fetch.csv file is generated.

    Additional context I'm interested in implementing this, if it gets the go-ahead. If it's not too much to review, I think this and allowing other audio sources could be combined into one MR.

    opened by zmbc 24
  • docs : Cleaned up documentation

    docs : Cleaned up documentation

    Fixes #789

    Description:

    Previously , the information was scattered among different files. This PR organizes all the contents for the development documentation , contribution files under separate sections so that a better understanding of the entire project can be obtained for newcomers or the existing contributors for this project.

    What has been added ?

    • Organized file sections under docs . Please find the changes here

    • Separate development docs section thus organized all the development docs . Please find the changes here

    • Improved the README.md and CONTRIBUTING.md so that they serve as an entry point for newcomers and existing contributors.

    • Reference to the correct files wherever required.

    opened by yash2189 20
  • Double clicking the words in sentence builder

    Double clicking the words in sentence builder

    Is your feature request related to a problem? Please describe. With translate sentence, only drag&drop is available. To improve user experience I suggest adding double click.

    Describe the solution you'd like Double clicking :

    • adds the word at the end of the sentence
    • removes the word from sentence into the word pool

    Additional context image

    help wanted 
    opened by DavidLuterancik 20
  • Add Bangla course

    Add Bangla course

    Description

    Adds "basics" course for Bangla (aka Bengali) language. Bangla is the 7th most spoken language according to Ethnologue (2020). So hope it's useful for the project and the users.

    Is this related to any open issue(s)?

    No

    Is there anything you need help with to get this PR merged?

    I've just created the basics course for Bangla. Plan to add the rest of them similar to the Spanish course. Created this PR to see if I'm on the right track before continuing. Please let me know if I need to add/change anything.

    Checklist

    Don't worry if you haven't done everything on this checklist. Simply create your PR, and make sure everything is done later, or ask for help if you don't know how to do it.

    • [ ] The CI is passing
    • [ ] I tested my implementation manually
    • [ ] I wrote new tests to test my code, or updated existing tests to test my changes
    opened by adnan360 19
  • Clean up documentation

    Clean up documentation

    We currently have our documentation scattered in different places:

    • https://github.com/kantord/LibreLingo#become-a-contributor
    • https://github.com/kantord/LibreLingo/blob/master/docs/CONTRIBUTING.md
    • https://librelingo.readthedocs.io/en/latest/

    And perhaps even somewhere else :-)

    The goal is to move all important information into well organized sections under https://librelingo.readthedocs.io/en/latest/ (generated based on the files here: https://github.com/kantord/LibreLingo/tree/master/docs)

    The development docs in the README and and CONTRIBUTING.md should mainly serve as entry points for this documentation.

    • Copy-paste all important information into files/sections within https://github.com/kantord/LibreLingo/tree/master/docs
    • Write simple, good entry points to this documentation at the relevant points where people will enter the documentation

    Bonus if you also organize the directories under https://github.com/kantord/LibreLingo/tree/master/docs :smile_cat:

    good first issue wontfix feature_request 
    opened by kantord 18
  • Create 'Skip all listening exercises' button

    Create 'Skip all listening exercises' button

    I'm hacking on this in a public space, with no headphones, so I'd to be able to do exercises without having to press SKIP on every second screen or so.

    This feature could probably disable listening until the end of the current lesson (or session) as a first step.

    Stretch goals would be to show some notification about these exercises being filtered out. There might be more exercise types like speaking exercises that would be nice to be able to disable. I think we can innovate on this aspect and maybe do better than some other platforms that spread out these settings between the profile and hour-based disable-timers :)

    good first issue wontfix feature_request 
    opened by sesam 18
  • Add on-screen keys for special characters

    Add on-screen keys for special characters

    While going through the "animals" example course, I discovered that when leรณn was asked the answer leon (without accent) is still accepted as correct.

    Is this intended behaviour or are you normalising the string to heavily before comparison? IMHO learning where to set accents in words is an important part of learning a language.

    Apart from that, keep up the nice work.

    opened by schmittlauch 18
  • Create a very easily installable binary version

    Create a very easily installable binary version

    Is your feature request related to a problem? Please describe. Sometimes a school or other organization might want to set up their own local server. They need an easy way of installing a server that doesn't involve having to read the documentation.

    Describe the solution you'd like

    • The solution should be cross-platform
    • You should not need to have nodejs/npm/etc installed in order to install the binary version

    Some tech information:

    Here's how you export the whole page into a static site: https://github.com/kantord/LibreLingo/blob/main/.semaphore/pipeline_2.yml#L20

    This is already done there in the CI, so basically this package could be built in the same CI step, utilizing the already existing static site.

    A very simple, no-setup static site server can be used to serve these files on a local network. Here's one example: https://www.npmjs.com/package/serve

    So this issue is mostly about figuring out how to package those things in a way that it becomes very easy to install, or even just a single executable on windows

    opened by kantord 16
  • chore(deps): update commitlint monorepo to v17.4.0

    chore(deps): update commitlint monorepo to v17.4.0

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @commitlint/cli (source) | 17.3.0 -> 17.4.0 | age | adoption | passing | confidence | | @commitlint/config-conventional (source) | 17.3.0 -> 17.4.0 | age | adoption | passing | confidence |


    Release Notes

    conventional-changelog/commitlint (@​commitlint/cli)

    v17.4.0

    Compare Source

    Bug Fixes
    conventional-changelog/commitlint (@​commitlint/config-conventional)

    v17.4.0

    Compare Source

    Note: Version bump only for package @โ€‹commitlint/config-conventional


    Configuration

    ๐Ÿ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    ๐Ÿšฆ Automerge: Enabled.

    โ™ป Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    ๐Ÿ”• Ignore: Close this PR and you won't be reminded about these updates again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): bump json5 from 1.0.1 to 1.0.2

    chore(deps): bump json5 from 1.0.1 to 1.0.2

    Bumps json5 from 1.0.1 to 1.0.2.

    Release notes

    Sourced from json5's releases.

    v1.0.2

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295). This has been backported to v1. (#298)
    Changelog

    Sourced from json5's changelog.

    Unreleased [code, diff]

    v2.2.3 [code, diff]

    v2.2.2 [code, diff]

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295).

    v2.2.1 [code, diff]

    • Fix: Removed dependence on minimist to patch CVE-2021-44906. (#266)

    v2.2.0 [code, diff]

    • New: Accurate and documented TypeScript declarations are now included. There is no need to install @types/json5. (#236, #244)

    v2.1.3 [code, diff]

    • Fix: An out of memory bug when parsing numbers has been fixed. (#228, #229)

    v2.1.2 [code, diff]

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps): update dependency mkdocs-material to v9

    chore(deps): update dependency mkdocs-material to v9

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | mkdocs-material | ^8.0.0 -> ^9.0.0 | age | adoption | passing | confidence |


    Release Notes

    squidfunk/mkdocs-material

    v9.0.2: mkdocs-material-9.0.2

    Compare Source

    • Fixed #โ€‹4823: Improved contrast ratio in footer to meet WCAG guidelines
    • Fixed #โ€‹4819: Social plugin crashes when card generation is disabled
    • Fixed #โ€‹4817: Search plugin crashes on numeric page titles in nav

    v9.0.1: mkdocs-material-9.0.1

    Compare Source

    • Removed pipdeptree dependency for built-in info plugin
    • Fixed appearance of linked tags when hovered (9.0.0 regression)
    • Fixed #โ€‹4810: Abbreviations run out of screen on touch devices
    • Fixed #โ€‹4813: View source and edit button links are the same

    v9.0.0: mkdocs-material-9.0.0

    Compare Source

    Additions and improvements

    • Added support for rich search previews
    • Added support for tokenizer lookahead
    • Added support for better search highlighting
    • Added support for excluding content from search
    • Added support for configurable search pipeline
    • Added support for offline search via offline plugin
    • Added support for multiple instances of built-in tags plugin
    • Added support for removing copy-to-clipboard button
    • Added support for removing footer navigation
    • Added support for button to view the source of a page
    • Improved readability of query string for search sharing
    • Improved stability of search plugin when using --dirtyreload
    • Improved search result group button, now sticky and stable
    • Updated Norwegian translations
    • Updated MkDocs to 1.4.2

    Removals

    • Removed deprecated alternative admonition qualifiers
    • Removed :is() selectors (in output) for easier overriding
    • Removed .title suffix on translations
    • Removed legacy method for providing page title in feedback URL
    • Removed support for indexing only titles in search
    • Removed support for custom search transforms
    • Removed support for custom search workers
    • Removed temporary snow feature (easter egg)

    Fixes

    • Fixed Norwegian and Korean language code
    • Fixed detection of composition events in search interface
    • Fixed search plugin not using title set via front matter
    • Fixed search highlighting of tags
    • Fixed search sharing URL using post transformed string
    • Fixed theme-color meta tag getting out-of-sync with palette toggle
    • Fixed prev/next page keyboard navigation when footer is not present
    • Fixed overflowing navigation tabs not being scrollable
    • Fixed inclusion of code block line numbers from search

    v8.5.11: mkdocs-material-8.5.11

    Compare Source

    • Let it snow, see https://twitter.com/squidfunk/status/1597939243090788352

    v8.5.10: mkdocs-material-8.5.10

    Compare Source

    • Adjusted CSS to better allow for custom primary and accent colors
    • Fixed #โ€‹4620: Primary color is not applied (8.5.9 regression)

    v8.5.9: mkdocs-material-8.5.9

    Compare Source

    • Fixed #โ€‹4600: Illegible links for black/white primary colors (8.5.8 regression)
    • Fixed #โ€‹4594: Need to set schema to change link color

    v8.5.8: mkdocs-material-8.5.8

    Compare Source

    • Added support for always showing settings in cookie consent
    • Fixed #โ€‹4571: Buttons invisible if primary color is white or black
    • Fixed #โ€‹4517: Illegible note in sequence diagram when using slate scheme

    v8.5.7: mkdocs-material-8.5.7

    Compare Source

    • Deprecated additional admonition qualifiers to reduce size of CSS
    • Fixed #โ€‹4511: Search boost does not apply to sections

    v8.5.6: mkdocs-material-8.5.6

    Compare Source

    • Modernized appearance of admonitions (with fallback, see docs)
    • Improved appearance of inline code blocks in admonition titles

    v8.5.5: mkdocs-material-8.5.5

    Compare Source

    • Updated MkDocs to 1.4
    • Fixed compatibility issues with MkDocs 1.4
    • Fixed #โ€‹4430: build error when enabling consent without repository URL

    Configuration

    ๐Ÿ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    ๐Ÿšฆ Automerge: Disabled by config. Please merge this manually once you are satisfied.

    โ™ป Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    ๐Ÿ”• Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • Add metadata to courses configuration file

    Add metadata to courses configuration file

    As discussed in #2538, add metadata: - source, e.g., "English" - target, e.g., "Spanish" - name, e.g., "spanish-from-english" - description, e.g., "Spanish for English speakers"

    opened by dimkard 0
  • cant loaded courses from librelingo.app/dev

    cant loaded courses from librelingo.app/dev

    Firstly, thanks for this amazing project!

    Problem description The following courses listed at https://librelingo.app/dev/ fail to load:

    • https://librelingo.app/course/parsig-from-english/
    • https://librelingo.app/course/bangla-from-english/
    • https://librelingo.app/course/hungarian-from-spanish/
    • https://librelingo.app/course/ladino-from-spanish/
    • https://librelingo.app/course/ladino-from-hebrew/
    • https://librelingo.app/course/ladino-from-english/

    They show instead:

    500
    Cannot find module './bangla-from-english/courseData.json'
    

    Why is that? How can that be resolved and avoided?

    opened by pur80a 0
  • User Config/Settings

    User Config/Settings

    I think being able to customise your experience is vital to making a good learning experience and I think this could be improved in LibreLingo. We would have to make a User Config/Settings page for this. I am going to list below what things users can choice to customise in LibreLingo.

    • Theme
    • Default Sound Effect(s) #2593
    • Whether or not to show characters #2610
    • (To be thought of/added)

    I have an idea that users can import and export their settings as a file (maybe, json, xml or something else) for if they are using more than one LibreLingo instance or if they are using their own instance as well as the official instance

    opened by cutthroat78 2
Releases(lluis-v1.8.1)
Owner
Daniel Kantor
โ˜Ž๏ธ Schedule a call: https://app.harmonizely.com/harmonizely-uoicqk
Daniel Kantor
Oppia a free, online learning platform to make quality education accessible for all.

Oppia is an online learning tool that enables anyone to easily create and share interactive activities (called 'explorations'). These activities simulate a one-on-one conversation with a tutor, making it possible for students to learn by doing while getting feedback.

Oppia 4.8k Dec 28, 2022
Abilian Social Business Engine - an enterprise social networking / collaboration platform.

About Abilian SBE (Social Business Engine) is a platform for social business applications, and more specifically collaborative / enterprise 2.0 busine

Abilian open source projects 63 Dec 29, 2022
A modular, high performance, headless e-commerce platform built with Python, GraphQL, Django, and ReactJS.

Saleor Commerce Customer-centric e-commerce on a modern stack A headless, GraphQL-first e-commerce platform delivering ultra-fast, dynamic, personaliz

Mirumee Labs 17.8k Jan 7, 2023
E-Commerce Platform

Shuup Shuup is an Open Source E-Commerce Platform based on Django and Python. https://shuup.com/ Copyright Copyright (c) 2012-2021 by Shoop Commerce L

Shuup 2k Jan 7, 2023
A full stack e-learning application, this is the backend using django restframework and docker.

DevsPrime API API Service backing client interfaces Technologies Python 3.9 : Base programming language for development Bash Scripting : Create conven

Nnabue Favour Chukwuemeka 1 Oct 21, 2021
Utility to find games owned by all (or at least some) of the passed players.

SteamCommonGameFinder Utility to find games that are owned by all (or at least some) of the players you pass into this programm. You can already find

Daniel O'Grady 4 Jan 4, 2022
The community bot for the Python Discord community

Python Utility Bot This project is a Discord bot specifically for use with the Python Discord server. It provides numerous utilities and other tools t

Python Discord 998 Jan 3, 2023
Coinloggr - A learning resource and social platform for the coin collecting community

Coinloggr A learning resource and social platform for the coin collecting commun

John Galiszewski 1 Jan 10, 2022
Find a Doc is a free online resource aimed at helping connect the foreign community in Japan with health services in their native language.

Find a Doc - Localization Find a Doc is a free online resource aimed at helping connect the foreign community in Japan with health services in their n

Our Japan Life 18 Dec 19, 2022
RoBERTa Marathi Language model trained from scratch during huggingface ๐Ÿค— x flax community week

RoBERTa base model for Marathi Language (เคฎเคฐเคพเค เฅ€ เคญเคพเคทเคพ) Pretrained model on Marathi language using a masked language modeling (MLM) objective. RoBERTa wa

Nipun Sadvilkar 23 Oct 19, 2022
Repository for publicly available deep learning models developed in Rosetta community

trRosetta2 This package contains deep learning models and related scripts used by Baker group in CASP14. Installation Linux/Mac clone the package git

null 81 Dec 29, 2022
A community run, 5-day PyTorch Deep Learning Bootcamp

Deep Learning Winter School, November 2107. Tel Aviv Deep Learning Bootcamp : http://deep-ml.com. About Tel-Aviv Deep Learning Bootcamp is an intensiv

Shlomo Kashani. 1.3k Sep 4, 2021
Machine learning models from Singapore's NLP research community

SG-NLP Machine learning models from Singapore's natural language processing (NLP) research community. sgnlp is a Python package that allows you to eas

AI Singapore | AI Makerspace 21 Dec 17, 2022
ManimML is a project focused on providing animations and visualizations of common machine learning concepts with the Manim Community Library.

ManimML ManimML is a project focused on providing animations and visualizations of common machine learning concepts with the Manim Community Library.

null 259 Jan 4, 2023
Cross-platform desktop synchronization client for the Nuxeo platform.

Nuxeo Drive Desktop Synchronization Client for Nuxeo This is an ongoing development project for desktop synchronization of local folders with remote N

Nuxeo 63 Dec 16, 2022
Phone Number formatting for PlaySMS Platform - BulkSMS Platform

BulkSMS-Number-Formatting Phone Number formatting for PlaySMS Platform - BulkSMS Platform. Phone Number Formatting for PlaySMS Phonebook Service This

Edwin Senunyeme 1 Nov 8, 2021
Backend for the Autocomplete platform. An AI assisted coding platform.

Introduction A custom predictor allows you to deploy your own prediction implementation, useful when the existing serving implementations don't fit yo

Tatenda Christopher Chinyamakobvu 1 Jan 31, 2022
DELTA is a deep learning based natural language and speech processing platform.

DELTA - A DEep learning Language Technology plAtform What is DELTA? DELTA is a deep learning based end-to-end natural language and speech processing p

DELTA 1.5k Dec 26, 2022
DELTA is a deep learning based natural language and speech processing platform.

DELTA - A DEep learning Language Technology plAtform What is DELTA? DELTA is a deep learning based end-to-end natural language and speech processing p

DELTA 1.4k Feb 17, 2021