romulus -> jekyll
@@ -3,3 +3,4 @@
|
||||
/node_modules
|
||||
/public/css/*.css
|
||||
.notes
|
||||
/_site
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'Berlin, Oct 5th 2012';
|
||||
this.introText =
|
||||
'The first NodeCopter event. Spawned<br>' +
|
||||
'by <a href="http://berlinjs.org/">BerlinJS</a> and <a href="http://vimeo.com/52140932">JSConf.eu</a>.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Berlin, Oct 5th 2012
|
||||
introTitle: Berlin, Oct 5th 2012
|
||||
introText: |
|
||||
The first NodeCopter event. Spawned<br>
|
||||
by <a href="http://berlinjs.org/">BerlinJS</a> and <a href="http://vimeo.com/52140932">JSConf.eu</a>.
|
||||
---
|
||||
|
||||
<h2 id="impressions"><a href="#impressions">Impressions</a></h2>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'NodeCopter Brighton';
|
||||
this.introText =
|
||||
'A full day of programming <strong>flying robots</strong> with<br>' +
|
||||
'node.js in Brighton on November 10, 2012.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: NodeCopter Brighton
|
||||
introTitle: NodeCopter Brighton
|
||||
introText: |
|
||||
A full day of programming <strong>flying robots</strong> with<br>
|
||||
node.js in Brighton on November 10, 2012
|
||||
---
|
||||
<p><strong>NodeCopter.js is a full day event where teams of 3 get together to hack on flying robots using javascript.</strong></p>
|
||||
|
||||
<p style="text-align: center; margin: 40px;"><strong>» <a href="https://tito.io/leftlogic/nodecopter-brighton">Get a ticket now - hackfest or sponsor a drone</a> «</strong></p>
|
||||
@@ -1,18 +1,19 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'Dublin, Oct 20th 2012';
|
||||
this.introText =
|
||||
'A full day of programming <strong>flying robots</strong> with<br>' +
|
||||
'node.js that took place in Dublin on Oct 20, 2012.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Dublin, Oct 20th 2012
|
||||
introTitle: Dublin, Oct 20th 2012
|
||||
introText: |
|
||||
A full day of programming <strong>flying robots</strong> with<br>
|
||||
node.js that took place in Dublin on Oct 20, 2012.
|
||||
---
|
||||
|
||||
<h2 id="impressions"><a href="#impressions">Impressions</a></h2>
|
||||
<img src="/img/dublin-family.jpg">
|
||||
<ul>
|
||||
<li><a href="http://www.flickr.com/photos/31120333@N04/sets/72157631818235565/">Photos</a> by <a href="http://www.twitter.com/a_l_a_n">Alan</a>
|
||||
<li><a href="http://vimeo.com/51826336">Video: NodeCopter</a> by <a href="http://www.twitter.com/sean_nicholls">Sean Nicholls</a>
|
||||
<li><a href="http://www.youtube.com/watch?v=RIO1LS-0E3g">Video: NodeCopter 2012 Dublin</a> by <a href="http://www.twitter.com/csanz">Christian Sanz</a>
|
||||
<li><a href="https://www.facebook.com/media/set/?set=a.10151071432512411.423699.626637410&type=1">Photos</a> by <a href="http://www.twitter.com/csanz">Christian Sanz</a>
|
||||
<li><a href="http://www.flickr.com/photos/31120333@N04/sets/72157631818235565/">Photos</a> by <a href="http://www.twitter.com/a_l_a_n">Alan</a></li>
|
||||
<li><a href="http://vimeo.com/51826336">Video: NodeCopter</a> by <a href="http://www.twitter.com/sean_nicholls">Sean Nicholls</a></li>
|
||||
<li><a href="http://www.youtube.com/watch?v=RIO1LS-0E3g">Video: NodeCopter 2012 Dublin</a> by <a href="http://www.twitter.com/csanz">Christian Sanz</a></li>
|
||||
<li><a href="https://www.facebook.com/media/set/?set=a.10151071432512411.423699.626637410&type=1">Photos</a> by <a href="http://www.twitter.com/csanz">Christian Sanz</a></li>
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
@@ -1,10 +1,11 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'San Francisco, Oct 31st 2012';
|
||||
this.introText =
|
||||
'A full day of programming <strong>flying robots</strong> with<br>' +
|
||||
'node.js in San Francisco on Oct 31st, 2012.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: San Francisco, Oct 31st 2012
|
||||
introTitle: San Francisco, Oct 31st 2012
|
||||
introText: |
|
||||
A full day of programming <strong>flying robots</strong> with<br>
|
||||
node.js in San Francisco on Oct 31st, 2012.
|
||||
---
|
||||
|
||||
<h2 id="mininodecopter"><a href="#mininodecopter">MiniNodeCopter</a></h2>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'The NodeCopter Lounge at CascadiaJS';
|
||||
this.introText =
|
||||
'A two day lounge style workshop of programming <strong>flying robots</strong> with<br>' +
|
||||
'node.js in Seattle, WA on November 8-9, 2012.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: The NodeCopter Lounge at CascadiaJS
|
||||
introTitle: The NodeCopter Lounge at CascadiaJS
|
||||
introText:
|
||||
A two day lounge style workshop of programming <strong>flying robots</strong> with<br>
|
||||
node.js in Seattle, WA on November 8-9, 2012.
|
||||
---
|
||||
<h1>
|
||||
<a name="nodecopter-lounge-at-cascadiajs" class="anchor" href="#nodecopter-lounge-at-cascadiajs"><span class="mini-icon mini-icon-link"></span></a>How was the NodeCopter Lounge at CascadiaJS</h1>
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
---
|
||||
layout: default
|
||||
title: Amelia Island, May 30th 2013
|
||||
introTitle: Amelia Island, May 30th 2013
|
||||
---
|
||||
|
||||
# More info coming soon ...
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'Bath, March 23rd 2013';
|
||||
this.introText =
|
||||
'A fine day programing flying robots in Bath, UK';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Bath, March 23rd 2013
|
||||
introTitle: Bath, March 23rd 2013
|
||||
introText: A fine day programing flying robots in Bath, UK
|
||||
---
|
||||
|
||||
<h2 id="intro"><a href="#intro">MiniNodeCopter Bath</a></h2>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'London, March 16th 2013';
|
||||
this.introText =
|
||||
'A fine day programing flying robots in London';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: London, March 16th 2013
|
||||
introTitle: London, March 16th 2013
|
||||
introText: A fine day programing flying robots in London
|
||||
---
|
||||
|
||||
<h2 id="intro"><a href="#intro">MiniNodeCopter London</a></h2>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'Zurich, Jan 23rd 2013';
|
||||
this.introText =
|
||||
'A fine evening programing flying robots in Zurich';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Zurich, Jan 23rd 2013
|
||||
introTitle: Zurich, Jan 23rd 2013
|
||||
introText: A fine evening programing flying robots in Zurich
|
||||
---
|
||||
|
||||
<h2 id="intro"><a href="#intro">MiniNodeCopter Zurich</a></h2>
|
||||
|
||||
@@ -18,8 +18,8 @@ A loose collection of stuff that should happen on the site:
|
||||
|
||||
* Finish remaining compass pages
|
||||
* Add note about drift / testin drone flight in venues before picking them
|
||||
* Finish story page (done by @rmehner)
|
||||
* Finish story page (done by @rmehner & @mrnugget)
|
||||
* T-Shirt, Sticker, etc. shop (needs: t-shirt design / printing partner)
|
||||
* Add a blog (needs: romulus scripting support)
|
||||
* Create /people pages. Use these as partials on the event pages (needs: romulus partial support)
|
||||
* Link to compass homepage from all compass pages (needs: romulus scripting support)
|
||||
* Add a blog
|
||||
* Create /people pages. Use these as partials on the event pages
|
||||
* Link to compass homepage from all compass pages
|
||||
|
||||
@@ -1,26 +1,20 @@
|
||||
# nodecopter.com
|
||||
|
||||
In order to contribute to this site, you have to install
|
||||
[romulus](https://github.com/felixge/node-romulus):
|
||||
## Setup
|
||||
|
||||
Clone the repo, then install the following gems:
|
||||
|
||||
```
|
||||
gem install jekyll
|
||||
```
|
||||
|
||||
You can now run the site locally on port 4000 using:
|
||||
|
||||
```bash
|
||||
$ [sudo] npm install -g romulus
|
||||
jekyll --auto --server
|
||||
```
|
||||
|
||||
Now start the romulus development server to run the site locally:
|
||||
## Deployment
|
||||
|
||||
```bash
|
||||
$ romulus
|
||||
```
|
||||
|
||||
The site, as well as any changes you make, should now appear at
|
||||
[http://localhost:8080/](http://localhost:8080/).
|
||||
|
||||
In order to deploy the site, you simply type:
|
||||
|
||||
```
|
||||
romulus deploy
|
||||
```
|
||||
|
||||
Refer to the [romulus](https://github.com/felixge/node-romulus) documentation
|
||||
for more info.
|
||||
The site uses [gh-pages](http://pages.github.com), so every commit to the gh-pages
|
||||
branch will update the live website. Yay.
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
exclude:
|
||||
- README.md
|
||||
- CONTRIBUTING.md
|
||||
markdown: redcarpet
|
||||
@@ -63,7 +63,7 @@
|
||||
<meta http-equiv="expires" content="Thu, 01 Jan 1970 13:37:00 GMT" />
|
||||
<meta http-equiv="pragma" content="no-cache" />
|
||||
|
||||
<title><%= this.title %></title>
|
||||
<title>{{ page.title }}</title>
|
||||
|
||||
<link rel="stylesheet" media="screen" href="/css/main.css" >
|
||||
</head>
|
||||
@@ -83,17 +83,17 @@
|
||||
</div>
|
||||
|
||||
<div id="introduction">
|
||||
<% if (this.introTitle) { %>
|
||||
<h2><%= this.introTitle %></h2>
|
||||
{% if page.introTitle %}
|
||||
<h2>{{ page.introTitle }}</h2>
|
||||
|
||||
<p>
|
||||
<%- this.introText %>
|
||||
{{ this.introText }}
|
||||
</p>
|
||||
<% } %>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div id="content">
|
||||
<%- page %>
|
||||
{{ content }}
|
||||
</div>
|
||||
|
||||
<!-- needed to keep footer from overlapping #content -->
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Budget';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Budget
|
||||
---
|
||||
|
||||
<h2 id="budget"><a href="#budget">Budget</a></h2>
|
||||
|
||||
@@ -102,80 +102,19 @@ on your budget and circumstances.
|
||||
|
||||
<h2 id="example"><a href="#example">Example Budget</a></h2>
|
||||
|
||||
<%
|
||||
var people = 30;
|
||||
var visitors = people * 0.4;
|
||||
var drones = people / 3 + (people / 3) * 0.2;
|
||||
var existingDrones = 4;
|
||||
|
||||
var currency = 'USD';
|
||||
var items = [
|
||||
{
|
||||
name: 'Lunch',
|
||||
amount: people,
|
||||
price: 15
|
||||
},
|
||||
{
|
||||
name: 'Drinks',
|
||||
amount: people + visitors,
|
||||
price: 15,
|
||||
comment: 'including ' + visitors + ' visitors'
|
||||
},
|
||||
{
|
||||
name: 'Drones',
|
||||
amount: drones - existingDrones,
|
||||
price: 300,
|
||||
comment: '+' + existingDrones + ' existing drones'
|
||||
},
|
||||
{
|
||||
name: 'Extra Batteries',
|
||||
amount: drones * 2,
|
||||
price: 40,
|
||||
},
|
||||
{
|
||||
name: 'Extra Chargers',
|
||||
amount: drones * 2,
|
||||
price: 40,
|
||||
},
|
||||
{
|
||||
name: 'Repair Parts',
|
||||
amount: 1,
|
||||
price: 200,
|
||||
},
|
||||
{
|
||||
name: 'Travel + lodging',
|
||||
amount: 1,
|
||||
price: 1000,
|
||||
},
|
||||
];
|
||||
|
||||
var total = 0;
|
||||
%>
|
||||
|
||||
To give you an idea of what the total budget for an event could look like,
|
||||
here is an example for a nodecopter with <%= people %> people:
|
||||
|
||||
<%-
|
||||
items.map(function(item) {
|
||||
var subTotal = item.amount * item.price;
|
||||
total += subTotal;
|
||||
var line =
|
||||
'* **' + item.name + ':** ' + item.amount + ' x ' + item.price + ' ' +
|
||||
currency + ' = **' + subTotal + ' ' + currency + '**';
|
||||
* **Lunch:** 30 x 15 USD = **450 USD**
|
||||
* **Drinks:** 42 x 15 USD = **630 USD** (including 12 visitors)
|
||||
* **Drones:** 8 x 300 USD = **2400 USD** (+4 existing drones)
|
||||
* **Extra Batteries:** 24 x 40 USD = **960 USD**
|
||||
* **Extra Chargers:** 24 x 40 USD = **960 USD**
|
||||
* **Repair Parts:** 1 x 200 USD = **200 USD**
|
||||
* **Travel + lodging:** 1 x 1000 USD = **1000 USD**
|
||||
|
||||
if (item.comment) {
|
||||
line += ' (' + item.comment + ')';
|
||||
}
|
||||
|
||||
return line;
|
||||
}).join('\n')
|
||||
%>
|
||||
<%
|
||||
var overhead = total * 0.15;
|
||||
%>
|
||||
|
||||
**Total:** <%= total + ' ' + currency %> (hard costs) + <%= overhead + ' ' +
|
||||
currency %> (15% overhead) = **<%= (total + overhead) + ' ' + currency %>**
|
||||
**Total:** 6600 USD (hard costs) + 990 USD (15% overhead) = **7590 USD**
|
||||
|
||||
This is just an example, but **2500 USD - 10000 USD** is a reasonable ball
|
||||
bark for most nodecopter events.
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Financing';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Financing
|
||||
---
|
||||
|
||||
<h2 id="financing"><a href="#financing">Financing</a></h2>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = this.introTitle = 'The NodeCopter Compass';
|
||||
this.introText =
|
||||
'Interested in organizing your own nodecopter event?<br>' +
|
||||
'Follow this <a href="/compass">compass</a> to guide your event.';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: The NodeCopter Compass
|
||||
introTitle: The NodeCopter Compass
|
||||
introText: |
|
||||
Interested in organizing your own nodecopter event?<br>
|
||||
Follow this <a href="/compass">compass</a> to guide your event.
|
||||
---
|
||||
|
||||
**WORK IN PROGRESS:**
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'MiniNodeCopter';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: MiniNodeCopter
|
||||
---
|
||||
|
||||
<h2 id="mininodecopter"><a href="#mininodecopter">MiniNodeCopter</a></h2>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Schedule';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Schedule
|
||||
---
|
||||
|
||||
<h2 id="schedule"><a href="#schedule"><%= this.title %></a></h2>
|
||||
<h2 id="schedule"><a href="#schedule">{{ page.title }}</a></h2>
|
||||
|
||||
After organizing several NodeCopter events, we found it works best to follow a
|
||||
rough schedule to make a NodeCopter day as much fun as possible.
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Setup';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Setup
|
||||
---
|
||||
|
||||
<h2 id="setup"><a href="#setup">Setup</a></h2>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Setup the venue';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Setup the venue
|
||||
---
|
||||
|
||||
<h2 id="setup_the_venue"><a href="#setup_the_venue"><%= this.title %></a></h2>
|
||||
<h2 id="setup_the_venue"><a href="#setup_the_venue">{{ page.title }}</a></h2>
|
||||
|
||||
Some tips on setting up the venue:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Venue';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Venue
|
||||
---
|
||||
|
||||
<h2 id="venue"><a href="#venue">Venue</a></h2>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Core';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Core
|
||||
---
|
||||
|
||||
<h2 id="team"><a href="#team">The Core Team</a></h2>
|
||||
|
||||
@@ -0,0 +1,256 @@
|
||||
/* Variables */
|
||||
/* Fonts */
|
||||
@font-face {
|
||||
font-family: 'Blanch Caps';
|
||||
src: url('/fonts/blanch_caps-webfont.eot');
|
||||
src: url('/fonts/blanch_caps-webfont.eot?#iefix') format('embedded-opentype'), url('/fonts/blanch_caps-webfont.woff') format('woff'), url('/fonts/blanch_caps-webfont.ttf') format('truetype'), url('/fonts/blanch_caps-webfont.svg#blanch_capsregular') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Blanch Caps Light';
|
||||
src: url('/fonts/blanch_caps_light-webfont.eot');
|
||||
src: url('/fonts/blanch_caps_light-webfont.eot?#iefix') format('embedded-opentype'), url('/fonts/blanch_caps_light-webfont.woff') format('woff'), url('/fonts/blanch_caps_light-webfont.ttf') format('truetype'), url('/fonts/blanch_caps_light-webfont.svg#blanch_caps_lightregular') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
/* Mixins */
|
||||
/* Layout */
|
||||
body {
|
||||
background-color: #f2f0f0;
|
||||
margin: 0;
|
||||
font: 16px/22px 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
color: #333;
|
||||
}
|
||||
a {
|
||||
color: #6d941b;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.clear {
|
||||
clear: both;
|
||||
}
|
||||
#header {
|
||||
position: relative;
|
||||
text-align: center;
|
||||
height: 175px;
|
||||
background-image: url('/img/style/header-pattern.jpg');
|
||||
box-shadow: 0 0 3px 0 #000000;
|
||||
-webkit-box-shadow: 0 0 3px 0 #000000;
|
||||
-moz-box-shadow: 0 0 3px 0 #000000;
|
||||
}
|
||||
#header .organizers {
|
||||
background: no-repeat center 37px url('/img/style/header-dividers.png');
|
||||
font-family: 'Blanch Caps Light';
|
||||
margin: 0;
|
||||
padding-top: 25px;
|
||||
color: #7b7b7b;
|
||||
font-size: 25px;
|
||||
}
|
||||
#header .organizers a {
|
||||
font-family: 'Blanch Caps';
|
||||
}
|
||||
#header .logo {
|
||||
position: absolute;
|
||||
margin-left: -183.5px;
|
||||
z-index: 1;
|
||||
left: 50%;
|
||||
top: 70px;
|
||||
}
|
||||
#header .circle {
|
||||
background-image: url('/img/style/header-pattern.jpg');
|
||||
position: absolute;
|
||||
margin: 0 auto;
|
||||
width: 190px;
|
||||
height: 165px;
|
||||
top: 60px;
|
||||
left: 50%;
|
||||
margin-left: -95px;
|
||||
border-radius: 190px / 165px;
|
||||
}
|
||||
#introduction {
|
||||
text-align: center;
|
||||
margin: 70px 0 0 0;
|
||||
}
|
||||
#introduction h2 {
|
||||
margin: 40px 0 20px 0;
|
||||
font: normal 50px 'Blanch Caps';
|
||||
color: #6d941b;
|
||||
}
|
||||
#introduction p {
|
||||
margin: 5px 0 40px 0;
|
||||
}
|
||||
#content {
|
||||
width: 512px;
|
||||
margin: 0 auto;
|
||||
padding: 20px 40px;
|
||||
padding-bottom: 60px;
|
||||
background-color: #fff;
|
||||
box-shadow: 0 0 8px #cccccc;
|
||||
-webkit-box-shadow: 0 0 8px #cccccc;
|
||||
-moz-box-shadow: 0 0 8px #cccccc;
|
||||
}
|
||||
#content ul li {
|
||||
padding: .2em 0;
|
||||
}
|
||||
#content form {
|
||||
font-size: 0;
|
||||
position: relative;
|
||||
height: 64px;
|
||||
padding-top: 15px;
|
||||
}
|
||||
#content form .email {
|
||||
position: absolute;
|
||||
outline: none;
|
||||
width: 300px;
|
||||
height: 50px;
|
||||
border: 1px solid #dad9d9;
|
||||
padding: 0;
|
||||
border-right: none;
|
||||
text-indent: 15px;
|
||||
font-size: 18px;
|
||||
color: #333;
|
||||
border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
-moz-border-radius: 5px;
|
||||
box-shadow: inset 3px 3px 3px 0px #eeeeee;
|
||||
-webkit-box-shadow: inset 3px 3px 3px 0px #eeeeee;
|
||||
-moz-box-shadow: inset 3px 3px 3px 0px #eeeeee;
|
||||
}
|
||||
#content form .email:focus {
|
||||
border-color: #77a811;
|
||||
}
|
||||
#content form .button {
|
||||
position: absolute;
|
||||
left: 290px;
|
||||
outline: none;
|
||||
border: none;
|
||||
background: no-repeat 0px 0px url('/img/style/button-keep-me-posted.png');
|
||||
width: 202px;
|
||||
height: 54px;
|
||||
text-indent: -9999px;
|
||||
}
|
||||
#content form .button:hover,
|
||||
#content form .button:focus {
|
||||
opacity: 0.9;
|
||||
}
|
||||
#content hr {
|
||||
width: 494px;
|
||||
height: 17px;
|
||||
background-image: url('/img/style/divider.png');
|
||||
border: none;
|
||||
margin: 35px 0 0 0;
|
||||
clear: both;
|
||||
}
|
||||
#content h2,
|
||||
#content h2 a {
|
||||
margin: 40px 0;
|
||||
font: normal 60px/40px 'Blanch Caps', sans-serif;
|
||||
color: #232323;
|
||||
}
|
||||
#content p {
|
||||
line-height: 22px;
|
||||
}
|
||||
#content ul.team {
|
||||
list-style-type: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#content ul.team li {
|
||||
width: 190px;
|
||||
float: left;
|
||||
margin-left: 44px;
|
||||
}
|
||||
#content ul.team img {
|
||||
border: 1px solid #333;
|
||||
}
|
||||
#content ul.team p {
|
||||
text-align: center;
|
||||
}
|
||||
#content .sponsors {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 0;
|
||||
}
|
||||
#content .sponsors li {
|
||||
display: inline;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#content .sponsors li img {
|
||||
border: 1px solid #eee;
|
||||
padding: 10px;
|
||||
margin-right: 13px;
|
||||
margin-bottom: 13px;
|
||||
filter: grayscale(100%);
|
||||
-webkit-filter: grayscale(100%);
|
||||
-moz-filter: grayscale(100%);
|
||||
-ms-filter: grayscale(100%);
|
||||
-o-filter: grayscale(100%);
|
||||
-o-transition: -webkit-filter 0.4s ease-in-out;
|
||||
-ms-transition: -webkit-filter 0.4s ease-in-out;
|
||||
-moz-transition: -webkit-filter 0.4s ease-in-out;
|
||||
-webkit-transition: -webkit-filter 0.4s ease-in-out;
|
||||
transition: -webkit-filter 0.4s ease-in-out;
|
||||
opacity: 0.8;
|
||||
}
|
||||
#content .sponsors li img:hover {
|
||||
filter: grayscale(0%);
|
||||
-webkit-filter: grayscale(0%);
|
||||
-moz-filter: grayscale(0%);
|
||||
-ms-filter: grayscale(0%);
|
||||
-o-filter: grayscale(0%);
|
||||
opacity: 1;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
#content .sponsors li:nth-of-type(3n) img {
|
||||
margin-right: 0;
|
||||
}
|
||||
/* Footer (http://stackoverflow.com/a/8825714/62383) */
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
}
|
||||
#holder {
|
||||
min-height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
#footer-space {
|
||||
height: 90px;
|
||||
}
|
||||
#footer {
|
||||
height: 90px;
|
||||
background-image: url('/img/style/header-pattern.jpg');
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
color: #c7c7c7;
|
||||
font-size: 12px;
|
||||
}
|
||||
#footer .columns {
|
||||
width: 592px;
|
||||
margin: 25px auto 0 auto;
|
||||
position: relative;
|
||||
}
|
||||
#footer .credits {
|
||||
width: 370px;
|
||||
position: absolute;
|
||||
}
|
||||
#footer .credits p {
|
||||
margin: 0 0 5px 0;
|
||||
}
|
||||
#footer .co-organizers {
|
||||
position: absolute;
|
||||
left: 370px;
|
||||
}
|
||||
#footer .co-organizers p {
|
||||
margin: 0 0 20px 0;
|
||||
}
|
||||
#footer .co-organizers img {
|
||||
margin-right: 5px;
|
||||
opacity: 0.1;
|
||||
}
|
||||
|
Antes Largura: | Altura: | Tamanho: 1.1 KiB Depois Largura: | Altura: | Tamanho: 1.1 KiB |
|
Antes Largura: | Altura: | Tamanho: 50 KiB Depois Largura: | Altura: | Tamanho: 50 KiB |
|
Antes Largura: | Altura: | Tamanho: 38 KiB Depois Largura: | Altura: | Tamanho: 38 KiB |
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Connect the drone to an access point';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Connect the drone to an access point
|
||||
---
|
||||
|
||||
<h2 id="connect_to_access_point"><a href="#connect_to_access_point"><%= this.title %></a></h2>
|
||||
<h2 id="connect_to_access_point"><a href="#connect_to_access_point">{{ page.title }}</a></h2>
|
||||
|
||||
Normally, if you're connected to your drone's WiFi you don't have connection to
|
||||
the internet. This is not very convenient, so an easy way out is letting the AR drone
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Getting started';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Getting started
|
||||
---
|
||||
|
||||
<h2 id="getting_started"><a href="#getting_started"><%= this.title %></a></h2>
|
||||
<h2 id="getting_started"><a href="#getting_started">{{ page.title }}</a></h2>
|
||||
|
||||
Wow, you're finally there and ready to hack a effin' flying robot! Here's a simple
|
||||
way to get started.
|
||||
@@ -1,9 +1,9 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'NodeCopter Guides';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: NodeCopter Guides
|
||||
---
|
||||
|
||||
<h2 id="guides"><a href="#guides"><%= this.title %></a></h2>
|
||||
<h2 id="guides"><a href="#guides">{{ page.title }}</a></h2>
|
||||
|
||||
Have you written a nodecopter guide? Add it by [editing this
|
||||
page](https://github.com/nodecopter/nodecopter.com/edit/master/pages/guides/index.md).
|
||||
@@ -1,7 +1,7 @@
|
||||
<%
|
||||
this.layout = 'default';
|
||||
this.title = 'Ideas';
|
||||
%>
|
||||
---
|
||||
layout: default
|
||||
title: Ideas
|
||||
---
|
||||
|
||||
First off, please check out the many [modules](http://nodecopter.com/modules) that
|
||||
we already have. It's quite possible that there's already a module implementing your
|
||||
@@ -10,7 +10,7 @@ idea and that needs your contributions!
|
||||
Also, if you want to see your idea on this list, [go ahead and add it](https://github.com/nodecopter/nodecopter.com/edit/master/pages/ideas.md), everything
|
||||
is welcome!
|
||||
|
||||
<h2 id="ideas"><a href="#ideas"><%= this.title %></a></h2>
|
||||
<h2 id="ideas"><a href="#ideas">{{ page.title }}</a></h2>
|
||||
|
||||
### Acurate position feedback from kinect
|
||||
|
||||
|
Antes Largura: | Altura: | Tamanho: 261 KiB Depois Largura: | Altura: | Tamanho: 261 KiB |
|
Antes Largura: | Altura: | Tamanho: 23 KiB Depois Largura: | Altura: | Tamanho: 23 KiB |
|
Antes Largura: | Altura: | Tamanho: 10 KiB Depois Largura: | Altura: | Tamanho: 10 KiB |
|
Antes Largura: | Altura: | Tamanho: 147 KiB Depois Largura: | Altura: | Tamanho: 147 KiB |
|
Antes Largura: | Altura: | Tamanho: 151 KiB Depois Largura: | Altura: | Tamanho: 151 KiB |
|
Antes Largura: | Altura: | Tamanho: 250 KiB Depois Largura: | Altura: | Tamanho: 250 KiB |
|
Antes Largura: | Altura: | Tamanho: 4.1 KiB Depois Largura: | Altura: | Tamanho: 4.1 KiB |
|
Antes Largura: | Altura: | Tamanho: 234 KiB Depois Largura: | Altura: | Tamanho: 234 KiB |
|
Antes Largura: | Altura: | Tamanho: 24 KiB Depois Largura: | Altura: | Tamanho: 24 KiB |
|
Antes Largura: | Altura: | Tamanho: 28 KiB Depois Largura: | Altura: | Tamanho: 28 KiB |
|
Antes Largura: | Altura: | Tamanho: 13 KiB Depois Largura: | Altura: | Tamanho: 13 KiB |
|
Antes Largura: | Altura: | Tamanho: 5.5 KiB Depois Largura: | Altura: | Tamanho: 5.5 KiB |
|
Antes Largura: | Altura: | Tamanho: 3.8 KiB Depois Largura: | Altura: | Tamanho: 3.8 KiB |
|
Antes Largura: | Altura: | Tamanho: 5.1 KiB Depois Largura: | Altura: | Tamanho: 5.1 KiB |
|
Antes Largura: | Altura: | Tamanho: 5.5 KiB Depois Largura: | Altura: | Tamanho: 5.5 KiB |
|
Antes Largura: | Altura: | Tamanho: 22 KiB Depois Largura: | Altura: | Tamanho: 22 KiB |
|
Antes Largura: | Altura: | Tamanho: 10 KiB Depois Largura: | Altura: | Tamanho: 10 KiB |
|
Antes Largura: | Altura: | Tamanho: 1.8 KiB Depois Largura: | Altura: | Tamanho: 1.8 KiB |
|
Antes Largura: | Altura: | Tamanho: 8.7 KiB Depois Largura: | Altura: | Tamanho: 8.7 KiB |
|
Antes Largura: | Altura: | Tamanho: 7.2 KiB Depois Largura: | Altura: | Tamanho: 7.2 KiB |
|
Antes Largura: | Altura: | Tamanho: 9.9 KiB Depois Largura: | Altura: | Tamanho: 9.9 KiB |
|
Antes Largura: | Altura: | Tamanho: 9.9 KiB Depois Largura: | Altura: | Tamanho: 9.9 KiB |
|
Antes Largura: | Altura: | Tamanho: 15 KiB Depois Largura: | Altura: | Tamanho: 15 KiB |
|
Antes Largura: | Altura: | Tamanho: 7.1 KiB Depois Largura: | Altura: | Tamanho: 7.1 KiB |
|
Antes Largura: | Altura: | Tamanho: 16 KiB Depois Largura: | Altura: | Tamanho: 16 KiB |
|
Antes Largura: | Altura: | Tamanho: 3.9 KiB Depois Largura: | Altura: | Tamanho: 3.9 KiB |
|
Antes Largura: | Altura: | Tamanho: 8.8 KiB Depois Largura: | Altura: | Tamanho: 8.8 KiB |
|
Antes Largura: | Altura: | Tamanho: 5.1 KiB Depois Largura: | Altura: | Tamanho: 5.1 KiB |
|
Antes Largura: | Altura: | Tamanho: 2.9 KiB Depois Largura: | Altura: | Tamanho: 2.9 KiB |
|
Antes Largura: | Altura: | Tamanho: 28 KiB Depois Largura: | Altura: | Tamanho: 28 KiB |
|
Antes Largura: | Altura: | Tamanho: 16 KiB Depois Largura: | Altura: | Tamanho: 16 KiB |
|
Antes Largura: | Altura: | Tamanho: 77 KiB Depois Largura: | Altura: | Tamanho: 77 KiB |
|
Antes Largura: | Altura: | Tamanho: 10 KiB Depois Largura: | Altura: | Tamanho: 10 KiB |
|
Antes Largura: | Altura: | Tamanho: 11 KiB Depois Largura: | Altura: | Tamanho: 11 KiB |
|
Antes Largura: | Altura: | Tamanho: 4.9 KiB Depois Largura: | Altura: | Tamanho: 4.9 KiB |
|
Antes Largura: | Altura: | Tamanho: 6.0 KiB Depois Largura: | Altura: | Tamanho: 6.0 KiB |
|
Antes Largura: | Altura: | Tamanho: 8.3 KiB Depois Largura: | Altura: | Tamanho: 8.3 KiB |
|
Antes Largura: | Altura: | Tamanho: 18 KiB Depois Largura: | Altura: | Tamanho: 18 KiB |
|
Antes Largura: | Altura: | Tamanho: 417 KiB Depois Largura: | Altura: | Tamanho: 417 KiB |
|
Antes Largura: | Altura: | Tamanho: 422 KiB Depois Largura: | Altura: | Tamanho: 422 KiB |
|
Antes Largura: | Altura: | Tamanho: 4.2 KiB Depois Largura: | Altura: | Tamanho: 4.2 KiB |
|
Antes Largura: | Altura: | Tamanho: 436 B Depois Largura: | Altura: | Tamanho: 436 B |
|
Antes Largura: | Altura: | Tamanho: 214 B Depois Largura: | Altura: | Tamanho: 214 B |
|
Antes Largura: | Altura: | Tamanho: 26 KiB Depois Largura: | Altura: | Tamanho: 26 KiB |
|
Antes Largura: | Altura: | Tamanho: 15 KiB Depois Largura: | Altura: | Tamanho: 15 KiB |
|
Antes Largura: | Altura: | Tamanho: 27 KiB Depois Largura: | Altura: | Tamanho: 27 KiB |
|
Antes Largura: | Altura: | Tamanho: 32 KiB Depois Largura: | Altura: | Tamanho: 32 KiB |
|
Antes Largura: | Altura: | Tamanho: 18 KiB Depois Largura: | Altura: | Tamanho: 18 KiB |