Hacker News new | past | comments | ask | show | jobs | submit login

I think I might give Meteor a shot. For a long time I have been working with AngularJS and Node.js. Recently I have been working exclusively with React.js + Flux and Node.js to build isomorphic web applications. I like the fact Meteor is isomorphic by default and comes with everything you need. I have always somewhat seen it as this outlier, a great looking framework but lacking the same vocality that Facebook and Google can give their respective libraries and frameworks.

Even seeing Meteor from a prototyping perspective it looks like a great tool. The integration with MongoDB (3.0 is fantastic by the way) and ability to quickly create and work with collections from within your Meteor applications without really needing to glue anything together or configure is something that appeals to me (especially as a front-end developer who is asked to prototype things quite a lot). Coupled with the support for authentication, user accounts and easy deployment, these are definitely key features to a modern web application.

Windows support is definitely an added bonus, especially for me who switches between a MacBook Pro and a PC for .NET development.




The tooling is where Meteor really shines. I must admit I found React to be quite cumbersome to get off the ground, in contrast Meteor is pure bliss.

It hasn't all been roses; I've had plenty of obstacles to overcome as I've learnt the framework, its capabilities and its limitations, but the community has been helpful and I can honestly say that working with Meteor is on the whole very slick.

https://atmospherejs.com/ is your close friend. Iron Router is a very, very close friend.

Good luck!


From what I have seen the tooling is definitely great. I am not the worlds biggest fan of Ruby on Rails, but one aspect I have always liked is the scaffolding. Being able to generate the skeleton of an application from the command line without needing to glue anything together or read documentation on multiple plugins.

Don't get me wrong, I love working with React.js, but it isn't a framework and aspects like dealing with data, API's and other more functional aspects can take a lot of time to get working with React's way of thinking. React also requires a certain degree of glue-fu to get it to the same place something like Angular, Ember or Meteor seems to be. I think Meteor could be a nice down-the-line framework. For my next project, I'll give it a shot. I have a friend who has been building something with it and he seems to absolutely love it.

Having said that, if you want to use React and Meteor after reading through the documentation it seems they make it easy to integrate with other libraries and even frameworks. I even saw they mentioned you can use Meteor with AngularJS (which is crazy), but cool nonetheless.


Here's how to integrate React with Meteor: https://github.com/reactjs/react-meteor

A talk demoing it: https://youtu.be/puoD7b4Ow7k

Here's how to integrate AngularJS with Meteor: https://github.com/Urigo/angular-meteor

A talk demoing it: https://youtu.be/s6IgKYsZAyI


There are some guys that created a Meteor code generator: http://www.meteorkitchen.com and yes there's the NPM iron-cli.


Meteor Kitchen is awesome! After creating many Meteor apps from scratch I have made a template that I commonly use but Meteor Kitchen is even better.


"Meteor Kitchen" is now available for Windows too.


I agree. Scaffolding and generators to glue things together in code are sorely missing in Meteor. Scaffolding is useful to beginners and experts alike.

With everything in a predictable location and following the same patterns, code is more intuitive to reason out.


Ask and you shall receive. https://github.com/iron-meteor/iron-cli

There are actually a handful of good scaffolding options for Meteor. But once you understand Meteor's special treatment of some folders & files, and the basic CRUD stuff then you will be hooked and scaffolding will not be a big thing :)


I have a hard time understanding how meteor is comparable to angular or ember given that it appears to be full stack in every way, whereas angular or ember I can add to my existing stack.

Meteor has always seemed interesting but the fact that it is hosted makes it a non starter. There's too many scaling questions that a marketing site will never put me at ease, I'll need to see some solid case studies and ideally a company sponsor of some sort dogfooding it.

Maybe for an MVP? And even then, I have a hard time justifying it over mocking my data and using something like angular to speed up front end. Maybe I'd use it in very narrow use cases.


How's this for marketing? http://stackoverflow.com/questions/18083835/how-many-concurr...

Meteor is exclusively not hosted by Meteor (company), you are wrong. You -can- use their free hosting because it's useful to just get an MVP online as quickly as possible.

You can host a Meteor app wherever you can host NodeJS.


Is it me or are a lot of the objections seem they come from peeps that have not tried it for more than a day? More assumed opinions and quick conclusions rather than educated and informed. I am stunned at the confidence of these opinions too. Puts the posters in a bad light. The major takeaway... it shows Meteor needs to do a better job educating the developer community.... and .... haters gonna hate ;)


