The quick and easy dictionary builder for constructed languages. https://lexicon.ga
Go to file
dependabot[bot] b2391ee727
Merge 5fec8e63e7 into be67f965eb
2024-11-21 22:27:28 +00:00
dev Add social image that's better than just the logo 2019-07-17 16:25:22 -06:00
src Restore PublicDictionary's details_only option 2023-10-31 16:25:42 -06:00
.gitignore Add metadata & manifest to html; Process icons 2019-07-11 10:30:10 -06:00
.htmlnanorc Prevent Parcel from removing ids from SVGs 2019-07-11 10:30:03 -06:00
.postcssrc Update browsers setting for autoprefixer 2019-07-14 11:19:53 -06:00
README.md Remove ads 2022-08-26 12:56:01 -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
manifest.webmanifest Fix manifest.webmanifest start_url error 2019-07-11 10:30:12 -06:00
offline.html Remove ads 2022-08-26 12:56:01 -06:00
package.json Bump sharp from 0.27.1 to 0.30.5 2022-08-26 19:47:28 +00:00
template-index.html Remove ads 2022-08-26 12:56:01 -06:00
template-passwordreset.html Fix accessibility & best practice issues 2019-07-11 10:30:11 -06:00
template-view.html Remove ads 2022-08-26 12:56:01 -06:00
yarn.lock Bump sharp from 0.27.1 to 0.30.5 2022-08-26 19:47:28 +00:00

README.md

Lexiconga

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

Installation

  1. Some dev tools require build tools.
  • On Windows, install them with npm install --global windows-build-tools.
  • Alternatively, you can just install the newest Python and Visual Studio (with Desktop C++ devkit).
  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.

Parcel Bundler version < 2 doesn't use PostCSS 8+, so upgrading autoprefixer will not work. Keep autoprefixer at the highest version within the 9 major version until you're able to figure out how parcel-bundler 2+ works.

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.

Migration

There is a script called src/php/api/migrate.php.changeme that can be used to help with the migration process from a version1 Lexiconga database into a master database. Note: Migration is intended only for migrating from an old server to a freshly-installed/empty new database. To use this, copy src/php/api/migrate.php.changeme to migrate.php somewhere in the version1 project (probably in /php) and copy the same to /api/migrate.php in your master project, making sure that all the variables for referencing the databases are correct.

Visit migrate.php on your version1 server with ?outgoing=true set in order to begin the transfer. The other server's migrate.php will receive an "incoming" request multiple times, and your screen will display messages as it works.

DELETE THESE migrate.php FILES IMMEDIATELY AFTER MIGRATION IS COMPLETE!.

Emails

Be sure you set up email senders/receivers for at least these 3 email addresses:

  • help (can be forwarder)
  • donotreply (must be sender)