7 ms·
YouTube comments are inane. TechCrunch has shown that photo-attached Facebook comments significantly increase the quality of comments. TVDinnr shows YouTube v
by ljlolel 15y ago
YouTube comments are inane. TechCrunch has shown that photo-attached Facebook comments significantly increase the quality of comments. TVDinnr shows YouTube videos with Facebook comments for more interesting discussions.
There are a few known issues that I have to finish, listed at the bottom. Nevertheless, it is functional and fun to use.
I created this as an experiment in Facebook comments and one-page JS webapps.
I know that many of you don't use Facebook, and neither did I, but the Facebook comment system has a lot of intelligence in its social sorting algorithm and it is very viral.
The whole app code is one index.html. I minified and compress the css/js into one file on deploy. All data and functionality come from js apis.
It scales infinitely because I can host the file on S3 and point the DNS at it.
Working on this made me realize that the world needs a front-end-based javascript web framework.
There are a number of backend js frameworks including ones that bridge to ajax on frontend, but none focus on making purely JS apps (with JS, GWT uses java) on one page using hashes and/or history. jQuery does a lot of stuff, but webapps need a little glue.
We need a full client-side JS app framework, with an URL Router, Templates, Controllers, Models, and plugins. It should be able to wrap json api interfaces easily, and it should handle all the page changes that need to happen when it's all just js changes.
TODO:
* Needs real, accurate logo; using a placeholder for now
* Orange share button broken
* Video duration not shown; descriptions not shown
* No category browse feature
* No About page, FAQ, Press, etc
* Search should have instant suggestions
* Design could be prettier
* The Facebook status message is generic not video specific because facebook's server side crawler does not execute js. I might make a small server side component using Go on GAE later to fix this.
- davidcann 15y agoTry cappuccino.org for your front end JavaScript mvc needs.
- ljlolel 15y agoThanks, I saw that, it looks like it reimplements Cocoa, for desktop-like interfaces. Is it more flexible, useful for custom and more web-like ui's too?
- eknuth 15y agoVery nice. Have you checked out angular.js? It has routing, templates, controllers and jsony stuff. Models are a little more complicated.
- ljlolel 15y agoNo, I didn't see that. Thanks. I did some quick google searches and also scoured a Wikipedia article comparing frameworks.
- arantius 15y agoI've recently used angular (angularjs.org) and I found that it felt strange, so it took a steep learning curve, but though steep it was rather short, and at the top was bliss!
- arturadib 15y agoTry backbone.js, Sproutcore, or Cappuccino for client-side frameworks.
- ljlolel 15y agoThanks! I was looking in a wikipedia article comparing frameworks that didn't cover every one. Backbone looks really lightweight. SproutCore looks interesting, I misunderstood it at first. It looks like Cappuccino is trying to be like Cocoa, a little to heavy and specific for my needs.
- arturadib 15y agoThere's more - Uki.js, Sammy.js, Knockout... None of which offers good UI/theme, in my opinion. I like jQuery Mobile's theme, even on desktop. That's what I'm using for my latest project (also using Backbone.js for MVC).
- ljlolel 15y agoYea, backbone looks by far the most well-developed.
- mbesto 15y ago>We need a full client-side JS app framework, with an URL Router, Templates, Controllers, Models, and plugins. It should be able to wrap json api interfaces easily, and it should handle all the page changes that need to happen when it's all just js changes. http://www.sproutcore.com/ http://www.sproutcore.com/ http://cappuccino.org/ http://cappuccino.org/ http://code.google.com/webtoolkit/ http://code.google.com/webtoolkit/ http://developer.yahoo.com/yui/ http://developer.yahoo.com/yui/ http://www.sencha.com/ http://www.sencha.com/ EDIT: Took vaadin.com out - thanks arturadib What's missing from these?
- arturadib 15y agoVaadin is not a client-side framework; it's a server-side Java framework that takes care of client-side code as well. It's similar to Nitrogen for Erlang.
- ljlolel 15y agoI mentioned cappuccino and sproutcore in other replies here. Sproutcore looks interesting, and there's a great team behind it! I mentioned GWT. As you know, it's Java that compiles to JS. I don't see how YUI is different from jQuery and plugins. I don't see a router or templates in the yui docs. Sencha targets mobile. You asked what's missing. Well, none of them are based around jQuery, arguably the reigning king of minimalist js libs. Minimalism means less learning, easier to use. They are all pretty heavy. I imagine making something more like web.py or Flask or weby, but for frontend JS.
- deleted 15y ago[deleted]
- jrussbowman 15y agoYUI3 is more of a framework than a complete solution, but personally I prefer it that way. It offers more flexibility. Here's a post on defining your template within the html itself using yui3. http://lostsyntax.net/posts/5 http://lostsyntax.net/posts/5 I will admit I had a little trouble with that approach, and ended up defining my "templates" as strings within the javascript itself for unscatter.com. That's how the paging works for javascript enabled clients. If you are really after MVC, from what I've read of them I think SproutCore probably comes the closest. I think though, you need to consider the environment you're working in. Programming a system that will run on a server is much different that programming an application that will run on a personal computer, laptop or even mobile device. You're generally bound to a single core with limited memory availability. Syntactic sugar leading to faster development time is generally a good compromise on the server side, but on the front end you have to be careful. This warning isn't an attempt to disuade you from the existing frameworks listed, or even to keep you from writing your own. It's just meant to advise you of something to keep in mind while you do your application development. Know your box, and excel inside it.