/toadua

The online collaborative dictionary for the constructed language Toaq.

Primary LanguageTypeScriptMIT LicenseMIT

Toadua

Toadua is the/an online collaborative dictionary for the Toaq constructed language. It is also currently being remodelled to suit general usage. You can visit the current instance at https://toadua.uakci.pl.

You can also use the public API exposed at https://toadua.uakci.pl/api (read the docs, too).

Please note: Currently in the process of cleaning up, removing the unprofessional bits, and other groundbreaking changes. Please take the information below with a pinch of salt. Sorry.

Installing and running

Locally (good for dev env)

  • Install Node.js version ≥16 (skip this step if you're using nix with direnv).
  • Frontend:
    • Cd into the frontend directory and run npm install there.
    • npm run build will create a webpack build.
  • Backend:
    • Run npm install in the cloned repository to get the dependencies.
    • Run npm run build to compile the TypeScript sources.
    • npm run start should now work out of the box. Navigate to http://localhost:29138/ in your browser.

With Nix (good for verifying build correctness)

  • Run nix run . -- -d . to build the service and run it right away.
  • Run nix build to do a full build. You may then inspect the contents of result/.

HTTP security warning

Please note that the server is set up to run on port 29138 (by default) and serve HTTP; however, you’re not supposed to expose the HTTP website, but rather embed it in some other webserver of your choice which supports HTTPS (and tunnelling). I have rewriting the code for out-of-the-box HTTPS-ness on my to-do list.