[ANN] Hubcap - a SmalltalkHub API and browser for Pharo
Hi, as I wanted to browse the SmalltalkHub contents directly from within Pharo image I wrote a simple browser: Gofer it url: 'http://www.smalltalkhub.com/mc/TorstenBergmann/Hubcap/main'; configurationOf: 'Hubcap'; loadDevelopment. Attached is a screenshot. Works on Pharo 4.0. Still not finished but maybe it is already useful to others as well. One can access the tool from the world menu, implementation lives in "Hubcap-Tools" package. The UI shows and allows to filter users, shows their projects and packages. Special icons display the state (loaded, modified, public writable, ...). One can load from the UI or open Monticello tools. The "Hubcap-Core" package includes an API to query STHub and write expressions like: HubClient new allProjectsForUserNamed: 'TorstenBergmann' HubClient new hasUserNamed: 'TorstenBergmann' So "Hubcap-Core" may be usefull to people who want to build other tools that depend on STHub infos. Basic documentation lives on http://www.smalltalkhub.com/#!/~TorstenBergmann/Hubcap and as class comment on ConfigurationOfHubcap. Beware: the tool is sill not optimized, any clicking involves a query to STHub (hope STHub will not crash when many people use it). API may still undergo changes in the future. Also teams are not yet supported as STHub still returns an MNU error in the REST interface: http://www.smalltalkhub.com/hub/teams?term=Pharo Anyone able to fix that? Thanks to Stephan Eggermonts who gave me the initial idea with some code I've found in "Deprecation finder" and to Sven for the easy to use NeoJSON package. Contributors can just commit, the project is public. Bye T.
Very cool! Torsten Bergmann wrote:
Hi,
as I wanted to browse the SmalltalkHub contents directly from within Pharo image I wrote a simple browser:
Gofer it url: 'http://www.smalltalkhub.com/mc/TorstenBergmann/Hubcap/main'; configurationOf: 'Hubcap'; loadDevelopment.
Attached is a screenshot. Works on Pharo 4.0. Still not finished but maybe it is already useful to others as well.
Running that script didn't add the menu item, but "HubBrowser open" worked fine. btw, from the screen snapshot, could the menu be placed under Tools, next item under Configuration Browser would be ideal.
One can access the tool from the world menu, implementation lives in "Hubcap-Tools" package. The UI shows and allows to filter users, shows their projects and packages. Special icons display the state (loaded, modified, public writable, ...). One can load from the UI or open Monticello tools.
The "Hubcap-Core" package includes an API to query STHub and write expressions like:
HubClient new allProjectsForUserNamed: 'TorstenBergmann'
HubClient new hasUserNamed: 'TorstenBergmann'
So "Hubcap-Core" may be usefull to people who want to build other tools that depend on STHub infos. Basic documentation lives on http://www.smalltalkhub.com/#!/~TorstenBergmann/Hubcap and as class comment on ConfigurationOfHubcap.
That documentation says Hubcap should up in Configuration Browser, but its not there. I assume thats on the todo list, but just reporting for completeness. On Mac, menu item Project > Browse online reports "Error: Calling a webbrowser is not supported on this OS platform"
Beware: the tool is sill not optimized, any clicking involves a query to STHub (hope STHub will not crash when many people use it).
I can see this becoming a popular tool. So the load on STHub is important. Is there some load log to monitor? Maybe some caching on STHub with static files would be useful. Names wont change that often. For me [HubClient new alluserNames] timeToRun --> 4.3 seconds (though maybe thats the network from Australia, could someone closer report their result?)
participants (2)
-
Ben Coman -
Torsten Bergmann