An Scéalaí is an online learning platform for students of the Irish language. It provides an environment in which users can write and correct Irish texts, or stories. One of An Scéalaí’s unique features is the ability to listen back to a computer-generated voice reading your story as Gaeilge. As well as this, users can run their story through a grammar-checker that highlights any spelling mistakes or other grammatical errors found in the text. More detail on these technologies can be found at the Technology tab on our website.
An Scéalaí also serves as a research project by Trinity College Dublin, investigating the effectiveness of different language-learning methods. We invite you to try using audio check as well as grammar check to correct spelling and grammar mistakes in your stories. This will provide us with useful data to help design language-learning resources in the future!
You can contact us with any queries/feedback at [email protected]
To dowload the code:
$ git clone https://github.com/OisinNolan/an-scealai.git
$ cd an-scealai
To install Node dependencies:
$ npm install --prefix api && npm install --prefix ngapp
or
$ bash reinstall.sh
An Scéalaí should be run behind nginx. Install it on your system. Setup nginx using the config in ./conf/dev.nginx.conf (i.e. copy that config to /sites-available (on debian etc.) or to /servers/ if installed with HomeBrew). There is a script in ./bin/macos_install_dev_nginx.sh with an example of how to set up nginx.
- From the root directory,
/an-scealai
, navigate to thengapp
directory, which contains the frontend project:
$ cd ngapp
- Start the frontend app:
$ npm start
- Run the Mongo Daemon (perhaps set up mongo as a systemd service). Depends on your OS.
-
copy the ./api/.env.example file to ./api/.env and fill in the missing fields in ./api/.env. Consider setting the "AWS_SES_DISABLE=true" option, if you do not have keys for AWS Simple Email Service.
-
In development, start the typescript compiler in watch mode,
cd ./api; npx tsc --watch
. -
Start the backend nodejs server:
cd ./api; npm start
-
Navigate to http://localhost:4040/ (if nginx is running), or to http://localhost:4200/ to go straight to the angular server (backend won't work).
- stricter authorization on /story/withId/:id endpoint
- begin to attribute ownership to all new stories
- [BUGFIX] download story button downloads with javascript to enable authentication
- update "main" field in api/package.json
- backend authentication (user must have valid jwt to access resources)
- auth interceptor applies jwt to requests
- [BUGFIX] admin-component classroom view not loading
- recording engagement events for playing syntheses
- adding nemo voices and dropdown menu for voices in synthesis-player
- endpoint
gramadoir/insert
not responding [BUGFIX]
- mongodb node [email protected]
- gramsrv
- a4 writing area for quill
- fix favicon vs baseHref bug
- kill bookImg in recording pages (probably some more changes I'm forgetting at the moment -- Neimhin Sun 10 Jul 2022 15:54:51 IST)
LARA update
Avatar in Beta tab.
Abair 2 component with audio caching
Record gramadoir responses for stories throughout time.
we don't talk about v1.0.9
bugfix: in ngapp/src/app/engagement.service.ts
for in
was used instead of a for of
loop to serialize
grammar tag data, resulting in no data being sent and inserted into the database.