Skip to content

Commit

Permalink
Main site, first episode.
Browse files Browse the repository at this point in the history
  • Loading branch information
chriskrycho committed Sep 19, 2015
0 parents commit ad05f66
Show file tree
Hide file tree
Showing 19 changed files with 816 additions and 0 deletions.
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Cargo bits
target
Cargo.lock

# Website bits
*.mp3
*.m4a
*.logicx
recordings
5 changes: 5 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[package]
name = "show-notes"
# Version will match released show number! Ep. 12 will be 0.1.2.
version = "0.0.0"
authors = ["Chris Krycho <[email protected]>"]
291 changes: 291 additions & 0 deletions LICENSE.md

Large diffs are not rendered by default.

18 changes: 18 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# New Rustacean

This is a *slightly crazy* approach to building a podcast hosting setup using
Rust's documentation tools, for the [New Rustacean] podcast. I'm making the
site source publicly available so that others can follow along and learn from
my successes, failures, and various misadventures along the way. Feel free to
submit pull requests if you find typos or the like!

[New Rustacean]: http://newrustacean.com

I hope to evolve the structure here based on what will hopefully *become* the
structure for sites generated with `cargo doc` in the future, with
supplementary/guide-like material living in the `src/doc` directory. For an
example of existing repositories which use this structure, see [rust-lang/rust]
and [rust-lang/cargo].

[rust-lang/rust]: https://github.com/rust-lang/rust
[rust-lang/cargo]: https://github.com/rust-lang/cargo
1 change: 1 addition & 0 deletions landing/FiraSans-Medium.woff
1 change: 1 addition & 0 deletions landing/FiraSans-Regular.woff
1 change: 1 addition & 0 deletions landing/SourceCodePro-Regular.woff
1 change: 1 addition & 0 deletions landing/SourceCodePro-Semibold.woff
1 change: 1 addition & 0 deletions landing/SourceSerifPro-Bold.woff
1 change: 1 addition & 0 deletions landing/SourceSerifPro-Regular.woff
87 changes: 87 additions & 0 deletions landing/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>New Rustacean: A Podcast About Learning Rust</title>

<meta name="viewport" content="width=device-width,initial-scale=1.0">

<link href="/favicon.png" type="image/png" rel="icon">
<link href="/favicon.ico" type="image/ico" rel="icon">

<link rel="stylesheet" href="/landing.css" media="screen" charset="utf-8">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
</head>
<body>

<main class="clearfix">
<div class="card">
<div class="card_side front">
<div class="pad">
<img src="podcast.png" alt="New Rustacean logo image" />
</div>
</div>
<div class="card_side back">
<div class="pad">
<h1>About</h1>
<p>
Hello! This is a podcast about learning the programming language
Rust—from scratch! Apart from this spiffy landing page, all the site
content is built with Rust's own documentation tools. You can hear
more about why I'm doing this in <a href="/show_notes/e00/">00: Why
Am I Here?</a>. And there's much more to come!
</p>
</div>

</div>
</div>
</main>

<nav>
<ul class="plain_list">
<li><a title="See the show in iTunes" href="#"><i class="fa fa-fw fa-music"></i>iTunes</a></li>
<li><a title="Subscribe to the show" href="/feed.xml"><i class="fa fa-fw fa-rss"></i>Feed</a></li>
<li><a title="Go to the show notes" href="/show_notes/"><i class="fa fa-fw fa-list-ol"></i>Show Notes</a></li>
<li><a title="Show 'About'" href="#" id=about><i class="fa fa-fw fa-user"></i>About</a></li>
</ul>
</nav>

<footer>
<ul class="plain_list colophon_list">
<li>
Landing page design by <a href="//www.chriskrycho.com">Chris Krycho</a>.
</li>
<li>
All content licensed under a Creative Commons Attribution license: do
whatever you like with this; just credit me!
</li>
<li>
Rust documentation design belongs to the Rust language team, not me!
</li>
</ul>
</footer>
<script type="text/javascript">
(function() {
// Get all the "cards" (really, sides of the cards)
var card = document.querySelector('.card');
var about = document.querySelector('#about');

card.addEventListener("click", flipper(card));
about.addEventListener("click", flipper(card));

// Return an event handler, flipping the card passed as an argument.
function flipper(_card) {
return function(event) {
event.preventDefault();
if (_card.classList.contains("flipped")) {
_card.classList.remove("flipped");
}
else {
_card.classList.add("flipped");
}
}
}
})();
</script>
</body>
</html>
258 changes: 258 additions & 0 deletions landing/landing.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
/**
* Copyright 2013 The Rust Project Developers. See the COPYRIGHT
* file at the top-level directory of this distribution and at
* http://rust-lang.org/COPYRIGHT.
*
* Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
* http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
* <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
* option. This file may not be copied, modified, or distributed
* except according to those terms.
*/
@font-face {
font-family: 'Fira Sans';
font-style: normal;
font-weight: 400;
src: local('Fira Sans'), url("FiraSans-Regular.woff") format('woff');
}
@font-face {
font-family: 'Fira Sans';
font-style: normal;
font-weight: 500;
src: local('Fira Sans Medium'), url("FiraSans-Medium.woff") format('woff');
}
@font-face {
font-family: 'Source Serif Pro';
font-style: normal;
font-weight: 400;
src: local('Source Serif Pro'), url("SourceSerifPro-Regular.woff") format('woff');
}
@font-face {
font-family: 'Source Serif Pro';
font-style: italic;
font-weight: 400;
src: url("Heuristica-Italic.woff") format('woff');
}
@font-face {
font-family: 'Source Serif Pro';
font-style: normal;
font-weight: 700;
src: local('Source Serif Pro Bold'), url("SourceSerifPro-Bold.woff") format('woff');
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: local('Source Code Pro'), url("SourceCodePro-Regular.woff") format('woff');
}
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 600;
src: local('Source Code Pro Semibold'), url("SourceCodePro-Semibold.woff") format('woff');
}

