https://github.com/alifeee/polycule-visualiser
A polycule graph visualiser designed to be self-hosted.
https://github.com/alifeee/polycule-visualiser
graph network polyamory polycule self-hosted springy undirected-graph
Last synced: 3 months ago
JSON representation
A polycule graph visualiser designed to be self-hosted.
- Host: GitHub
- URL: https://github.com/alifeee/polycule-visualiser
- Owner: alifeee
- Created: 2024-06-18T22:23:41.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-26T14:27:56.000Z (4 months ago)
- Last Synced: 2025-03-26T15:39:26.858Z (4 months ago)
- Topics: graph, network, polyamory, polycule, self-hosted, springy, undirected-graph
- Language: JavaScript
- Homepage: http://alifeee.co.uk/polycule-visualiser/
- Size: 910 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Polycule Visualiser
A graph visualiser designed to be self-hosted, using [Springy]
See a non-editable example →

The graph is defined by YAML:
```yaml
nodes:
- name: Seraphina
- name: Elfo
- name: France
edges:
- from: Seraphina
to: Elfo
- from: Elfo
to: France
type: dashed
```## How to use locally
1. Download the files ([as a zip](https://github.com/alifeee/polycule-visualiser/archive/refs/heads/main.zip)) and extract to a folder
1. open `index.html` with a text editor (Notepad/etc)
1. edit the polycule at the top of the file
1. open (double click or open in browser) `index.html`## How to install on a server with editing
```bash
mkdir -p /var/www/
git clone [email protected]:alifeee/polycule-visualiser /var/www/polycule
cd /var/www/polyculecp .env.example .env
cp polycule.yaml.example polycule.yaml
# We change the ownership of the built files, so that the www-data user can change them later.
sudo chown $USER:www-data polycule.yaml# Generate a password file for the site
sudo htpasswd -c /etc/nginx/polycule.htpasswd
```Add the following to nginx config (using `fastcgi`)
```nginx
location /polycule/ {
alias /usr/alifeee/polycule/;
try_files $uri $uri/ =404;auth_basic_user_file /etc/nginx/polycule.htpasswd;
auth_basic "polycule";
}
location ~ ^(/polycule/edit|/polycule/rss) {
fastcgi_intercept_errors on;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME /usr/alifeee$fastcgi_script_name;
fastcgi_pass unix:/var/run/fcgiwrap.socket;auth_basic_user_file /var/www/polycule/.htpasswd;
auth_basic "polycule";
}
```[Springy]: http://getspringy.com/