p5.js template
by CharlesFrench
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/p5.js/0.3.3/p5.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<body>
<div class="container-fluid p-0">
<section class="resume-section p-3 p-lg-5 d-flex d-column bg-warning" id="about">
<div id="container-sketch">
<div class="my-auto">
<h1 class="mb-0">Name
<span class="text-primary">Surname</span>
</h1>
<div class="subheading mb-5">Street · City, Postcode · Mobile Number ·
<a href="mailto:name@email.com">name@email.com</a>
</div>
<p class="mb-5">Enter short description here.</p>
<ul class="list-inline list-social-icons mb-0">
<li class="list-inline-item">
<a href="#">
<span class="fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x"></i>
<i class="fa fa-facebook fa-stack-1x fa-inverse"></i>
</span>
</a>
</li>
<li class="list-inline-item">
<a href="#">
<span class="fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x"></i>
<i class="fa fa-twitter fa-stack-1x fa-inverse"></i>
</span>
</a>
</li>
<li class="list-inline-item">
<a href="#">
<span class="fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x"></i>
<i class="fa fa-linkedin fa-stack-1x fa-inverse"></i>
</span>
</a>
</li>
<li...
CSS
/*!
* Canvas CSS
*/
canvas {
position: absolute;
z-index: 3;
}
#container-sketch {
position: relative;
z-index: 2;
}
/*!
* Start Bootstrap - Resume v4.0.0-beta.2 (https://startbootstrap.com/template-overviews/resume)
* Copyright 2013-2017 Start Bootstrap
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-resume/blob/master/LICENSE)
*/
body {
font-family: 'Open Sans', serif;
padding-top: 54px;
color: #868e96;
}
@media (min-width: 992px) {
body {
padding-top: 0;
padding-left: 17rem;
}
}
#about {
position: relative !important;
z-index: 2;
}
canvas {
position: absolute !important;
top: 0;
left: 0;
z-index: 1;
}
#container {
position: fixed !important;
top: 0;
left: 0;
z-index: 1;
background-color: pink;
top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: 'Saira Extra Condensed', serif;
font-weight: 700;
text-transform: uppercase;
color: #343a40;
}
h1 {
font-size: 6rem;
line-height: 5.5rem;
}
h2 {
font-size: 3.5rem;
}
.subheading {
text-transform: uppercase;
font-weight: 500;
font-family: 'Saira Extra Condensed', serif;
font-size: 1.35rem;
}
.list-social-icons a {
color: #495057;
}
.list-social-icons a:hover {
color: #BD5D38;
}
.list-social-icons a .fa-lg {
font-size: 1.75rem;
}
.list-icons {
font-size: 3rem;
}
.list-icons .list-inline-item i:hover {
color: #BD5D38;
}
#sideNav .navbar-nav .nav-item .nav-link {
font-weight: 600;
text-transform: uppercase;
}
@media (min-width: 992px) {
#sideNav {
text-align: center;
position: fixed;
top: 0;
left: 0;
display: flex;
flex-direction: column;
width: 17rem;
height: 100vh;
}
#sideNav .navbar-brand {
display: flex;
margin: auto auto 0;
padding: 0.5rem;
}
#sideNav .navbar-brand .img-profile {
max-width: 10rem;
max-height: 10rem;
border: 0.5rem solid rgba(255, 255, 255, 0.2);
}
#sideNav .navbar-collapse {
display: flex;
...
JavaScript
function setup() {
var clientHeight = document.getElementById('about').clientHeight;
var clientWidth = document.getElementById('about').clientWidth;
var cnv = createCanvas(clientWidth, clientHeight);
cnv.parent("container-sketch");
background(0);
}
function draw() {
ellipse(width / 2 + random(10), height / 2 + random(10), 20, 20)
}