client, on the server, on db (MiniMongo,MongoDB) Shared code: data validations, routing, functions Views: handlebars like (json + HTML holes) Start simple refine later (Convention over configuration) Packages “plug and play”. Integration with NPM or Bower Builtin: Virtual DOM, minification,.. Pluggable: less, coffeescript, ES6 Harmony, classic & social authentication support,.. Meteor can serve: static files, DDP messages(ws,HTTP), HTTP Requests (the trinity..)
/ c h a t . h t m l - - > < h e a d > < t i t l e > M e t e o r M i n i m a l C h a t < / t i t l e > < / h e a d > < b o d y > { { > c h a t L i s t } } { { > c h a t E n t r y } } < / b o d y > < t e m p l a t e n a m e = " c h a t L i s t " > < h 1 > M e s s a g e s < / h 1 > < u l > { { # e a c h m e s s a g e s } } < l i > < s t r o n g > { { u s e r } } < / s t r o n g > { { t e x t } } < / l i > { { / e a c h } } < / u l > < / t e m p l a t e > < t e m p l a t e n a m e = " c h a t E n t r y " > < i n p u t i d = " u s e r " / > < i n p u t i d = " t e x t " / > < b u t t o n i d = " s e n d " > s e n d < / b u t t o n > < / t e m p l a t e >
o n s . j s M e s s a g e s = n e w M e t e o r . C o l l e c t i o n ( ' m e s s a g e s ' ) ; / / c l i e n t / c h a t . j s T e m p l a t e . c h a t L i s t . h e l p e r s ( { ' m e s s a g e s ' : f u n c t i o n ( ) { r e t u r n M e s s a g e s . f i n d ( { } ) ; } } ) ; T e m p l a t e . c h a t E n t r y . e v e n t s ( { ' c l i c k # s e n d ' : f u n c t i o n ( ) { M e s s a g e s . i n s e r t ( { u s e r : $ ( ' # u s e r ' ) . v a l ( ) , t e x t : $ ( ' # t e x t ' ) . v a l ( ) } ) ; $ ( ' # t e x t ' ) . v a l ( ' ' ) ; } } ) ;
non-english) http://atmospherejs.com (meteor packages) http://www.eventedmind.com (screencasts) http://meteorhacks.com (blog) http://weuse.meteor.com (MeteorJS users on a map) http://madewith.meteor.com (apps open or not showcase) http://telesc.pe / microscope (Real world open source HN/Reddit)