/Sugarizer_vueJs

Vue code of Sugarizer. GSoC 2022

Primary LanguageJavaScriptApache License 2.0Apache-2.0

Sugarizer Vue.js UI

Sugarizer is an open-source project. It is a free/libre learning platform for children. The Sugarizer UI uses ergonomic principles from the Sugar platform, developed for the One Laptop per Child project. Sugarizer is used every day by thousands of users around the world.

animated

This activity was developed by Saumya Kushwaha under the guidance of Lionel Laské during GSoC 2022. Learn more about this work here.

The project aims to create a framework of Vue.js UI components matching the Sugar UI by replacing old EnyoJS, a deprecated framework initially developed for WebOS. The VueJS source code is maintained here and, once built, the code is integrated in Sugarizer.

Tasks completed

Rewriting the required files in Vue.js

These are newly written components in Vue.js with dummy data.

animated

Writing tests for these newly written files in Vue Test Utils with Jest

These are Coverage Table of the components:

animated

Added documentation for using these components using JsDoc

This is the documentation HTML files of components generated by JsDoc.

animated

Steps to run project

Make sure npm and nodejs are installed on your machine.

Clone the repository on your local machine and run.

npm install

Now you can open the index.html in your browser directly.

To tests the files

Open the project in your terminal and run.

npm run test:unit

To test the coverage of component files

Open the project in your terminal and run.

npm run test:coverage

To open the documentaion of component

Open the project in your terminal and run.

npm run docs

Now open the newly created index.html in ./docs folder.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b feature/feature_name)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/feature_name)
  5. Create a new Pull Request

LICENSE

License

This repository is Licensed under Apache v2 license.