top | item 3319384

Instant CSS, JS, HTML or DOM documentation

287 points| steren | 14 years ago |dochub.io | reply

48 comments

order
[+] jsdalton|14 years ago|reply
I continue to enjoy keeping an eye on these single-page style web apps for very basic content applications. I have a feeling this was pretty quick and easy for the developers to put together.

That said, a few things jump out at me that make me think this approach isn't ready for primetime (or to be more precise, takes a lot more work to make it ready for primetime)

* Individual properties are not reflected in the URL, meaning I couldn't copy and paste a link to someone

* This is using a plain hash instead of a hash bang, which, correct me if I'm wrong, means sub pages are not hit by search engines

* If javascript is disabled and I load this, I get a blank screen.

It's this kind of thing that makes me fearful of pursuing this approach for more serious projects...

[+] jashkenas|14 years ago|reply

    > * This is using a plain hash instead of a hash bang, 
    > which, correct me if I'm wrong, means sub pages are 
    > not hit by search engines.
Fortunately, you're wrong about hashbangs. They were a temporary hack to allow the GoogleBot to index Ajax-driven pages before the HTML History API existed. Because of New Twitter, many sites have cargo-culted the hashbang without implementing the required "escaped_fragment" functionality on the server-side to make it actually work. It's the web developer equivalent of an SEO rain dance.

Please don't use hashbangs in 2011. Use pushState() if you're a public-facing site that needs to be indexed by search engines.

[+] qw|14 years ago|reply
I know I'm showing my age by saying this, but I really don't see the benefit of AJAX in this case. It's basically a frameset powered by javascript, so why not just use a frameset to begin with? It would work in more browsers without issues with back-buttons and take advantage of their built in functionality.

AJAX has its place, but I don't see it here.

Edit: I find it amusing that the documentation for the <frameset> tag is missing :-)

[+] shivang|14 years ago|reply
* Yes, Individual properties should have been reflected in the url. Actually if you type in the property in the search box it is creating a url which does the work, but clicking on a property is not making the link. Hope they'll refine it a bit.
[+] kodablah|14 years ago|reply
Many single page interface sites do put the parameters in the URL in the fragment. It's kind of a hack, but the link should still work if done correctly. It is still best to use history.js or something that will only resort to fragments when the History API isn't supported.

The real problem is the developer not respecting the href in the anchor and only handling onclick. This prevents you from saving the shortcut easily, opening in a new tab, etc. I like the approach Google+ and others have taken which says "use the href unless left clicked and no modifiers (i.e. ctrl, alt, shift) are pressed.

[+] rgarcia|14 years ago|reply
A little background: this started as a hack I made to have quick access to CSS docs: http://news.ycombinator.com/item?id=3222253

Since then, with the help of HNer vecter, it's expanded to encompass some more things. The goal right now is to expand this into a more general documentation/code search.

Thanks for the feedback!

[+] eridius|14 years ago|reply
I have instacss.com in my bookmarks bar. Is dochub.io a "better" site to use, or does it not matter which one I use?

Incidentally, I find it very strange that when the site first loads, it's a completely blank page with a Feedback tab on the right. It can sometimes take quite a while for the actual contents to load.

[+] hswolff|14 years ago|reply
Awesome job! I wanted to do something similar and I'm glad I was beaten to the punch. Keep iterating on the project, the idea itself and the execution has a lot of room for growth and 'betterness'. Kudos.
[+] 2arrs2ells|14 years ago|reply
Does anyone else read the url as "do chub"? DocHub.io might be a better way of presenting the URL.
[+] roguecoder|14 years ago|reply
I read it as doch ub, which is slightly misspelled German for "whether or not". I like more certainty in my documentation, personally.
[+] paulrouget|14 years ago|reply
The content comes from MDN (Mozilla Developer Network).
[+] steren|14 years ago|reply
Exactly, and they give credit for it at http://dochub.io/#about and this usage is fine with the CC-by-sa license of the MDN.

I also guess you are fine with this, as it is a useful tool for web devs, who will make a better web with it.

It can also be a source of inspiration for the MDN itself as it proves that searching the MDN is slow.

[+] kirchhoff|14 years ago|reply
Seems to break the back button.
[+] theprestig3|14 years ago|reply
Why is it that every time I see a .io domain, I'm not surprised there using the cliche twitter bootstrap. Other than the lack of originality in design, I think it's pretty useful. Although I would like to see some decent HTML5 documentation. It's not unusual for me to search several websites for HTML5 docs. Would be nice to have a 1 stop place for HTML5 and the related languages. Keep up the good work, great project!
[+] adrianwaj|14 years ago|reply
Great. Ideas:

- outline the currently selected item in the left column as clicked (and remember the setting between sessions)

- allow the shifting of the left column over to the right side (and remember the setting between sessions)

- allow searches by the url (that can jump to the first result)

- optional: dot each property/function that is new to the latest release of that modality (for learning purposes)

[+] mrjd|14 years ago|reply
It's cool but the lack of unique url's and back button is a shame. Hopefully that gets sorted.
[+] generalk|14 years ago|reply
There was another "instant docs" site posted to HN a while back that had the same issue this one has: there's no delay between keyup and pushState(), so if I mistype and backspace a few times I've got a dozen entries in my history.
[+] deepkut|14 years ago|reply
Wow, extremely helpful. Thank you for this tool. Though it did take 2-3 seconds to load (which resulted in me refreshing the page thinking it wasn't working), the documentation is fantastic. I appreciate the contribution!
[+] dlf|14 years ago|reply
This is a gem. For someone who just recently learned HTML and CSS (about 6 months ago) I can usually remember just enough to get it wrong. It's handy that you can just start typing and get to the right thing.
[+] blorenz|14 years ago|reply
I'm hoping this becomes my source of front-end reference goodness! It is quite usable in its current state and has potential for reference of jQuery and other library/API inclusion. Great work!
[+] perfunctory|14 years ago|reply
It took more than 10 sec to load. How is that instant?
[+] Hexx|14 years ago|reply
It doesn't seem to be working in IE8 at all for me. Like blank page except for the feedback button on the right.
[+] colinm|14 years ago|reply
Yeah. I also get this in IE9.