Technology we use link
Jump to navigation
Jump to search
Line 6: | Line 6: | ||
the most prominent tools we use, the reader might explore them | the most prominent tools we use, the reader might explore them | ||
further on his own and therefore retrieving what is missing. | further on his own and therefore retrieving what is missing. | ||
+ | |||
Line 12: | Line 13: | ||
http://knexjs.org/assets/images/knex.png | http://knexjs.org/assets/images/knex.png | ||
--> | --> | ||
+ | |||
+ | <noinclude> | ||
+ | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
Line 80: | Line 84: | ||
|} | |} | ||
<br /> | <br /> | ||
+ | </noinclude> |
Revision as of 08:47, 28 June 2020
Here is a list of the tools we use to make this platform work. Of course each of them depends in turn by other tools (for instance Quasar Framework depends on Vuejs, and Vuejs is in turn composed by several components), however, given a set even arbitrary of the most prominent tools we use, the reader might explore them further on his own and therefore retrieving what is missing.
software | description | use | logo and url |
---|---|---|---|
Quasar framework | open-source Vue.JS based framework for building apps, | We use it for all the Frontend part of the site, taking advantage of the server side rendering feature | https://quasar.dev/ |
Cheerio | DOM manipulation from an html string | We use it to perform some adjustments to the mediawiki html output before recording the last version of a page to be served through the APIs | https://github.com/cheeriojs/cheerio#readme |
Esprima | ECMAScript parser | We use it to securely parse the javascript object produced by the Frontend Index storing the structure of the tree | https://github.com/jquery/esprima |
nodemw | Nodejs interface for the Mediawiki APIs | We use it to call the mediawiki APIs from a nodejs script to retrieve and structure wiki pages before serving them through the APIs | https://github.com/macbre/nodemw |
detectlanguage | Language identification JSON webservice | We use it to determine the language of a wiki page, in order to filter them by language in the frontend site, or to perform hyphenation | https://detectlanguage.com/ |
Detecting languages (Google Cloud Translation) | Language detect using Google Cloud Translation APIs | As above, we use both of them concurrently | https://cloud.google.com/translate/docs/basic/detecting-language |
Knex | Query builder for nodejs | We use it to assemble mysql queries in our nodejs scripts | http://knexjs.org/ |
Email templates | A wrapper for sending email using template engines (like PUG) and transports (like Nodemailer) | We use it to send email using PUG templates and Node mailer-Sendgrid transport | https://github.com/forwardemail/email-templates |
Prism | Javascript syntax highlighter | We use it to display code snippets on the Frontend site | https://prismjs.com/ |
jsonwebtoken | Nodejs implementation of An implementation of JSON Web Tokens. | We use it to signin a student accessing to Classes | https://www.npmjs.com/package/jsonwebtoken |
jsTree | Jquery plugin, that provides interactive trees | We use it to display an interactive tree of the structured index created by our script from a given set of wiki pages | https://www.jstree.com/ |
... and more ! The list is in progress ! |