一个社区拥有的语言学习平台
LibreLingo
a community-owned language-learning platform
### librelingo-yaml-loader [librelingo-yaml-loader](https://pypi.org/project/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](https://dev.to/kantord/practice-tdd-by-creating-a-librelingo-based-language-learning-app-4apf). #### Setup [librelingo-yaml-loader](https://pypi.org/project/librelingo-yaml-loader/) can be installed using pip: ```sh 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. ```python from librelingo_yaml_loader import yaml_loader course = yaml_loader.load_course("./path/to/my/course") ``` `load_course` returns a [Course()](https://github.com/kantord/LibreLingo/blob/main/apps/librelingo_yaml_loader/librelingo_yaml_loader/data_types.py) object. ### librelingo-json-export [librelingo-json-export](https://pypi.org/project/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](https://pypi.org/project/librelingo-json-export/) can be installed using pip: ```sh pip install librelingo-json-export ``` #### Exporting courses to JSON [librelingo-json-export](https://pypi.org/project/librelingo-json-export/) has a command line program that can export YAML-based LibreLingo courses into the JSON format used by the web app. ```sh 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. ``` ## Developing LibreLingo Want to contribute to LibreLingo? Or create your own fork? Perhaps you want to use it in your creative project? To get started with running the development environment on your computer and understanding the software architecture, [head to our development documentation](https://librelingo.app/docs/). ## Milestones - [x] Demo course content in Spanish for English speakers - [x] Some basic building blocks of course content implemented - [x] Developers can use course editor - [x] Basic theme/branding - [x] Course progress can be properly synchronised across devices - [x] Course editor can be accessed by all course contributors - [x] At least the basics of the Spanish course are ready - [x] Most of the course building blocks are implemented - [x] All of the basic building blocks of courses are implemented - [x] Spaced repetition implemented ## Roadmap - [ ] Officially releasing Basque course - [ ] Make it possible to contribute to courses through GitHub - [ ] Improving course creation UX over Github ### Projects - [Better audio support](https://github.com/kantord/LibreLingo/projects/14) - [Support non-latin scripts](https://github.com/kantord/LibreLingo/projects/15) ## Contribution ### Become a contributor #### are you a developer? You can help LibreLingo by testing it and submitting feature requests or bug reports: [here](https://github.com/kantord/LibreLingo/issues/new). If you want to get in touch, you can use my contact details on [my GitHub profile](https://github.com/kantord). Go through the dev docs [here](https://librelingo.app/docs/CONTRIBUTING.html). Still got questions? Our Matrix/FreeNode IRC channel is `#LibreLingo`, join the dev community there and feel free to ask anything. - Matrix: [`#LibreLingo`](https://app.element.io/#/room/#space-librelingo:matrix.org) on `matrix.org` - IRC: connect to `irc.freenode.net` with your favourite client and join `#LibreLingo` #### are you a linguaphile? Learning new language is an awesome experience right? If you wanna let others experience that too, make a course on LibreLingo! Get started [here](https://github.com/kantord/LibreLingo/tree/main/docs/courses). We are working on the process of creating courses, to make it more streamlined, if you have an idea to make it better, do share with us, create an [issue](https://github.com/kantord/LibreLingo/issues/new). Note: You are always encouraged to release the courses under a free license. #### are you a wordsmith? Translate the LibreLingo UI(LLUI) to make it more accessible, you can start [here](https://poeditor.com/join/project?hash=jKiKfen2Ye). ### Attributions #### Mascot The mascot is designed by [@almostdesigner](https://github.com/almostdesigner).
暂无开放 Issues,或尚未同步最近议题。