

Jo JavaScript App Framework - tswicegood
http://grrok.com/jo/

======
davebalmer
@jafl5272 -- Jo is brand new, so it's nowhere near the maturity of YUI or
jQuery yet, agreed. As for progressive loading, Jo is geared more for
downloadable apps (using PhoneGap, OSX widgets, Opera widgets, Chrome Apps),
so the rules of engagement are a little different (and flexible). Also, jsdoc
does _not_ have the flexibility out of the box to even handle custom events
(though YUIdoc does) -- I've used both extensively, and still wanting more. I
liked the idea of natrualdocs, but preferred markdown as a better plain text
standard. Very readable in the source, and easy to produce decent HTML with.
joDoc is primitive at the moment, but it does munge markdown comments together
with auto-links and an index for now. Seems like a good start. :)

@aaronbrethorst -- this was leaked a bit earlier than I expected, so I'm
scrambling to put together some more interesting sample apps. Please stay
tuned, or better yet, collaborate on GitHub and help make one. :)

@detrus -- agreed that it needs a good "positioning" summary, interesting
suggestion. :)

~~~
jafl5272
> Jo is geared more for downloadable apps

OK, that makes sense. This explains the use of non-standard tags, too.
Progressive enhancement and using a standard DOCTYPE aren't a big issue for
apps.

~~~
davebalmer
That said, it does play nicely inside browser-based apps, and should work
alongside jQuery and other browser-centric libraries. That's something that
may get explored later, but downloadable apps are definitely Jo's focus from
an architectural standpoint. Thanks for your feedback, by the way.

~~~
jafl5272
One more point: I would recommend building on top of the YUI 3 core instead of
re-inventing it, unless you can point to something that you think they flat
out did wrong. YUI 3 core is pretty small. The YUI team learned a lot from YUI
2 :)

~~~
davebalmer
I'm a Yahoo! webdev alum, and I have most of the original YUI team on my buddy
list. I've paid a lot of attention to YUI3, and have some differing opinions
in our approaches; probably enough to warrant a blog post... thanks for the
topic idea. :)

~~~
jafl5272
I thought your name sounded familiar. I'm very much looking forward to your
post on this topic!

------
jafl5272
The guy surely learned a lot building this, but...

No comparison to jQuery or YUI 3. The documentation suggests jo has a lot of
catching up to do.

> If you're using jo to create all the UI for your application, you won't need
> any content or tags in your index.html file.

Apparently completely ignorant of progressive enhancement: deliver the markup
and CSS and then enhance with JavaScript.

> Often, important information that needs to be documented just doesn't fit
> into a neat, tidy spot.

This is nonsense: you put it in the overall description of the class. But
based on this nonsense, jo invents its own, based on markdown. So you get a
plain HTML page for each class instead of something similar to javadoc.

~~~
k33n
> Apparently completely ignorant of progressive enhancement: deliver the
> markup and CSS and then enhance with JavaScript.

Or maybe he just doesn't agree with that approach. Neither do the guys at 280
North and they're doing just fine with Cappuccino.

> This is nonsense

TL;DR You don't like the framework because it doesn't fit with your tastes.
That's fine, but don't act like the guy is a moron for creating something you
don't want to use.

~~~
jafl5272
Anybody who can build a framework is clearly _not_ a moron. I just have strong
opinions about frameworks, since I've built a few myself. Since I
misunderstood his use of the term "HTML5 apps," I evaluated it as a framework
for a web site, but he has now clarified that it is not.

> This is nonsense

This didn't apply to the entire framework, only to the invention of a new
documentation generator. davebalmer and I simply disagree on this issue.

------
Detrus
Interesting framework, it needs a summary though. Something between the dirty
simplicity of jQuery and gigantness of Google Closure maybe?

------
aaronbrethorst
Anyone know where I can find working example apps built on top of Jo? (without
having to clone the project from Github, that is.)

~~~
pan69
Yeah. It would have been nice if he'd put links to the examples he's giving.

~~~
davebalmer
Look for some soon. I was caught a little off guard with the pre-release of
Jo, so I'm scrambling a little. :)

------
ez77
Naive question: why is it necessary to invoke make at all? Don't these files
simply need to be available in the server?

~~~
davebalmer
The Makefile does a few things:

\- it runs all the JavaScript files through jsure (similar to jslint but more
configurable) to look for possible parse errors in the code

\- it builds jo.js, which is the library baked into a single file

\- if you have jsmin, it also makes jo_min.js which is the same thing but with
no comments and extra spaces (smaller JS file). jsmin is not a strong
compressor, but it is safe and readily available. Any JS compressor will work,
and the Makefile will be a bit more flexible in the future to let you
configure your preferred compression util.

\- make also builds a local copy of the documentation (found in docs/html)
from the source code and any *.mdown files in the directory tree.

Now, that's all developer stuff. If you just want to use Jo, you only need
jo_min.js. Also, unless you're ready to make your own CSS, you should grab the
files in css/aluminum.

Hope that helps!

~~~
ez77
That helps a lot, Dave! Thanks for answering a beginner's question in detail.

