140f3c5c8f | ||
---|---|---|
src | ||
.gitignore | ||
.htmlnanorc | ||
.postcssrc | ||
README.md | ||
ads.json | ||
advertising.html | ||
composer.json | ||
composer.lock | ||
index.html | ||
offline.html | ||
package.json | ||
template-passwordreset.html | ||
template-view.html | ||
yarn.lock |
README.md
Lexiconga
This is the light-as-possible rewrite of Lexiconga.
Installation
- Clone and run
yarn
andcomposer install
to install dependencies. - Import
src/structure.sql
into a database called 'lexiconga' on your MariaDB server to get the database structure. - Copy
src/php/api/config.php.changeme
tosrc/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.