Hacker News new | comments | show | ask | jobs | submit login
Ask HN: Best example application to build to master a web framework?
2 points by theboywho on Nov 9, 2012 | hide | past | web | favorite | 5 comments
Hello HN,

I am in the middle of planning to write a book around a rails-like web framework/technology, and I was wondering what would be the best example, for you, for mastering this kind of tech.

- A twitter clone ? - A tumblr clone ? - An amazon clone ? - etc.

This is kind of a poll, but I am new to HN and couldn't see how I could do that.

Thanks in advance

Typically to get my bearings on Web Frameworks, I build an Amazon clone. Why?

* I can use the frameworks "partial views", header, footer, sidebar.

* I can use the frameworks stylesheets/javascript/images helpers.

* I can see how file uploads work (let users upload avatars).

* I can see what forms helper the frameworks have "create product" form.

* I can see how the framework facilitates forms validation.

* Search - I can see what ficilities the framework gives me in filtering rows from the database.

Once I'm done with this simple app, it takes me around a day, I can confidently say I can work on actual products.

Why only one? I would suggest you to compile a book with 4-5 small but real world examples that focuses on different parts of framework. Ideally, I would like to see :

1) A blog/to-do/HN clone as introduction.

2) Any social application that involves signup/login/user management/profiles/roles/authorizations/connection/communication etc.

3) An e-commerce application - May be a shopping cart.

4) REST API with OAuth2 support(as oAuth provider not just consumer)

This is quite an idea. I'll have to sleep on it ;)


For a really simple example, you could try a Todo app.

For example, this site does the same thing for a number of JS frameworks: https://github.com/addyosmani/todomvc

For something more complex, you could try to simulate a mail client (mail user agent). You probably don't need to make it fully functional, just simulate the email layer. If you do this, you are just obeying Zawinski's Law! (http://en.wikipedia.org/wiki/Jamie_Zawinski#Zawinski.27s_law...)

See what UkiJS does here for a browser example: http://ukijs.org/mail/index.html

In general, check out RosettaCode to see how to do the same thing in different languages.

The Todo app would be good for an introduction tutorial, but for my book, I want the user to understand the whole cycle of a production ready web site, which means I need more advanced features to explore, to take them step by step, from 0 to deploy.

Simulating a mail client would be good too, except that it is more suited for people wanting to build web apps. My book is for people who want to build web sites.

Thanks for the ideas.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact