Commit graph

21 commits

Author SHA1 Message Date
cbca9f99b3
feat!: async refactor
this mostly has the objective of splitting fetching and visualizing, to
be able to daemonize the fetching. I swapped out ureq for reqwest,
brought in clap, removed rusqlite for full fledged sea_orm, added
tokio. Created migrations in sea_orm to reflect current db schema. Moved
data structures defititions out of app, and slimmed down gui code.
Entities collections are mostly managed by background workers and made
available with watch-channels to the main thread, which can always
nonblockingly access data. This is cool but still has some sharp
corners. Now plots don't refresh live but at specific interval. I plan
to add synchronization channels later on tho.
2022-10-31 02:54:42 +01:00
d50f9b973b
feat: allow to save and load metric data
metrics can be saved and loaded to/from csv.
The files are ok-ish and it's reasonably fast. File format could still
change. Also some small fixes and tweaks, like bigger buttons in
confirmation prompts and source name in logs.
2022-06-28 01:09:15 +02:00
068969b23f
chore: bump version 2022-06-25 02:59:22 +02:00
7147a7b09f
chore: bump version 2022-06-24 15:05:01 +02:00
cdeb57b6b4
feat: allow to rename panels 2022-06-21 12:24:28 +02:00
f249ca372a
feat!: toggle sources/edit, many lines per source
Some UI tweaks (like suffixes in sliders)
Restructured data and storage: many Metrics per one Source. Each Metric
is a Line on a Panel. Fetches are handled per Source. Metrics cannot be
moved across Sources. Data points are linked to a Metric.
Also made "show sources" and "edit mode" two distinct toggles, and thus
implemented a non-edit view for sources.
Also bumped version to 0.3.0
2022-06-21 02:43:03 +02:00
a64412fe4e
chore: version bump 2022-06-18 19:40:28 +02:00
c5a9cf12c6
feat!: made sources reorderable and panels deletable
Added in sources a position field which works just like the one in panels.
Added in sources an "enabled" flag which now governs wether or not data is fetched.
Added a button to delete panels.
Tweaked UI a little
2022-06-15 02:35:13 +02:00
ee9e91534e
feat: improved logs, added log panels, added up btn
improved a lot logging, using tracing from tokio.
Now there's a subscriber which tracks log messages and makes them
available inside the state, so that we can show them in the gui.
Made a jank logs side panel.
Made panels reorderable in a kinda weird but meh way
2022-06-12 23:52:06 +02:00
67a0a4ec5c
chore: removed leftovers, version bump 2022-06-12 12:35:36 +02:00
d9f03244ba
build: bundled is a default feature
If you have sqlite lib on your system, build with `--no-default-features`
2022-06-12 11:59:53 +02:00
e6df83729e
feat: added bundled feature maybe 2022-06-12 11:32:50 +02:00
649b0be848
feat: allow to move sources, side panel
now sources are all edited in one side panel, which opens in edit mode.
Easily move sources across panels.
Implementation has a lot of room for improvement (too many loops) but it
works for now
2022-06-09 02:52:17 +02:00
83a49f07c5
build: dropped jq_rs in favor of jql 2022-06-09 01:38:52 +02:00
ad11aefce3
chore: removed web assets for now
I plan to retry to make it web compatible but right now it's just
useless to keep there around
2022-06-08 14:12:21 +02:00
203cff23f9
feat: show file size in footer (update every s)
also made jq_rs use bundled jqlib because rust-analyzer won't work otherwise
2022-06-08 12:58:07 +02:00
c72e8801f9
feat: added footer, small fixes 2022-06-08 01:47:13 +02:00
3741f82943
feat: arbitrary sources, background worker
implemented a reliable sqlite storage, a way to
save and load values, a native-only
background worker to fetch data and update values
2022-06-07 00:05:45 +02:00
ccf4a64c15
fix: spawn tokio runtime in another thread 2022-06-06 04:42:06 +02:00
4465c672ab
feat: added wrapper for native background worker 2022-06-05 20:05:39 +02:00
8e29b59c35
feat: committing current state
Committing current state, which is a simple full
screen plot with some basic features. It compiles
for both native and web. There's a basic generic
datasource impl. It currently plots random data for demo.
2022-06-03 02:03:37 +02:00