HasGeek Meteor Workshop
-
Upload
febin-john-james -
Category
Technology
-
view
122 -
download
0
Transcript of HasGeek Meteor Workshop
Introduction to Meteor
Hands on Mini Mongo
Create a prototype with static data
Wire up with database
Add authentication
Deploy the app
Workshop
Developing TeamSync using Meteor
7.Sessions
Understanding meteor sessions
8.Meteor Accounts
Understanding meteor accounts
Adding external login services
Adding twitter login
9.Allow Deny
Understand allow deny callbacks.
Securing TeamSync
10.Deployment
Deploying teamsync app.
4. Collections
Meteor Collections
Meteor Data Synchronization
Integrating collection with templates
Turning prototype into functional app
Reactivity
5.Publications & Subscriptions
How publications & subscriptions work
Adding publications to our prototype
6. Routing
Learn about routing in meteor
Create team pages with Unique Url’s
1. Introduction
What is meteor?
Why meteor?
Installing meteor
Meteor Packages
2. Mini Mongo
What makes mongodb simple?
Mini Mongo CRUD Operations
3. Templates
Meteor’s templating language
Your first template
Template Manager’s
TeamSync Prototype with static data
Why Meteor?
Easy to learn
Up and running in hours
You are already familiar with javascript, aren’t you?
Installing Meteor
curl https://install.meteor.com | sh
npm install -g meteorite
// Only needed if you encounter any permission errors
sudo -H npm install -g meteorite
Let’s create prototype of teamsync with static data
create team template
teams board template
join team template
chat template
mission’s template
team update template
mission update template
Collections for TeamSync
Teams Collection Mission’s Collection Status Collection
Messages Collection
Teams = new Meteor.Collection(‘Teams’);
Teams.insert({})
Teams.update({})
Teams.remove({})
Teams.find({})
Template.teamsBoard.teams = function()
{
return Teams.find();
}
{{#each teams}}
{{>name}}
{{/each}}
JS HTML
Meteor.publish(‘teamsData’,function(){
return Teams.find({});
});
this.subscribe(‘teamsData’)
Server Client
Router.map(function () {
this.route('dashboard', {
path: '/'dashboard',
waitOn: function () {
this.subscribe(‘teamsData’);
}
});
});
Teams.allow({
insert: function (userId,tournaments)
{
if(Meteor.user())
return true;
else
return false;
}
});