This is a template for building an app with Nymph and Tilmeld.
For development, it provides a Docker setup that runs a DB (MySQL, PostgreSQL, or SQLite3), Nginx, Postfix, and Nymph. It presents a usable app, built in Svelte, as a starting point.
The PHP implementation of Nymph/Tilmeld has been deprecated. It will no longer have any new features added. Instead, a new version of Nymph running on Node.js, written entirely in TypeScript will replace the PHP implementation. You can find it over at the Nymph.js repo.
Since this template is built around the PHP implementation, at least for the time being, this template should be considered deprecated too.
- Get Docker, Docker Compose, and Degit
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose npm install -g degit
- Copy this template:
- for MySQL
degit hperrin/nymph-template nymph-app
- for Postgres
degit hperrin/nymph-template#postgres nymph-app
- for SQLite3
degit hperrin/nymph-template#sqlite3 nymph-app
- for MySQL
- Run the app:
cd nymph-app ./run.sh
- Go to http://localhost:8080/
On SQLite3, the very first time you create an entity (when you register the first user/create the first todo), the DB will become locked. You'll need to refresh the page, but then on it will be fine.
If NPM and/or Composer are not installed, npm.sh
and composer.sh
will use a Docker container to run them.
You can run commands from the repository root (not the "app" directory) using composer.sh
and npm.sh
. For example:
./composer.sh require vendor/package
./npm.sh install --save package
./npm.sh run build
- Duplicate both Todo.php and Todo.js in the src/Entities folder, and rename/edit them.
- Run
npm run build
ornpm run watch
in the "app" dir to rebuild the bundled JS. - If you need help, check out the API docs.