Constellation - extensible dev console

constellation:console is a fork of the popular msavin:mongol package. The key difference of Constellation is that it provides an API that allows any dev to extend/configure the console via plugin packages.

Examples of plugins are:

babrahams:temple (for visualizing template information)
constellation:session (for viewing / manipulating data in the Session variable)
constellation:subscriptions (for viewing current subscriptions)
constellation:autopublish (for toggling autopublish behaviour)
constellation:tiny (for really minimizing the UI)
lai:ddp-inspector (for visualizing data flow client <–> server)
constellation:position (for positioning the UI)
constellation:velocity (for test results in your dev console)

To take a quick look:

meteor add constellation:console constellation:subscriptions constellation:autopublish constellation:session babrahams:temple constellation:tiny

CTRL + C to toggle console on/off

To remove the parts you don’t like or won’t use, type things like:

meteor remove contellation:tiny

Note: there are also a couple more built-in tabs that can be revealed via the “Config …” panel

If Constellation is not for you:

meteor remove constellation:console constellation:subscriptions constellation:autopublish constellation:session babrahams:temple constellation:tiny

… no harm done.

Will happily accept PRs or work with devs to extend the existing API to allow for creative new plugins. This project’s intention is to be collaborative and open source.

same post on crater.io

15 Likes

Loving the idea! Always wanted more dev tools from devtools extensions, I bet one can put Velocity reporter there too (if needed). Hope the idea and the project will strive to success.

Thanks for the support @slava. I took the idea of putting a Velocity reporter into Constellation as a little coding challenge and now you can

meteor add constellation:velocity

to get a fork of velocity:html-reporter that shows up in Constellation’s UI.

I’ve just released a distro for Constellation, that gives you a lot of functionality out of the box:

meteor add babrahams:constellation

A demo is available on Meteorpad, that steps you through the basic use of the included packages.

2 Likes

Just installed it. Awesome work. Like a ‘mongol’ on steroid.

Got a question : is it possible for the interface by default (not tiny or fullscreen) to extend to the size of the text inside ? I’ve got some collection that have long names and that makes it difficult to see the one i want…

I’ve raised this as a Github issue and will consider including this in the console core for next minor release.

I’ve got a feeling, though, that this could be done right now through a plugin package. If you could leave a few more details about what you’re after in the Github issue, I might be able to put something together sooner rather than later – I’ve left some questions for you there.

I don’t have a github account (bitbucket) so i’ll answer your questions here if that’s ok with you…

So yes, it’s the length of field names (for collection in that case).
The result being that i can’t really select the proper collection before opening one and also, the number of documents is sort of mixing with the name.

See here :

Thanks a lot :wink:

Okay, got it. Thanks. I’ll post any progress with this here.

This package will give you an extra 9 characters or so. :smile:

constellation:shorten-collection-names

It’s “set and forget”, so once you’ve clicked the tab to shorten the collection names, hide the tab via the config panel and it should remember that setting on page refreshes, etc.

That was fast ! Thanks :wink:

Yeah, that’s the idea with Constellation…

Don’t have something you need in your dev console? Whip it up in a package and plug it in.

Incidentally, does the package do what you need it to? If not, feel free to fork and modify.

Here’s a fun package for Constellation: SimpleSchema generator.

  1. Video demo.
  2. Follow up demo.

Don’t expect too much from this plugin :smile: – any generated schema will need to checked over and tweaked. The only fields it attempts to guess are type, label, optional and blackbox.

Still, it saves a bit of tedious typing time …

Demo site for Constellation
Source for demo site

Constellation has genuinely been making my development life easier lately, so I thought I’d share a brief video showing one use case.

Please excuse the background noise – that’s my 4 year old watching a Chinese overdub of “My Little Pony”.

3 Likes

Links to both previous demo sites (on Meteorpad and meteor.com free hosting) are history, so here’s the Constellation demo at a new URL:

http://constellation.taonova.com/demo

1 Like