Closed dignifiedquire closed 6 years ago
Some ideas:
btw, am ok calling this Hive internally, but not externally. if you mean above just internally, ignore the below.
if you want to use hive as a concept to inspire art or naming, i disagee. this is because -- while i very much like the name + concept space -- I would like to keep the name of the WebUI in the space theme, and a name that's cohesive with other tools, and that's super obvious for the use case. Hive introduces a whole new conceptual world (colony insects, and convolved with space, the zerg, formics, etc), and i want to keep all the main products cohesive in theme and in conceptual space. this makes it easy for people to map concepts, and pick up ideas.
if looking for a name to call this, maybe since station
is the desktop app:
am sure there are more.
I still think "Console" or "WebUI or "Web Interface" is going to be the best, as it matches what a ton of other products call this piece of software.
if you mean above just internally, ignore the below.
Ignoring below, hive was just meant as a codename for the next release, not for the webui itself.
But reading below because the webui could get a nice new name. I do like the idea of calling it "bridge", but then again you are right in the sense that a lot of products already use "WebUI" and it's immediately clear. So I'm fine with just leaving it as it is as well.
:+1: sounds good! :)
If station
is the desktop app, maybe this is the web station
?
i'd like to see, cpu consumption, memory usage, disk usage, number of goroutines, coffee consumption, and maybe a chart of number of incoming requests per second or something
I would like for it to show (on top of the ones already added on the thread):
If there's a way to tell which data we're serving out is most popular, that would be cool. Maybe limit it to 'most popular pinned items' by tracking the N most popular blocks and then see if they show up as part of the refs of a pinned hash.
i'd like to see, cpu consumption, memory usage, disk usage, number of goroutines, coffee consumption, and maybe a chart of number of incoming requests per second or something
this we can all pull out of /debug/metrics/prometheus
, given we expand the CORS headers to /debug
this we can all pull out of /debug/metrics/prometheus, given we expand the CORS headers to /debug
We can already get from diag/sys
I've started work on https://github.com/Dignifiedquire/js-ipfs-event-stream which will provide a stream of all data I can get from the ipfs node (log/tail
, diag/sys
, diag/net
for now)
I'd like to propose using "hive" as an opportunity to modularize webui pages into components that can be embedded into other projects such as station.
webui-hive
with a scaffold for tests and builds with webpack (#87, #38).I'd like to setup the new application scaffold and start the file module in the next sprint. Then finish files in the sprint after that. Then peers, node stats, config, and logs. Package that as the next release and go from there.
The files module would have everything described above, be usable inside electron for station, and build off of ipfs/file-browser.
Thoughts?
@alexmingoia it would be very cool to have React components or just javascript modules that take an instance of the IPFS API as parameter. It would make developing new web apps easier, for example I could integrate them in my ipfs-boards
@alexmingoia what you describe in terms of modularization is very much part of the goal of the next steps for the webui. I haven't written this down in full details but if you want to work on this it would be very much appreciated. A couple of things I wanted to use
async
+ bluebird (http://babeljs.io/docs/plugins/transform-async-to-module-method/ and http://babeljs.io/docs/plugins/syntax-async-functions/)Sorry if this is a bit random, just trying to get everything down so you have an idea what's floating around in my head. Please let me know what you think and don't hesitate to ask questions. Also it would be good if you could join our video sync for Apps on IPFS on Monday: https://github.com/ipfs/pm#stage-2-sprint-discussions as this is a good place to discuss and plan some of these things.
Curious to hear more about your thoughts on (no) jquery.
Sounds like a great list with a lot of experience behind it.
@harlantwood my opinion about jquery is that it's a huge set of functions and pretty heavy on the bandwidth while the app probably uses a low percentage of the actual code in it. For most of the stuff that jquery does, there's usually some other modular library that does it better with fewer kilobytes, like zepto. Also, since it looks like we're already using React, I don't think jQuery has anything to offer.
Of course this is my opinion and a subjective view.
For bootstrap, most of the time less than half of its actual code is used, so I'd suggest including a tool that removes unused css somewhere in the build system.
Curious to hear more about your thoughts on (no) jquery.
I'm not in general against using jQuery, but this is a react app, so using jQuery is like trying to build a house out of Lego and suddenly throwing around a hammer.
In some more objective terms
@Dignifiedquire I'm not super familiar with either the WebUI or React, but react-lite might be something to check out. It's supposed to be a drop-in replacement for React, just without server side rendering. It's apparently quite a bit smaller.
WebUI Next? See #749!
Take inspiration from Dropbox/Finder/Explorer
DAG
Config
Logs
Stats
Other thoughts
Drafts
Connections