Measure your progress
Emoji Log helps you measure your progress by making it simple to track when meaningful steps are taken. Read the guide for more details.
The project follows a Universal folder structure and is a large collection of mostly small modules or functions that are put together using Svelte and Rollup. With the exception of a few 'global' or 'magic' things such as the localization function OLSKLocalized
, most resources used by a module should be in the same folder or referenced by path name.
Routing, rendering markdown content, and serving pages is done via a Node.js server (usually configured in the controller.js files).
(For a deeper dive, watch the tutorial).
Install Node.js and npm, then:
npm run setup
This should create an .env
file if there is none. If you encounter errors referring to this file, you can find missing variables in .env-sample
.
npm run watch
npm start
It should be accessible at http://localhost:3000.
See Testing logic and interfaces for a tutorial.
npm test
npm test ui
To filter interface test paths by string:
npm test ui match=Timer
To filter interface test paths by JavaScript regular expressions:
npm test ui match='/(template|browse)/'
Help me keep creating projects that are public, accessible for free, and open-source.
The code is released under a Hippocratic License, modified to exclude its use for surveillance capitalism and also to require large for-profit entities to purchase a paid license.