Microscope Revisited: I hope this is helpful to some of you


#1

Here’s the GitHub repo!

Hey everyone,

Discovering Meteor’s Microscope was a great way to get an introduction to the Meteor framework. I wanted to continue learning , so I used the Microscope project as a test bed for teaching myself and put it up on GitHub so hopefully it can be helpful to others who are looking to continue their education as well.

Specifically I had a hard time finding anyone who had ported Microscope to FlowRouter and an even harder time finding how to build an app entirely in packages. If you’ve read Discovering Meteor, this should be a good segue into learning those two topics.

Changes

This project is upgraded to Meteor 1.2 and rebuilt using the following packages:

  • kadira:flow-router instead of iron:router for faster, client-side
    routing
  • arilla:flow-router-helpers
  • kadira:blaze-layout
  • meteorhacks:subs-manager for caching subscriptions on the client
  • meteorhacks:fast-render to send initial DDP data to the client and
    decrease pageload time

Branches

There are different branches in this repo for the different steps of refactoring:

  • v1 is the complete Microscope project from DiscoveringMeteor (written by me as I read through the book so there may be slight differences)

  • v2-w/karidahq-packages is rebuilt using the kadira/meteorhacks packages listed above for better performance

  • v3-local-packages is refactored so that all code is inside local packages for better code organization and separation of concerns

  • v4-microservices [COMING SOON] is rebuilt with microservices using meteorhacks:cluster


#2

Very cool! By the way, Telescope is basically a larger version of Microscope built with a package architecture using FlowRouter. So maybe you can take a look at that, too.


#3

yeah I saw that you just switched it to FlowRouter right while I was working on it in this project, and I used your package structure for inspiration :smile: although I opted to split the comments, posts and notifications packages into data/logic (posts) and view (posts-ui) to allow easily replacing the UI, I’m a fan of that pattern. I took the idea from accounts and accounts-ui. Telescope has been good learning material for me. I’m trying to take Microscope from a small app to a production ready app to walk myself through the process from start to finish