@import "normalize.css";

/* Landing page styles */
html {
font-family: 'Source Serif Pro';
font-weight: 400;
background: repeating-linear-gradient(
-45deg,
RGBA(166, 174, 179, 1),
RGBA(166, 174, 179, 1) 40px,
RGBA(15, 23, 26, .67) 40px,
RGBA(15, 23, 26, .67) 80px
);
}

body {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}

h1 {
font-family: 'Fira Sans';
font-weight: normal;
}

main {
padding: 2em 0;
width: 100%;
height: auto;
max-height: 35%;
}

.card {
margin: auto;
max-width: 50vh;
height: 50vh;
position: relative;
cursor: pointer;
}

.pad {
padding: 1em;
}

.card_side {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;

-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
backface-visibility: hidden;

-webkit-transform-origin: left 50% -2em;
-moz-transform-origin: left 50% -2em;
-ms-transform-origin: left 50% -2em;
transform-origin: left 50% -2em;

-webkit-transition: all 0.5s ease;

box-shadow: 0 0 8px RGBA(15, 23, 26, 1);
}

.front {
background: RGBA(253, 251, 250, 1);
}

.back {
background: RGBA(87, 66, 43, 1);
color: RGBA(253, 251, 250, 1);
transform: rotateY(180deg);
}

.back a {
color: RGBA(166, 174, 179, 1);
}

.flipped.card .front {
-webkit-transform: rotateY(-180deg);
-moz-transform: rotateY(-180deg);
-ms-transform: rotateY(-180deg);
transform: rotateY(-180deg);
}

.flipped.card .back {
-webkit-transform: rotateY(0);
-moz-transform: rotateY(0);
-ms-transform: rotateY(0);
transform: rotateY(0);
}

.flipped .card_side {
-webkit-transform-origin: right 50% -2em;
-moz-transform-origin: right 50% -2em;
-ms-transform-origin: right 50% -2em;
transform-origin: right 50% -2em;
}

.card:hover .front {
-webkit-transform: rotateY(-10deg);
-moz-transform: rotateY(-10deg);
-ms-transform: rotateY(-10deg);
transform: rotateY(-10deg);

box-shadow: 0 0 20px RGBA(15, 23, 26, 1);
}

.card:hover .back {
-webkit-transform: rotateY(170deg);
-moz-transform: rotateY(170deg);
-ms-transform: rotateY(170deg);
transform: rotateY(170deg);
}

.flipped.card:hover .front {
-webkit-transform: rotateY(-170deg);
-moz-transform: rotateY(-170deg);
-ms-transform: rotateY(-170deg);
transform: rotateY(-170deg);
}

.flipped.card:hover .back {
-webkit-transform: rotateY(10deg);
-moz-transform: rotateY(10deg);
-ms-transform: rotateY(10deg);
transform: rotateY(10deg);
}

.card_side img {
width: 100%;
height: auto;
}


/* ----- Common styles ----- */
.plain_list {
list-style: none;
padding: 0;
margin: 0;
}

/* ----- Navigation styles ----- */
nav {
background: RGBA(166, 142, 116, 1);
border-top: 2px solid RGBA(87, 66, 43, 1);
font-family: 'Fira Sans';
}

nav li a {
display: block;
height: 2em;
line-height: 2;
padding: 0.5em 0;
width: 100%;
text-align: center;
color: inherit;
text-decoration: none;
border-bottom: 2px solid RGBA(87, 66, 43, 1);
transition: all 0.5s ease;
}

nav li a:hover {
background: RGBA(87, 66, 43, 1);
color: RGBA(253, 251, 250, 1);
}

nav li a:active {
background: RGBA(240, 80, 34, 1);
transition: all 0.1s ease-out;
}

.fa {
padding-right: 0.25em;
}

/* ----- Footer styles ----- */
footer {
background: RGBA(240, 80, 34, 1);
color: RGBA(253, 251, 250, 1);
padding: 2em 0;
margin: 0;
text-align: center;
border-bottom: 2px solid RGBA(87, 66, 43, 1);
}

footer a {
color: RGBA(253, 251, 250, 1);
font-family: 'Source Code Pro';
transition: all 0.5s ease;
}

footer a:hover {
color: RGBA(15, 23, 26, 1);
}

.colophon_list li {
line-height: 1.2;
padding-bottom: 1em;
}
Binary file added resources/favicon.ico
Binary file not shown.
Binary file added resources/favicon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added resources/favicon.pxm
Binary file not shown.
Loading

0 comments on commit ad05f66

Please sign in to comment.