The quick and easy dictionary builder for constructed languages. https://lexicon.ga
Go to file
Robbie Antenesse 1b6247f457 Move router.php to root; use realpath for file refs 2019-07-11 10:45:09 -06:00
src Move router.php to root; use realpath for file refs 2019-07-11 10:45:09 -06:00
.gitignore Force local project database user/password setup 2019-05-17 12:52:20 -06:00
.htmlnanorc Prevent Parcel from removing ids from SVGs 2019-07-11 10:45:08 -06:00
.postcssrc Set up autoprefixer for css 2019-05-07 15:55:55 -06:00
README.md Add UpUp for offline mode; Update Readme for UpUp 2019-07-11 10:45:08 -06:00
ads.json Update ads 2019-07-11 10:45:06 -06:00
advertising.html Add logo and favicon; style logo for each theme 2019-07-11 10:45:06 -06:00
composer.json Add composer and some things to help with dev + basics 2019-05-13 17:18:31 -06:00
composer.lock Add composer and some things to help with dev + basics 2019-05-13 17:18:31 -06:00
index.html Update UpUp asset 2019-07-11 10:45:09 -06:00
offline.html Add UpUp for offline mode; Update Readme for UpUp 2019-07-11 10:45:08 -06:00
package.json Add UpUp for offline mode; Update Readme for UpUp 2019-07-11 10:45:08 -06:00
template-passwordreset.html Finish up password reset 2019-07-11 10:45:07 -06:00
template-view.html Rename view.html for the router to template-view.html 2019-07-11 10:45:07 -06:00
yarn.lock Add UpUp for offline mode; Update Readme for UpUp 2019-07-11 10:45:08 -06:00

README.md

Lexiconga

This is the light-as-possible rewrite of Lexiconga.

Installation

  1. Clone and run yarn and composer install to install dependencies.
  2. Import src/structure.sql into a database called 'lexiconga' on your MariaDB server to get the database structure.
  3. Copy src/php/api/config.php.changeme to src/php/api/config.php and update the values within to enable connections to your lexiconga database.

Requirements

Development

npm start bundles and watches frontend and backend changes. Set up a junction link to dist from the root of your php-processing web server.

It's less useful, but npm run serve-frontend-only will bundle and serve only the front end stuff from localhost:1234. The bundled files all still get bundled into dist.

Production

npm run bundle bundles and minifies the frontend stuff and also copies the backend stuff to dist. Be sure to run npm run clear to delete the contents of dist and .cache before using npm run bundle to make sure you don't get old dev versions of the bundled code included in your upload.

UpUp Configuration

UpUp is a tool that enables browsers to download an offline version of a website so users can still access it if they lose internet connection. Because Parcel Bundler hashes every file accessed via reference within the code, you need to ensure that the UpUp configuration at the bottom of index.html is kept up to date whenever you make changes to files. Typically the only file hashes that will change are src.*.js and main.*.css, but it's best to check all of them just to make sure.

After bundling, update the files referenced in the configuration to make sure UpUp can download the files correctly, then bundle again so dist/index.html gets updated. I'm desperately hoping I can find a way to automate this in the build process, but I haven't figured it out just yet. Maybe I'll end up using router.php and .htaccess to do the heavy lifting for me. We'll see.