A web dashboard for interactive cryptocurrency analysis.
GraphSense’s Web GUI for interactive cryptocurrency analysis written in Elm.
Run cp config/Config.elm.tmp config/Config.elm
and optionally configure plugins and your custom theme here.
plugins
folder.make clean-generated-plugins && make
config/Config.elm
, eg:
import Myplugin
...
plugins : Plugin.Plugins
plugins =
Plugin.empty
|> Plugin.myplugin (Myplugin.plugin {- plugin specific arguments here -})
Run make serve
. It starts Vite’s development server.
Run make build
. It builds the app together with all configured plugins to ./dist
.
Use plugin_stub
as a starting point: cp -r plugin_stub plugins/myplugin
The name of the plugin is case insensitive. Elm package name of the plugin is the plugin name with the first letter capitalized, eg. Myplugin
.
Adapt the stub accordingly:
./Stub
, ./Stub.elm
and stub.js
to your plugin’s name. Keep the respective capitalization. Stub
in the stub Elm files with your plugin’s Elm package.Place plugin specific dependencies in plugin’s ./dependencies.txt
.
Plugins can hook into the dashboard functionality in order to extend it.
Plugin’s hook implementations need to be set in your plugin’s root module which was derived from ./Stub.elm
.
Please see the comments in the respective files of ./src/PluginInterface
for detailed documentation.
Install Docker and Docker Compose:
Copy docker/env.template
to .env
:
cp docker/env.template .env
Edit the file .env
and set the URL of the graphsense-REST
service, e.g.:
REST_URL="https://api.ikna.io"
Build the Docker image:
docker-compose build
Start a container (in detached mode):
docker-compose up -d
Finally, test the application in a web browser:
http://localhost:8000