Meteor (web framework)
{{Short description|Web framework in JavaScript}}
{{use dmy dates |date=April 2021}}
{{Infobox software
| name = Meteor
| logo = Meteor-logo.png
| logo size = frameless
| caption = A better way to build apps
| developer = Meteor Software
| released = {{Release date and age|2012|1|20}}{{cite web|url=https://github.com/meteor/meteor/commit/4e4358e2c068ffd0c0bc565bb2a9438c68bab7fb|title=Bump to version 0.1.1 · meteor/meteor@4e4358e|website=GitHub}}
| latest release version = {{Meteor (web framework) version}}
| latest release date = {{Meteor (web framework) version|releasedate}}
| operating system = Cross-platform
| repo = {{URL|https://github.com/meteor/meteor|Meteor Repository}}
| programming language = JavaScript
| genre = JavaScript framework
| license = MIT License. For dependencies: various including proprietary.
| website = {{Official URL}}
}}
Meteor, or MeteorJS, is a partly proprietary, mostly free and open-source isomorphic JavaScript web framework{{cite web | last1=Vanian | first1=Jonathan | title=Meteor wants to be the warp drive for building real-time apps | url=https://gigaom.com/2014/12/27/meteor-wants-to-be-the-warp-drive-for-building-real-time-apps/ | publisher=Gigaom | date=27 December 2014}} written using Node.js. Meteor allows for rapid prototyping and produces cross-platform (Android, iOS, Web) code. The server-side MongoDB program is the only proprietary component of Meteor and is part of the Meteor download bundle. It is possible to use Meteor without using the server-side MongoDB. It uses the Distributed Data Protocol and a publish–subscribe pattern to automatically propagate data changes to clients without requiring the developer to write any synchronization code.
Meteor uses JavaScript as its primary programming language, enabling developers to use a single language for both client-side and server-side code.{{cn|date=December 2024}} This approach can streamline the development process for mobile applications by reducing the need for additional programming languages.{{cn|date=December 2024}} On the client, Meteor can be used with any popular front-end JS framework.{{cn|date=December 2024}}
Meteor is developed by Meteor Software. The startup was incubated by Y Combinator{{cite web | last1=Tan | first1=Garry | title=Meteor (YC S11) raises $11.2M from Andreessen Horowitz and Matrix Partners to create the next Ruby on Rails | url=http://blog.ycombinator.com/meteor-yc-s11-raises-112m-from-andreessen-hor | publisher=Y Combinator}} and received $11.2M in funding from Andreessen Horowitz in July 2012.{{cite web | last1=Finley | first1=Klint | title=Andreessen Horowitz Keeps Eating The Software World With $11.2 Million Investment In JavaScript Framework Company Meteor | url=https://techcrunch.com/2012/07/25/andreessen-horowitz-keeps-eating-the-software-world-with-11-2-million-investment-in-javascript-framework-company-meteor/ | publisher=TechCrunch | date=2012-07-25}} Meteor raised an additional $20M in Series B funding from Matrix Partners, Andreessen Horowitz and Trinity Ventures.{{Cite news|url=https://blog.meteor.com/announcing-our-20m-series-b-funding-49dcfd3c3c6f|title=Announcing our $20m Series B Funding – Meteor Blog|date=2015-05-19|work=Meteor Blog|access-date=2017-09-29}} It intends to become profitable by offering Galaxy, an enterprise-grade hosting environment for Meteor applications.{{cite web|url=https://blog.meteor.com/meteors-new-11-2-million-development-budget-7370586949e7|title=Meteor's new $11.2 million development budget – Meteor Blog|date=25 July 2012|website=meteor.com}}
History
Having been in development for about eight months, Meteor was initially released in December 2011 under the name Skybreak.{{cite web|url=http://meteor.com/blog/2012/01/20/skybreak-is-now-meteor|title=Skybreak is now Meteor – Meteor Blog|date=20 January 2012|website=meteor.com}} By April 2012, the framework was renamed Meteor and officially launched.{{cite web|url=https://techcrunch.com/2012/04/11/meteor-launch/|title=Meteor: Etherpad Founder & Other Rockstars Team Up To Make Web App Development A Breeze – TechCrunch|website=techcrunch.com|date=11 April 2012 }} During the next few months, and with the help of large investments from Andreessen Horowitz and endorsements from high-profile figures in the startup world, Meteor steadily increased its user base. It became more commonly used in production apps and websites.
Particularly after receiving large amounts of venture capital in its Series B funding round, Meteor acquired and integrated several other startups into its core product. Acquisitions have included FathomDB, a cloud database startup,{{cite web|url=https://techcrunch.com/2014/10/07/meteor-acquires-yc-alum-fathomdb-for-its-web-development-platform/|title=Meteor Acquires YC Alum FathomDB For Its Development Platform|last1=Lardinois|first1=Frederic|date=2014-10-07|publisher=TechCrunch}} Galaxy, a cloud platform for operating and managing Meteor applications,{{Cite news|url=https://blog.meteor.com/announcing-meteor-galaxy-39c652c9ae69#.zhotzbjz3|title=Announcing Meteor Galaxy|last=DeBergalis|first=Matt|date=2015-10-05|newspaper=Meteor Blog|access-date=2017-02-03}} and Kadira, a performance monitoring solution.{{Cite news|url=https://blog.meteor.com/mdg-acquires-kadira-apm-96dfb3167fe5|title=MDG acquires Kadira APM – Meteor Blog|date=2017-03-24|work=Meteor Blog|access-date=2017-09-29}} Meteor has successfully monetized its userbase: In 2016, Meteor beat its own revenue goals by 30% by offering web hosting for Meteor apps through Galaxy.{{Cite news|url=https://blog.meteor.com/meteor-in-2017-ad92d777c12d|title=Meteor in 2017 – Meteor Blog|date=2017-01-26|work=Meteor Blog|access-date=2017-11-20}}
From 2016 the Meteor Development Group (the open source organisation powering Meteor) started working on a new backend layer based on GraphQL to gradually replace their pub/sub system, largely isolated in the whole node.js ecosystem: the Apollo framework.
In October 2019, the Meteor.js open source framework and Galaxy Hosting Products were purchased by Tiny Capital and renamed Meteor Software.{{cite news|url=https://news.ycombinator.com/item?id=21137653|date=2017-01-26|title=Tiny Acquires Meteor}}
Distributed Data Protocol
Distributed Data Protocol (or DDP) is a client–server protocol for querying and updating a server-side database and for synchronizing such updates among clients. It uses the publish–subscribe messaging pattern. It was created for use by the Meteor JavaScript framework.{{cite web | url=http://meteor.com/blog/2012/03/21/introducing-ddp | title=Introducing DDP | access-date=2013-05-29}} The DDP Specification is located on GitHub.{{cite web | url=https://github.com/meteor/meteor/blob/master/packages/ddp/DDP.md | title=DDP Specification | website=GitHub | access-date=2014-04-24}}
Books
- Coleman, Tom; Greif, Sacha – Discover Meteor (2014){{cite book | last1=Coleman | first1=Tom | last2=Grief | first2=Sacha | title=Discover Meteor | url=https://www.discovermeteor.com/ | access-date=2015-02-02 | archive-url=https://web.archive.org/web/20160420111552/https://www.discovermeteor.com/ | archive-date=2016-04-20 | url-status=dead }}
- Hochhaus, Stephan; Schoebel, Manuel – Meteor in Action (2014){{cite book | last1=Hochhaus | first1=Stephan | last2=Schoebel | first2=Manuel | title=Meteor in Action | date=2014 | publisher=Manning | isbn=9781617292477}}
- Müns, Philipp – Auditing Meteor Applications (2016)
- Strack, Isaac – Getting started with Meteor.js JavaScript framework (2012){{cite book | last1=Strack | first1=Isaac | title=Getting started with Meteor.js JavaScript framework | date=2012 | publisher=Packt Pub. | location=Birmingham, UK | isbn=978-1782160823 | edition=New}}
- Susiripala, Arunoda – Bulletproof Meteor (2014){{cite web | last1=Susiripala | first1=Arunoda | title=Bulletproof Meteor | url=https://bulletproofmeteor.com/|website=Meteorhacks}}
- Titarenco, David; Robinson, Josh; Gray, Aaron – Introducing Meteor (2015){{Cite book|title=Introducing Meteor|last=Robinson, Josh|others=Gray, Aaron,, Titarenco, David|isbn=9781430268352|location=[Berkeley, CA]|oclc=934083393|date = 2015-12-30}}
- Susiripala, Arunoda – Meteor Explained – A Journey Into Meteor's Reactivity (2014){{cite web | last1=Susiripala | first1=Arunoda | title=Meteor Explained: A Journey Into Meteor's Reactivity | url=https://gumroad.com/l/meteor-explained|website=Meteorhacks}}
- Turnbull, David – Your First Meteor Application: A Complete Beginner's Guide to the Meteor JavaScript Framework (2014){{cite book | last1=Turnbull | first1=David | title=Your First Meteor Application | date=30 July 2014 | url=http://meteortips.com/book/}}
Packages and tools
- InjectDetect – database injection attack detection{{Cite web|url=http://www.injectdetect.com/|archive-url=https://web.archive.org/web/20170309194356/http://www.injectdetect.com/|url-status=usurped|archive-date=9 March 2017|title=Inject Detect|website=www.injectdetect.com|access-date=2017-09-29}}
- Vulcan.js – React/GraphQL stack built on top of Meteor{{Cite web|url=http://vulcanjs.org/|title=VulcanJS: The full-stack React+GraphQL framework|website=vulcanjs.org|language=en|access-date=2017-09-29}}
- Apollo – GraphQL server with support for Meteor
- Meteor React Native - Package to integrate with React Native{{Cite web|title=meteor-react-native|url=https://github.com/TheRealNate/meteor-react-native|website=github.com|language=en|access-date=2021-05-23}}
See also
References
{{Reflist}}
External links
{{Portal|Free and open-source software}}
- {{Official website}}
{{Application frameworks|state=autocollapse}}
{{Rich web applications}}
Category:Free software programmed in JavaScript
Category:JavaScript web frameworks