Hacker News new | ask | show | jobs
HN Show: ConcussionJS, an experimental, rapid web dev platform
16 points by the_concussed 4654 days ago
I recently created an experimental, rapid web development platform called ConcussionJS. Its initial target use case is converting HTML prototypes into fully functional applications without the hassle of traditional web development.

Six steps to test ConcussionJS for yourself: 1) Create your HTML markup 2) Include the ConcussionJS JavaScript library (http://www.concussionjs.com/concussion.js) 3) Add additional ConcussionJS HTML attributes to your markup (Built on KnockoutJS syntax; example at https://github.com/concussionjs/concussionjs-core) 4) Load your HTML file in a browser (Chrome and Safari tested) 5) Go to admin console add some records 6) Re-load your HTML file

Voila -- you now have a dynamic, database backed website. No custom client-side script required, no server-side coding or hosting, and you can try ConcussionJS on an HTML file located anywhere, even running off the file system directly (e.g., file(s) could reside on your desktop sans web server).

ConcussionJS can be used both as a cloud platform or run locally. Find more deployment option details at https://github.com/concussionjs/concussionjs-core

Tutorial: http://www.concussionjs.com

Example Applications: + http://samples.concussionjs.com/contacts.html + http://samples.concussionjs.com/twitter-bootstrap/blog/ + http://samples.concussionjs.com/foundation/timesheet/

ConcussionJS JavaScript library: http://www.concussionjs.com/concussion.js

ConcussionJS mission description: http://www.concussionjs.com/#about

Github page: https://github.com/concussionjs/concussionjs-core

I'm looking for feedback and would welcome ConcussionJS collaborators!!

4 comments

Thanks everyone for checking out the site. Would be great to get your perspectives on any of the following:(i) Do you think I should add a custom ConcussionJS sign up/login, or stick with Google/Facebook authentication?, (ii) what kind of projects would you use something like this for, (iii) what additional features would you like to see?
Personally, I'd love to see a simpler setup process. Maybe allow using just MongoDB instead of both Redis and MongoDB?

It was also a bit annoying (to me) that at the beginning of installing from source it seemed possible to install somewhere other than $HOME but the install.sh scripts had so many references to $HOME I decided it wasnt worth changing them all.

Great feedback, and agreed on both fronts! I added Redis to the mix because it has support for a really nice rate limiter pattern that's simple to implement, but its probably overkill for what people want when they deploy locally for experimentation or to contribute to ConcussionJS. I should probably have a production fork of concussionjs-proxy for the short term with the rate limiter, and a master fork built exclusively on mongo.

RE the built in dependencies to the $HOME directory, I agree that it's a weakness of the install scripts. I'll add this as an issue at https://github.com/concussionjs/concussionjs-core/issues.

BTW, there is a command-line tool that I've yet to document that you might find handy. It supports:

$ cjs app --create YOUR_APP_NAME $ cjs app --start YOUR_APP_NAME $ cjs app --stop YOUR_APP_NAME $ cjs app --restart YOUR_APP_NAME

You can see the documentation by typing: $ cjs

--create also supports a --template argument (e.g., cjs app --create YOUR_APP_NAME --template YOUR_TEMPLATE_NAME) which copies the contents of the specified folder with the matching name in concussionjs-core/app_template.

Behind the scenes the command line uses a cool util called mon (https://github.com/visionmedia/mon), a super lightweight version of Monit, to keep the nodejs process running for the app specified (e.g., monitoring the process and restarting as necessary).

Thanks - sounds good.
Fixed the $HOME directory dependency issue! Thanks again for the feedback.
I decline to use FB or Google for authentication, for what it may be worth.
I suspect many others feel the same way.. I'll add this as an issue on https://github.com/concussionjs/concussionjs-core/issues
I would prefer just signing up to your service or using OpenID or GitHub instead.
This looks rather nifty!
Amazing project. Change the name immediately. Concussion is a horrible name...
What do you think about MomentumJS? I have that domain registered, too.
I also agree, not only was remembering concussionjs hard, but it's also too long and confusing. The project is really really awesome though!!

I'd suggest to implement an abstraction allow implementation of more flexible models by using: http://en.wikipedia.org/wiki/Domain-driven_design

yeah much better. Momentum has a positive connotation. Again, very cool project!