mirror of
https://github.com/meteor/meteor.git
synced 2026-05-02 03:01:46 -04:00
138 lines
4.9 KiB
HTML
138 lines
4.9 KiB
HTML
<template name="introduction">
|
|
<div id="introduction">
|
|
<!-- clicking this anchor in the left bar should scroll to top of doc,
|
|
not here -->
|
|
<!-- XXX by: (three headshot thumbnails w names) -->
|
|
|
|
{{#markdown}}
|
|
|
|
<b>_Meteor is an ultra-simple environment for building modern websites.
|
|
What once took weeks, even with the best tools, now takes hours with
|
|
Meteor._</b>
|
|
|
|
The web was originally designed to work in the same way that mainframes
|
|
worked in the 70s. The application server rendered a screen and sent it
|
|
over the network to a dumb terminal. Whenever the user did anything,
|
|
that server rerendered a whole new screen. This model served the Web
|
|
well for over a decade. It gave rise to LAMP, Rails, Django, PHP.
|
|
|
|
But the best teams, with the biggest budgets and the longest schedules,
|
|
now build applications in JavaScript that run on the client. These apps
|
|
have stellar interfaces. They don't reload pages. They are reactive:
|
|
changes from any client immediately appear on everyone's screen.
|
|
|
|
They've built them the hard way. Meteor makes it an order of
|
|
magnitude simpler, and a lot more fun. You can build a complete
|
|
application in a weekend, or a suffiently caffeinated hackathon. No
|
|
longer do you need to provision server resources, or deploy API
|
|
endpoints in the cloud, or manage a database, or wrangle an ORM layer,
|
|
or swap back and forth between JavaScript and Ruby, or broadcast data
|
|
invalidations to clients.
|
|
|
|
Meteor is a work in progress, but we hope it shows the direction of
|
|
our thinking. We'd love to hear your feedback.
|
|
|
|
— Geoff, Nick, Matt, and David
|
|
|
|
## Quick start!
|
|
|
|
<!-- change colors on these. $ and command output in grey, rest in
|
|
white -->
|
|
|
|
Install Meteor:
|
|
|
|
<pre>
|
|
$ curl install.meteor.com | /bin/sh
|
|
</pre>
|
|
|
|
Create a project:
|
|
|
|
<pre>
|
|
$ meteor create myapp
|
|
</pre>
|
|
|
|
Run it locally:
|
|
|
|
<pre>
|
|
$ cd myapp
|
|
$ meteor
|
|
Running on: http://localhost:3000/
|
|
</pre>
|
|
|
|
Unleash it on the world (on a free server we provide):
|
|
|
|
<pre>
|
|
$ meteor deploy myapp.meteor.com
|
|
</pre>
|
|
|
|
<h2 id="sevenprinciples">Seven Principles of Meteor</h2>
|
|
|
|
<!-- wire with [1,2,3] on it -->
|
|
- _Data on the Wire_. Don't send HTML over the network. Send data and
|
|
let the client decide how to render it.
|
|
|
|
<!-- two people, one speech bubble coming out of both of their mouths,
|
|
containing '{}' -->
|
|
- _One Language._ Write both the client and the server parts of your
|
|
interface in JavaScript.
|
|
|
|
<!-- globe, with the same database icon in US and Russia -->
|
|
- _Database Everywhere_. Use the same transparent API to access your
|
|
database from the client or the server.
|
|
|
|
<!-- clock with zero time elapsed. or clock on left with zero time
|
|
elapsed, horizontal bold line to a clock with zero time elapsed, but a
|
|
line at a 45 degree angle to a a clock in grey with 100 ms
|
|
elapsed. like shades of relativity -->
|
|
- _Latency Compensation_. On the client, use prefetching and model
|
|
simulation to make it look like you have a zero-latency connection to
|
|
the database.
|
|
|
|
<!-- knee getting hit with hammer like in reflex test -->
|
|
- _Full Stack Reactivity_. Make realtime the default. All layers, from
|
|
database to template, should make an event-driven interface available.
|
|
|
|
- _Embrace the Ecosystem_. Meteor is open source and integrates,
|
|
rather than replaces, existing open source tools and frameworks.
|
|
|
|
<!-- zen circle -->
|
|
- _Simplicity Equals Productivity_. The best way to make something
|
|
seem simple is to have it actually _be_ simple. Accomplish this through
|
|
clean, classically beautiful APIs.
|
|
|
|
|
|
<h2 id="resources">Developer Resources</h2>
|
|
|
|
<!-- https://github.com/blog/273-github-ribbons -->
|
|
<a href="http://github.com/meteor/meteor" target="_blank"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://a248.e.akamai.net/assets.github.com/img/e6bef7a091f5f3138b8cd40bc3e114258dd68ddf/687474703a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67" alt="Fork me on GitHub"></a>
|
|
|
|
If anything in Meteor catches your interest, we hope you'll get involved
|
|
with the project!
|
|
|
|
<dl class="involved">
|
|
<dt><span>Group</span></dt>
|
|
<dd>
|
|
If you're using Meteor, please join our
|
|
<a target="_blank"
|
|
href="http://groups.google.com/group/meteor-users">Google Group</a>!
|
|
This would really help — we need your input to make good
|
|
design decisions.</dd>
|
|
|
|
<dt><span>IRC</span></dt>
|
|
<dd><code>#meteor</code> on <code>irc.freenode.net</code>. The
|
|
developers hang out here and will answer your questions whenever they
|
|
can.</dd>
|
|
|
|
<dt><span>Github</span></dt>
|
|
<dd>The code is on <a target="_blank" href="http://github.com/meteor/meteor">Github</a>. The best way to send a patch is with a Github pull request, and the best way to file a bug is in the Github bug tracker.</dd>
|
|
|
|
<dt><span>Direct email</span></dt>
|
|
<dd>You can reach the core developers (Nick, Matt, Geoff, and David) at
|
|
<code><a href="mailto:contact@meteor.com">contact@meteor.com</a></code>. We read and reply to every email.
|
|
</dd>
|
|
</dl>
|
|
|
|
{{/markdown}}
|
|
</div>
|
|
</template>
|