When I first started looking into Apollo a few months ago I was very excited by how flexible and powerful GraphQL is. But at the same time, I quickly started missing many things I had taken for granted in Meteor.
For example, with Meteor a list showing the contents of a
Posts collection will automatically be updated with any new posts you create. With Apollo, you have to write logic to explicitly insert that new post in your data store.
I wanted to port Nova (the continuation of the Telescope project) to GraphQL without losing that ease of use, so I ended up writing a whole bunch of utilities to take care of that kind of details for you.
And I really think the new version of Nova we ended up with is now the easiest way to get started with GraphQL and Meteor.
In practice, here’s what you get with Nova:
- GraphQL schema generated from your SimpleSchema schema.
- A flexible schema-based permissions system.
- Automatically generated forms.
- Paginated list component for easy data loading and updating.
- Mutation helpers.
- Out-of-the-box SSR.
- Easy internationalization.
And just to clarify, although Nova does come with features like posts, comments, etc. out of the box, all of this stuff is completely optional and can be removed thanks to Nova’s package-based architecture.
Next on our roadmap is focusing more on the performance aspect (now that we’re not using DDP, methods, etc. anymore we should be able to get rid of quite a few Meteor-only packages) and building out the ecosystem with themes, plugins, etc. If you’d like to contribute we could definitely use a hand! And it could be a great way for you to learn about Apollo and GraphQL )
If you want to learn more, I suggest checking out the brand new documentation, especially the Nova Framework tutorial. And of course, if you have any questions you can always come say hello in our Slack chatroom!