I never claimed to be confident about my objections, I simply stated that the public portion of the site doesn't address the questions/concerns I have.


You can choose to use Meteor's hosting or you can do it yourself. There is a great open source Product Hunt/Hacker News clone application built on Meteor called Telescope - http://www.telesc.pe/ - I am self hosting it for a site that I run about Javascript, I haven't needed to do anything except styling tweaks, but it is running on a simple DigitalOcean VPS quite fine.


What kind of traffic volume does it get?


> the fact that it is hosted makes it a non starter.

What do you mean?


If you get lost at any point, I highly recommend https://www.discovermeteor.com/. Definitely much useful than the official documentation if you're looking for any sort of tutorial.


For the sake of shameless self-promotion, I'd also like to suggest my book for anyone who feels Discover Meteor moves a bit too fast: http://meteortips.com/book/ (It's free.)

:)


Thanks so much for this. I finished your book over the weekend and loved how clear and concise the writing was. Discover Meteor was difficult to follow as a beginner but am more confident that I can follow along now. Thanks again!


http://www.meteor-tutorial.org/ - highly recommended by me because I wrote it.


Discover Meteor is great but it left me wanting for some more, in-depth resources. I found the Meteor in Action book to be of great help. They are about to release the complete version but the Early Access version is pretty much done: http://www.manning.com/hochhaus/


Why aren't these great books turned into the official documentation if the current official docs are lacking in so much quality?


The official docs are great for the core APIs. I agree more attention is needed for Blaze and Spacebars. But lacking? No.

The source code is very well annotated also.


Because that sort of "consulting economy" is the open source business model de jure.


It's not really new, except perhaps it being more indie now. In most (but not all) niches over the years, the paid, formal published for-profit books have provided the best documentation, right back to the 70s, through O'Reilly's catalogue (he got rich for a reason), through MSDN, and right up to now. Indeed, it's possibly better now because a single author can do it all on their own.


Just FYI: du jour. De jure means something else.


What's great is you can still use React with a Meteor backend. There are tons of integrations and examples out there on how to do so. :)


I haven't used Meteor too much, and I always seem to find myself a bit mystified as to what it really is. Is it the front-end? Seems like no, if you can swap that out with React. Is it the back-end? Can that be swapped? The real-time communication functionality? The tooling? All of the above, with caveats? I'm very curious!


All of the above seems pretty accurate. Meteor aims to provide pretty much 100% of the things you need to build a real-time web app right out of the box (or package manager). Front-end, back-end, middleware, tooling, DB wrapper, etc.

Meteor is modular enough that you can swap out current pieces if you want to, but you're certainly not expected to do that (and if you're just getting started with Meteor, it's almost discouraged). And there are plenty of benefits to just using Meteor for everything -- e.g. Meteor creates a "minimongo" interface on the client that lets you re-use your MongoDB queries on the client.

One way to grok this is to compare Meteor to Django. Just as you can swap out Django's default homegrown templating system with Jinja, you can swap out Meteor's default homegrown reactive frontend with React. But you certainly don't have to and neither Django's or Meteor's devs expect you to.

There's a more thorough discussion of Meteor's various parts here: http://joshowens.me/what-is-meteor-js/


It's a full stack framework. Check out this article: http://wiki.dandascalescu.com/essays/Why_Meteor


Meteor is a full-stack platform. It is made up of a bunch of smaller sub projects that come together to make this awesome project. So, if you don't want to use part of it, you don't necessarily have to.

You can read more about that here: https://www.meteor.com/projects


It's a full stack platform (note the distinction between a framework and a platform). I could explain it further, but I think reading through the tutorial [1] will help you more.

1: https://www.meteor.com/install


> I like the fact Meteor is isomorphic by default and comes with everything you need.

Meteor is kind of isomorphic, but not in a very useful way. It does not do server-side rendering unless you include the hacky phantomjs module, last I checked.


We're getting past that, the issue is top-of-mind for Meteor and community continues to work on better solution, for example https://meteorhacks.com/meteor-server-sider-rendering-for-se...


Use React and route-core packages. You don't have to rely on Blaze for rendering.


could you explain what isomorphic means in this context? what set is mapped to another set? what meaning for the set is maintained?


Isomorphic is the word some Airbnb people picked to mean "web app that can render html on the server and the client". Everybody hated the word, but nobody came up with something better so it stuck :)


Isomorphic means "same shape". In this case the code running on the client and on the server is the same. Not that terrible of a choice for a word.




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

Search: