SlideShare a Scribd company logo
1 of 13
Download to read offline
http://angular-meteor.com/ (Photo Credit)
Build a Recipe Maker with Angular and MeteorJS
TriAngular.js Meetup November 5th, 2015
Jean-Marcel Belmont
Principles of Meteor
● Data on the Wire. Meteor doesn't send HTML over the network. The server sends data and lets the client
render it.
● One Language. Meteor lets you write both the client and the server parts of your application in JavaScript.
● Database Everywhere. You can use the same methods to access your database from the client or the
server.
● Latency Compensation. On the client, Meteor prefetches data and simulates models to make it look like
server method calls return instantly.
● Full Stack Reactivity. In Meteor, realtime is the default. All layers, from database to template, update
themselves automatically when necessary.
● Embrace the Ecosystem. Meteor is open source and integrates with existing open source tools and
frameworks.
● Simplicity Equals Productivity. The best way to make something seem simple is to have it actually be
simple. Meteor's main functionality has clean, classically beautiful APIs.
● http://docs.meteor.com/#/basic/sevenprinciples
Visual Presentation of 7 Core Meteor Principles
Image from Rick Wehrle on slide 4
http://www.slideshare.net/wehrlock/20150309-seven-core-principles-of-meteor-45620129
5 Core Meteor Projects
1. Blaze
a. Reactive UI Library
i. Rendering Engine
b. Spacebars Template Library which is equivalent to Handlebars
2. DDP
a. Websocket-based data protocol
b. DDP is like "REST for websockets". Like REST, it is a simple, pragmatic approach to providing an
API. But it is websocket-based, unlike REST, allowing it to be used to deliver live updates as data
changes. Implementation of DDP is simple (it's just a few JSON messages over a websocket) and the
spec fits on a couple of pages.
3. Livequery
a. Live Database connectors
b. Meteor Livequery is a family of live database connectors. These connectors let you perform "live
queries" against your favorite database: queries that not only return the result of the query at the
time it is made, but that then go on to return a stream of create, update, and delete messages that
inform you of any changes to the result of the query as time passes.
5 Core Meteor Projects (continued)
4. Full Stack Database Drivers
a. Use the same database API on client and server
i. These "full-stack" database drivers let you use the same database API to seamlessly access
your data wherever you are in your system, whether on the client or the server
5. IsoBuild
b. Unified build system for browser, server, and mobile
i. Like make, gcc, and ld in the Unix world, or the command-line Visual Studio tools in the
Windows world, Meteor Isobuild is a complete toolchain for building an app from its source
code into a set of runnable programs.
Read more documentation from https://www.meteor.com/projects
Why Add AngularJS?
Angular extends functionality that is provided by Blaze or can be used to completely replace Blaze.
Spacebars Angular
Angular meteor file extensions
● ng.html files
○ Use the ng.html file extension so that Blaze - Meteor's templating system - won't compile and
override Angular 1 expressions.
● ng.js files
○ ng.js files automatically use ng-annotate and are safely minified.
Common Meteor API methods
if (Meteor.isClient) { if (Meteor.isServer) {
// Any code here runs on client // Any code here runs on server
} }
Meteor.startup(function() {
// Runs code when a client or server starts
});
Angular Meteor Folder Structure and Load Order
● The JavaScript and CSS files in an application are loaded according to these rules:
● Server
○ Meteor gathers any files under the private subdirectory and makes the contents of these files
available to server code via the Assets API. The private subdirectory is the place for any files that
should be accessible to server code but not served to the client, like private data files.
● Client
○ Files inside the client folder will run only on the client side.
○ There are more assets to consider on the client side. Meteor gathers all JavaScript files in your tree,
with the exception of the server, public, and private subdirectories, for the client. It minifies this
bundle and serves it to each new client. You're free to use a single JavaScript file for your entire
application, or create a nested tree of separate files, or anything in between.
● Public
○ Lastly, the Meteor server will serve any files under the public directory. This is the place for images,
(cont) Angular Meteor Folder Structure and Load Order
● Files in subdirectories are loaded before files in parent directories, so that files in the deepest subdirectory
are loaded first, and files in the root directory are loaded last.
● Within a directory, files are loaded in alphabetical order by filename.
● After sorting as described above, all files under directories named lib are moved before everything else
(preserving their order).
● Finally, all files that match main.* are moved after everything else (preserving their order).
● Angular 1 folder structure
● There are many ways to organize and structure an Angular 1 app.
● The two main approaches are:
○ Sorting by file type (controllers, views, etc..)
○ Sorting based on functionality (users, recipes, products, etc..)
■ This is the folder structure that is recommended and that I used for my application.
Meteor Command Line Tool
● meteor help
○ Get help on meteor command line usage. Running meteor help by itself will list the common
meteor commands. Running meteor help <command> will print detailed help about meteor
<command>.
● meteor create <name>
○ Make a subdirectory called <name> and create a new Meteor app there.
● meteor run
○ Serve the current app at http://localhost:3000 using Meteor's local development server.
● meteor debug
○ Run the project with Node Inspector attached, so that you can step through your server code line
by line. See meteor debug in the full docs for more information.
● meteor deploy <site>
○ Bundle your app and deploy it to <site>. Meteor provides free hosting if you deploy to <your app>.
meteor.com as long as <your app> is a name that has not been claimed by someone else.
(continued) Meteor Command Line Tool
● meteor update
○ Update your Meteor installation to the latest released version and then (if meteor update was run from an app
directory) update the packages used by the current app to the latest versions that are compatible with all other
packages used by the app.
● meteor add
○ Add a package (or multiple packages) to your Meteor project. To query for available packages, use the meteor
search command.
● meteor remove
○ Remove a package previously added to your Meteor project. For a list of the packages that your application is
currently using, use the meteor list command.
● meteor mongo
○ Opens a MongoDB shell for viewing and/or manipulating collections stored in the database. Note that you must
already be running a server for the current app (in another terminal window) in order for meteor mongo to connect
to the app's database.
● meteor reset
○ Reset the current project to a fresh state. Removes all local data.
Demo Time

More Related Content

What's hot

Akka - Developing SEDA Based Applications
Akka - Developing SEDA Based ApplicationsAkka - Developing SEDA Based Applications
Akka - Developing SEDA Based ApplicationsBenjamin Darfler
 
Spring 4 en spring data
Spring 4 en spring dataSpring 4 en spring data
Spring 4 en spring dataGeert Pante
 
Introduction to React, Flux, and Isomorphic Apps
Introduction to React, Flux, and Isomorphic AppsIntroduction to React, Flux, and Isomorphic Apps
Introduction to React, Flux, and Isomorphic AppsFederico Torre
 
Prometheus Introduction (InfraCoders Vienna)
Prometheus Introduction (InfraCoders Vienna)Prometheus Introduction (InfraCoders Vienna)
Prometheus Introduction (InfraCoders Vienna)Oliver Moser
 
Aptira presents OpenStack swift architecture and monitoring
Aptira presents   OpenStack swift architecture and monitoringAptira presents   OpenStack swift architecture and monitoring
Aptira presents OpenStack swift architecture and monitoringOpenStack
 
Kubernetes at Telekom Austria Group
Kubernetes at Telekom Austria Group Kubernetes at Telekom Austria Group
Kubernetes at Telekom Austria Group Oliver Moser
 
The history of Prometheus at SoundCloud
The history of Prometheus at SoundCloudThe history of Prometheus at SoundCloud
The history of Prometheus at SoundCloudTobias Schmidt
 
Prometheus Training
Prometheus TrainingPrometheus Training
Prometheus TrainingTim Tyler
 
Active Object Design Pattern
Active Object Design PatternActive Object Design Pattern
Active Object Design Patternjeremiahdjordan
 
Addressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPAddressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPSuhail Syed
 
The Real World Forensics
The Real World ForensicsThe Real World Forensics
The Real World ForensicsCTIN
 

What's hot (16)

Akka - Developing SEDA Based Applications
Akka - Developing SEDA Based ApplicationsAkka - Developing SEDA Based Applications
Akka - Developing SEDA Based Applications
 
Spring 4 en spring data
Spring 4 en spring dataSpring 4 en spring data
Spring 4 en spring data
 
Python component in mule
Python component in mulePython component in mule
Python component in mule
 
Get ready for spring 4
Get ready for spring 4Get ready for spring 4
Get ready for spring 4
 
Introduction to React, Flux, and Isomorphic Apps
Introduction to React, Flux, and Isomorphic AppsIntroduction to React, Flux, and Isomorphic Apps
Introduction to React, Flux, and Isomorphic Apps
 
Fluxxor react library
Fluxxor react libraryFluxxor react library
Fluxxor react library
 
Prometheus Introduction (InfraCoders Vienna)
Prometheus Introduction (InfraCoders Vienna)Prometheus Introduction (InfraCoders Vienna)
Prometheus Introduction (InfraCoders Vienna)
 
Event driven-arch
Event driven-archEvent driven-arch
Event driven-arch
 
Aptira presents OpenStack swift architecture and monitoring
Aptira presents   OpenStack swift architecture and monitoringAptira presents   OpenStack swift architecture and monitoring
Aptira presents OpenStack swift architecture and monitoring
 
Kubernetes at Telekom Austria Group
Kubernetes at Telekom Austria Group Kubernetes at Telekom Austria Group
Kubernetes at Telekom Austria Group
 
The history of Prometheus at SoundCloud
The history of Prometheus at SoundCloudThe history of Prometheus at SoundCloud
The history of Prometheus at SoundCloud
 
Prometheus Training
Prometheus TrainingPrometheus Training
Prometheus Training
 
Active Object Design Pattern
Active Object Design PatternActive Object Design Pattern
Active Object Design Pattern
 
Addressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPAddressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTP
 
Ss2gx
Ss2gxSs2gx
Ss2gx
 
The Real World Forensics
The Real World ForensicsThe Real World Forensics
The Real World Forensics
 

Viewers also liked

20150512 Angular Meteor
20150512 Angular Meteor20150512 Angular Meteor
20150512 Angular MeteorRick Wehrle
 
Getting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaGetting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaWill Haire
 
Lessons Learned About MeteorJS
Lessons Learned About MeteorJSLessons Learned About MeteorJS
Lessons Learned About MeteorJSAlmog Koren
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteorFabian Vilers
 
Meteorjs - Futuristic web framework
Meteorjs - Futuristic web frameworkMeteorjs - Futuristic web framework
Meteorjs - Futuristic web frameworkTomáš Hromník
 
Meteor presentation
Meteor presentationMeteor presentation
Meteor presentationJan Toebes
 
Federal endorsement and interaction with regional officials in the process of...
Federal endorsement and interaction with regional officials in the process of...Federal endorsement and interaction with regional officials in the process of...
Federal endorsement and interaction with regional officials in the process of...Pavel Melnikov
 
A-Frame: VR for Web Developers
A-Frame: VR for Web DevelopersA-Frame: VR for Web Developers
A-Frame: VR for Web DevelopersKevin Ngo
 
Meteor intro-2015
Meteor intro-2015Meteor intro-2015
Meteor intro-2015MeteorJS
 
Meteor presentation
Meteor presentationMeteor presentation
Meteor presentationscandiweb
 
Angular 2 vs Angular 1
Angular 2 vs Angular 1Angular 2 vs Angular 1
Angular 2 vs Angular 1GDG Odessa
 

Viewers also liked (17)

20150512 Angular Meteor
20150512 Angular Meteor20150512 Angular Meteor
20150512 Angular Meteor
 
Meteor Angular
Meteor AngularMeteor Angular
Meteor Angular
 
Getting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaGetting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmeta
 
Understanding angular meteor
Understanding angular meteorUnderstanding angular meteor
Understanding angular meteor
 
Meteor js 1.0
Meteor js 1.0Meteor js 1.0
Meteor js 1.0
 
Meteor Showers
Meteor ShowersMeteor Showers
Meteor Showers
 
Lessons Learned About MeteorJS
Lessons Learned About MeteorJSLessons Learned About MeteorJS
Lessons Learned About MeteorJS
 
Dod
DodDod
Dod
 
Meteor
MeteorMeteor
Meteor
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteor
 
Meteorjs - Futuristic web framework
Meteorjs - Futuristic web frameworkMeteorjs - Futuristic web framework
Meteorjs - Futuristic web framework
 
Meteor presentation
Meteor presentationMeteor presentation
Meteor presentation
 
Federal endorsement and interaction with regional officials in the process of...
Federal endorsement and interaction with regional officials in the process of...Federal endorsement and interaction with regional officials in the process of...
Federal endorsement and interaction with regional officials in the process of...
 
A-Frame: VR for Web Developers
A-Frame: VR for Web DevelopersA-Frame: VR for Web Developers
A-Frame: VR for Web Developers
 
Meteor intro-2015
Meteor intro-2015Meteor intro-2015
Meteor intro-2015
 
Meteor presentation
Meteor presentationMeteor presentation
Meteor presentation
 
Angular 2 vs Angular 1
Angular 2 vs Angular 1Angular 2 vs Angular 1
Angular 2 vs Angular 1
 

Similar to Angular meteor presentation

Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshareSaleemMalik52
 
.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologiesprakashk453625
 
Lightning web components
Lightning web components Lightning web components
Lightning web components Cloud Analogy
 
Introduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupIntroduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupAnsley Rodrigues
 
Get started with meteor | designveloper software agency meteor prime partner
Get started with meteor | designveloper software agency   meteor prime partnerGet started with meteor | designveloper software agency   meteor prime partner
Get started with meteor | designveloper software agency meteor prime partnerDesignveloper
 
Getting Started with React, When You’re an Angular Developer
Getting Started with React, When You’re an Angular DeveloperGetting Started with React, When You’re an Angular Developer
Getting Started with React, When You’re an Angular DeveloperFabrit Global
 
The Meteor Framework
The Meteor FrameworkThe Meteor Framework
The Meteor FrameworkDamien Magoni
 
Spring MVC framework
Spring MVC frameworkSpring MVC framework
Spring MVC frameworkMohit Gupta
 
.NET,ASP .NET, Angular Js,LinQ
.NET,ASP .NET, Angular Js,LinQ.NET,ASP .NET, Angular Js,LinQ
.NET,ASP .NET, Angular Js,LinQAvijit Shaw
 
Node JS - A brief overview on building real-time web applications
Node JS - A brief overview on building real-time web applicationsNode JS - A brief overview on building real-time web applications
Node JS - A brief overview on building real-time web applicationsExpeed Software
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesSolstice Mobile Argentina
 
AngularJS 1.x - your first application (problems and solutions)
AngularJS 1.x - your first application (problems and solutions)AngularJS 1.x - your first application (problems and solutions)
AngularJS 1.x - your first application (problems and solutions)Igor Talevski
 
Plone FSR
Plone FSRPlone FSR
Plone FSRfulv
 
Exploring the Exciting Features of Spring Boot 3.1.pdf
Exploring the Exciting Features of Spring Boot 3.1.pdfExploring the Exciting Features of Spring Boot 3.1.pdf
Exploring the Exciting Features of Spring Boot 3.1.pdfInexture Solutions
 

Similar to Angular meteor presentation (20)

Meet with Meteor
Meet with MeteorMeet with Meteor
Meet with Meteor
 
Why meteor
Why meteorWhy meteor
Why meteor
 
Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshare
 
.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologies
 
Meteor
MeteorMeteor
Meteor
 
Lightning web components
Lightning web components Lightning web components
Lightning web components
 
How Does Angular Work?
How Does Angular Work?How Does Angular Work?
How Does Angular Work?
 
Meteor js framework
Meteor js frameworkMeteor js framework
Meteor js framework
 
Introduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setupIntroduction to angular | Concepts and Environment setup
Introduction to angular | Concepts and Environment setup
 
Get started with meteor | designveloper software agency meteor prime partner
Get started with meteor | designveloper software agency   meteor prime partnerGet started with meteor | designveloper software agency   meteor prime partner
Get started with meteor | designveloper software agency meteor prime partner
 
Getting Started with React, When You’re an Angular Developer
Getting Started with React, When You’re an Angular DeveloperGetting Started with React, When You’re an Angular Developer
Getting Started with React, When You’re an Angular Developer
 
The Meteor Framework
The Meteor FrameworkThe Meteor Framework
The Meteor Framework
 
Spring MVC framework
Spring MVC frameworkSpring MVC framework
Spring MVC framework
 
.NET,ASP .NET, Angular Js,LinQ
.NET,ASP .NET, Angular Js,LinQ.NET,ASP .NET, Angular Js,LinQ
.NET,ASP .NET, Angular Js,LinQ
 
Node JS - A brief overview on building real-time web applications
Node JS - A brief overview on building real-time web applicationsNode JS - A brief overview on building real-time web applications
Node JS - A brief overview on building real-time web applications
 
Top java script frameworks ppt
Top java script frameworks pptTop java script frameworks ppt
Top java script frameworks ppt
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best Practices
 
AngularJS 1.x - your first application (problems and solutions)
AngularJS 1.x - your first application (problems and solutions)AngularJS 1.x - your first application (problems and solutions)
AngularJS 1.x - your first application (problems and solutions)
 
Plone FSR
Plone FSRPlone FSR
Plone FSR
 
Exploring the Exciting Features of Spring Boot 3.1.pdf
Exploring the Exciting Features of Spring Boot 3.1.pdfExploring the Exciting Features of Spring Boot 3.1.pdf
Exploring the Exciting Features of Spring Boot 3.1.pdf
 

Recently uploaded

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Angular meteor presentation

  • 1. http://angular-meteor.com/ (Photo Credit) Build a Recipe Maker with Angular and MeteorJS TriAngular.js Meetup November 5th, 2015 Jean-Marcel Belmont
  • 2. Principles of Meteor ● Data on the Wire. Meteor doesn't send HTML over the network. The server sends data and lets the client render it. ● One Language. Meteor lets you write both the client and the server parts of your application in JavaScript. ● Database Everywhere. You can use the same methods to access your database from the client or the server. ● Latency Compensation. On the client, Meteor prefetches data and simulates models to make it look like server method calls return instantly. ● Full Stack Reactivity. In Meteor, realtime is the default. All layers, from database to template, update themselves automatically when necessary. ● Embrace the Ecosystem. Meteor is open source and integrates with existing open source tools and frameworks. ● Simplicity Equals Productivity. The best way to make something seem simple is to have it actually be simple. Meteor's main functionality has clean, classically beautiful APIs. ● http://docs.meteor.com/#/basic/sevenprinciples
  • 3. Visual Presentation of 7 Core Meteor Principles Image from Rick Wehrle on slide 4 http://www.slideshare.net/wehrlock/20150309-seven-core-principles-of-meteor-45620129
  • 4. 5 Core Meteor Projects 1. Blaze a. Reactive UI Library i. Rendering Engine b. Spacebars Template Library which is equivalent to Handlebars 2. DDP a. Websocket-based data protocol b. DDP is like "REST for websockets". Like REST, it is a simple, pragmatic approach to providing an API. But it is websocket-based, unlike REST, allowing it to be used to deliver live updates as data changes. Implementation of DDP is simple (it's just a few JSON messages over a websocket) and the spec fits on a couple of pages. 3. Livequery a. Live Database connectors b. Meteor Livequery is a family of live database connectors. These connectors let you perform "live queries" against your favorite database: queries that not only return the result of the query at the time it is made, but that then go on to return a stream of create, update, and delete messages that inform you of any changes to the result of the query as time passes.
  • 5. 5 Core Meteor Projects (continued) 4. Full Stack Database Drivers a. Use the same database API on client and server i. These "full-stack" database drivers let you use the same database API to seamlessly access your data wherever you are in your system, whether on the client or the server 5. IsoBuild b. Unified build system for browser, server, and mobile i. Like make, gcc, and ld in the Unix world, or the command-line Visual Studio tools in the Windows world, Meteor Isobuild is a complete toolchain for building an app from its source code into a set of runnable programs. Read more documentation from https://www.meteor.com/projects
  • 6. Why Add AngularJS? Angular extends functionality that is provided by Blaze or can be used to completely replace Blaze. Spacebars Angular
  • 7. Angular meteor file extensions ● ng.html files ○ Use the ng.html file extension so that Blaze - Meteor's templating system - won't compile and override Angular 1 expressions. ● ng.js files ○ ng.js files automatically use ng-annotate and are safely minified.
  • 8. Common Meteor API methods if (Meteor.isClient) { if (Meteor.isServer) { // Any code here runs on client // Any code here runs on server } } Meteor.startup(function() { // Runs code when a client or server starts });
  • 9. Angular Meteor Folder Structure and Load Order ● The JavaScript and CSS files in an application are loaded according to these rules: ● Server ○ Meteor gathers any files under the private subdirectory and makes the contents of these files available to server code via the Assets API. The private subdirectory is the place for any files that should be accessible to server code but not served to the client, like private data files. ● Client ○ Files inside the client folder will run only on the client side. ○ There are more assets to consider on the client side. Meteor gathers all JavaScript files in your tree, with the exception of the server, public, and private subdirectories, for the client. It minifies this bundle and serves it to each new client. You're free to use a single JavaScript file for your entire application, or create a nested tree of separate files, or anything in between. ● Public ○ Lastly, the Meteor server will serve any files under the public directory. This is the place for images,
  • 10. (cont) Angular Meteor Folder Structure and Load Order ● Files in subdirectories are loaded before files in parent directories, so that files in the deepest subdirectory are loaded first, and files in the root directory are loaded last. ● Within a directory, files are loaded in alphabetical order by filename. ● After sorting as described above, all files under directories named lib are moved before everything else (preserving their order). ● Finally, all files that match main.* are moved after everything else (preserving their order). ● Angular 1 folder structure ● There are many ways to organize and structure an Angular 1 app. ● The two main approaches are: ○ Sorting by file type (controllers, views, etc..) ○ Sorting based on functionality (users, recipes, products, etc..) ■ This is the folder structure that is recommended and that I used for my application.
  • 11. Meteor Command Line Tool ● meteor help ○ Get help on meteor command line usage. Running meteor help by itself will list the common meteor commands. Running meteor help <command> will print detailed help about meteor <command>. ● meteor create <name> ○ Make a subdirectory called <name> and create a new Meteor app there. ● meteor run ○ Serve the current app at http://localhost:3000 using Meteor's local development server. ● meteor debug ○ Run the project with Node Inspector attached, so that you can step through your server code line by line. See meteor debug in the full docs for more information. ● meteor deploy <site> ○ Bundle your app and deploy it to <site>. Meteor provides free hosting if you deploy to <your app>. meteor.com as long as <your app> is a name that has not been claimed by someone else.
  • 12. (continued) Meteor Command Line Tool ● meteor update ○ Update your Meteor installation to the latest released version and then (if meteor update was run from an app directory) update the packages used by the current app to the latest versions that are compatible with all other packages used by the app. ● meteor add ○ Add a package (or multiple packages) to your Meteor project. To query for available packages, use the meteor search command. ● meteor remove ○ Remove a package previously added to your Meteor project. For a list of the packages that your application is currently using, use the meteor list command. ● meteor mongo ○ Opens a MongoDB shell for viewing and/or manipulating collections stored in the database. Note that you must already be running a server for the current app (in another terminal window) in order for meteor mongo to connect to the app's database. ● meteor reset ○ Reset the current project to a fresh state. Removes all local data.