435633a893 | ||
---|---|---|
notes | ||
src | ||
.eslintrc.js | ||
.gitignore | ||
.gitlab-ci.yml | ||
README.md | ||
package-lock.json | ||
package.json |
README.md
Forum Logic
This project is a Javascript prototype for the DGF system.
It implements the core algorithm described in Craig Calcaterra (May 24, 2018) On-Chain Governance of Decentralized Autonomous Organizations.
This project is implemented as a static site, and so may be downloaded and browsed offline, or served via HTTP.
The main
branch is served via GitLab Pages.
Development
For a more convenient local URL,
Add forum.dev
as an alias for 127.0.0.1
in your /etc/hosts
file
Install mkcert
Install nginx
Add the root CA for self-signed certificates
mkcert -install
Generate a certificate for forum.dev
mkcert forum.dev
Move the certificate to nginx config directory
sudo mkdir -p /etc/nginx/certs
sudo cp forum.dev{,-key}.pem /etc/nginx/certs/
Make your home directory readable to the webserver. One way to do this is to add the webserver daemon's user to your user group. The following command would work if your user's group has the same name as your user, and the webserver user is www-data
:
sudo groupmems --group $USER --add www-data
Configure nginx
by adding a file /etc/nginx/sites-available/forum_dev
, with content similar to the following:
server {
listen 443 ssl;
server_name forum.dev;
ssl_certificate /etc/nginx/certs/forum.dev.pem;
ssl_certificate_key /etc/nginx/certs/forum.dev-key.pem;
root /home/ladd/dgf/forum-logic/src/;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Replace /home/ladd/dgf/forum-logic
with the path to this repository on your filesystem
Enable the site
sudo ln -s /etc/nginx/sites-available/forum_dev /etc/nginx/sites-enabled/
Now restart nginx
and the site should be available at https://forum.dev.
sudo systemctl restart nginx
Note that browsers may cache assets, so after modifying source code, you may need to refresh your browser while holding Shift
to bypass the browser cache.
TODO
- Move
actor.js
andaction.js
out ofdisplay/
. Tosupporting
?