|
3 weeks ago | |
---|---|---|
src | 3 weeks ago | |
.gitignore | 3 weeks ago | |
Manifest.toml | 3 weeks ago | |
Project.toml | 3 weeks ago | |
README.md | 3 weeks ago |
DataJune est un projet jouet consistant à indexer des informations de la blockchain pour servir les données sous forme de fichiers JSON, CSV, ou autre, pour permettre à n'importe qui de jouer facilement avec les données et produire des visualisations maison.
Ce projet peut combler temporairement des lacunes des API suivantes :
mais l'objectif est plutôt d'ajouter des informations qui n'y figureront jamais.
Pour l'instant, c'est un prototype "quick and dirty", je réfléchirai plus tard à une solution propre.
Pour l'instant, le paquet julia n'est pas prêt, il faut donc faire à la main :
HTTP, JSON, TOML, JLD2, Logging, ProgressMeter, OrderedCollections, Dates, LightGraphs, Statistics, Plots
)Pour l'instant, pas d'interface. Les fonctions suivantes permettent d'exporter les données
DataJune.BlockchainBrowser.sync() # synchronisation des données via les chunks
data = DataJune.BlockchainBrowser.browse() # exploration des données et indexation
DataJune.LightGraphExporter.lightgraph_export(a, 3600*24) # export de la wot au format lightgraph avec un pas de temps de 1 jour
DataJune.StatsExporter.export_api_files() # parcours des fichiers lightgraph et export sous forme json
DataJune.DataPlotter.plot_member_count() # réalise le plot "members count" à propos des données exportés
Pour manipuler les donnés à la main
w = DataJune.WotHistory.WotSnapshot() # load first snapshot
DataJune.WotHistory.set_current_interval(w, 365) # load snapshot after one year
En attendant de mettre en place une routine automatique, on peut envoyer les données manuellement sur datajune.coinduf.eu avec rsync :
rsync -ravc api/ hugo@datajune.coinduf.eu:/var/www/datajune/api
rsync -ravc plots/ hugo@datajune.coinduf.eu:/var/www/datajune/plots