mirror of
https://github.com/meteor/meteor.git
synced 2026-05-02 03:01:46 -04:00
142 lines
5.2 KiB
HTML
142 lines
5.2 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 sufficiently 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.
|
|
|
|
|
|
## Quick start!
|
|
|
|
<!-- change colors on these. $ and command output in grey, rest in
|
|
white -->
|
|
|
|
The following works on all [supported
|
|
platforms](https://github.com/meteor/meteor/wiki/Supported-Platforms).
|
|
|
|
Install Meteor:
|
|
|
|
<pre>
|
|
$ curl https://install.meteor.com | /bin/sh
|
|
</pre>
|
|
|
|
Create a project:
|
|
|
|
<pre>
|
|
$ meteor create myapp
|
|
</pre>
|
|
|
|
Run it locally:
|
|
|
|
<pre>
|
|
$ cd myapp
|
|
$ meteor
|
|
=> Meteor server 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"><img class="github-ribbon visible-desktop" style="position: absolute; top: 0; right: 0; border: 0;" src="/forkme_right_red_aa0000.png" 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>Stack Overflow</span></dt>
|
|
<dd>The best place to ask (and answer!) technical questions is on <a href="http://stackoverflow.com/questions/tagged/meteor">Stack
|
|
Overflow</a>. Be sure to add
|
|
the <code>meteor</code> tag to your question.
|
|
</dd>
|
|
|
|
<dt><span>Mailing lists</span></dt>
|
|
<dd>
|
|
We have two mailing lists for Meteor. <nobr><a href="http://groups.google.com/group/meteor-talk"><code>meteor-talk@googlegroups.com</code></a></nobr>
|
|
is for general questions, requests for help, and new project
|
|
announcements.
|
|
<nobr><a href="http://groups.google.com/group/meteor-core"><code>meteor-core@googlegroups.com</code></a></nobr>
|
|
is for discussing Meteor internals and proposed changes.
|
|
</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 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. If the issue contains sensitive information or raises a security concern, email <a href="mailto:security@meteor.com">security@meteor.com</a> instead, which will page the security team.</dd>
|
|
</dl>
|
|
|
|
{{/markdown}}
|
|
</div>
|
|
</template>
|