Beginner Meteor Development - Build a Basic Reddit Clone
3.9 (8 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
77 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Beginner Meteor Development - Build a Basic Reddit Clone to your Wishlist.

Add to Wishlist

Beginner Meteor Development - Build a Basic Reddit Clone

Learn the basics of Meteor by building a simple Reddit clone from the ground up
3.9 (8 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
77 students enrolled
Created by Curtis Larson
Last updated 12/2015
Current price: $10 Original price: $50 Discount: 80% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 2 hours on-demand video
  • 1 Article
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Build a basic Reddit clone using Meteor.
  • Be comfortable adding additional features to the app
  • Be able to build your own basic website
View Curriculum
  • You should already have Meteor installed and a basic development environment setup (I will be using Sublime Text). Basic knowledge of html, css, and JavaScript is also required

Use Meteor to build real time responsive web applications faster than you ever though possible. The best way to learn Meteor is by building your own websites and that's exactly what we will be doing in this course.

This course will give you step by step instructions on how to build a simple Reddit clone with the following features

  • Real time posts and comments
  • User authentication
  • Upvotes and downvotes
  • Simple easy on the eyes layout that mimics Reddit.
  • Deployed to your own meteor subdomain

From which you will learn the following Meteor fundamentals

  • Basic app structure and tools
  • Templating system
  • Template events and helpers
  • Iron Router Integration
  • User Accounts
  • Meteor Methods
  • MongoDB Schemas
  • Read, Write and write from MongoDB
  • Publishers and Subscriptions
  • Server side security
  • Deployment to meteor subdomain

All this content in only a 3 HOUR tutorial. This really speaks to the power of Meteor as a development framework.

Who is the target audience?
  • This course is for absolute beginners to Meteor.
  • Take this course if your interested in a fast pace, easy to learn development framework
Students Who Viewed This Course Also Viewed
Curriculum For This Course
22 Lectures
3 Lectures 12:26

A quick introduction and overview of what we will be learning. We go over the general goals and why you should choose MeteorJs over another JavaScript framework.

Preview 02:59

An overview and quick usage of the various tools and packages we will be using to build our Meteor application. We discuss the 'meteor' and 'meteor mongo' command along with how to add packages.

Tools & Packages

Learn some best practices for structuring your basic Meteor application. Learn the difference between client side and server side code with Meteor. Also get a brief introduction to the load order of files in Meteor applications.

Structuring our Meteor App
Building the UI
6 Lectures 48:35

We create a few of the basic templates needed for our website. We create the templates for the navbar and one needed to display new posts along with upvotes. Most of the time is spent discussing templates in Meteor, as part 2 is where we write most of the templates.

Building Templates Part 1

We finish up the templates needed for our website. We create the templates for posting comments & new posts, viewing comments and posts The student should now be able to create templates by themselves and include them in other templates.

Building Templates Part 2

We learn how to hook up template helpers in JavaScript to our previously created templates. After this tutorial the student should be comfortable with {‌{#if}}, {‌{#each}}, and Meteor template helpers.

Template Helpers

We learn how to hook up template events. The main event we go over is form submit and we talk about how to retrieve data from a form once it is submitted.

Template Events

We learn all about the iron:router package and how we can now correctly structure our application. At this point the site begins to take shape.

Introduction to Iron Router

We learn how easy it is to implement a user account system in Meteor! Adding a username/password system only takes us a few minutes to be fully functional.

Preview 03:39
Building the Server Side
6 Lectures 35:19

We create schemas for our MongoDB database using simple-schema and collection2. We want to ensure that no bad data is inserted into our database and we plan our data model before writing any insert or find queries.

Creating our Database Schema

We learn how Meteor methods work and we send data from the client to the server. At this point the backend and frontend are finally linked as we can send data back and forth.

Introduction to Meteor Methods

We learn how to insert data into MongoDB from the client. We can now get ready to update our website with live data that we have added.

Inserting Data into MongoDB

We learn how to setup a basic publisher and subscription for the posts collection. Posts on the website are now populated from posts we have created, not from hard coded data.

Meteor Publishers & Subscriptions Part 1

We do a slightly more complicated publisher and subscription for the comments collection. We learn how to only show comments for a specific post.

Meteor Publishers & Subscriptions Part 2

We learn how to ensure that only logged in users can create posts and comments. We both hide the UI elements for creating posts and comments while also securing the server from malicious users. This is very easy with the built in Meteor helpers.

Preview 03:35
Adding Extra Features
4 Lectures 20:04

We use all that we have learned to implement upvotes and downvotes on posts. We store the upvotes and downvotes on the server and display them back to the user.

Implement Post Upvote & Downvote

We implement upvotes and downvotes on comments. We use the same strategies for upvoting and downvoting posts.

Implement Comment Upvote & Downvote

We continue our extra features by adding sorting to both posts and comments. We learn a little more about MongoDB and modify our database schema to make sorting easier.

Sorting Posts & Comments

We add content to the post that was missing from our previous lectures. We also show how the same template can display different data based on where it is included.

Adding Post Content
Finishing Up
3 Lectures 04:35

We learn how to deploy a project to a free Meteor subdomain.

How to deploy to

We go over the project and think about additional features that we could add.

Conclusion & Future application planning

The source code.

Source code on GitHub
About the Instructor
Curtis Larson
3.9 Average rating
8 Reviews
77 Students
1 Course
Freelance Software Developer

I'm a NYC based freelance software developer who previously worked at a large financial company. My main specialty is building full stack web applications and websites from the ground up using technologies like Nodejs, Meteorjs, and Bootstrap. I've been coding for 8 years and have extensive experience in mobile, web, and backend software development. I also love teaching others how to program through Udemy and my YouTube channel.