234 lines
9.5 KiB
HTML
234 lines
9.5 KiB
HTML
---
|
|
title: Home
|
|
uses:
|
|
- masonry
|
|
---
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
{% include head.html %}
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "http://schema.org/",
|
|
"@type": "Person",
|
|
"name": "Evan Pratten",
|
|
"jobTitle": "Software Developer",
|
|
"url": "https://retrylife.ca"
|
|
}
|
|
</script>
|
|
|
|
<!-- <link rel="stylesheet" href="{{site.baseurl}}/assets/css/easyScrollDots.min.css">
|
|
|
|
<style>
|
|
.scroll-indicator-controller>div {
|
|
border: 1px solid var(--color-blue);
|
|
background: unset;
|
|
}
|
|
|
|
.scroll-indicator-controller>div span {
|
|
color: var(--color-blue);
|
|
}
|
|
|
|
.scroll-indicator-controller>div.active {
|
|
background: var(--color-blue);
|
|
}
|
|
</style> -->
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div class="site-ctr">
|
|
<!-- Navbar -->
|
|
{% include nav.html %}
|
|
|
|
<section>
|
|
<div>
|
|
<div class="scroll-indicator" id="headerSection" data-scroll-indicator-title="Hello"></div>
|
|
</div>
|
|
<div class="color-hero">
|
|
<div class="hello container">
|
|
<h1>Hi,</h1>
|
|
<h1>I am Evan Pratten</h1>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<div class="home-secondary-panel edge--top">
|
|
<div class="inner-content-container home-content container">
|
|
<div class="card border-loop border-loop-right">
|
|
<div class="card-body">
|
|
|
|
<h1>Who I am</h1>
|
|
|
|
<h3>I am a first-year college student, studying Information Security at Sheridan College,
|
|
starting this fall. I develop software both as a hobby, and professionally, and have been
|
|
programming since I was in the 5th grade. I am also a Canadian amateur radio operator
|
|
(callsign <strong>VA3ZZA</strong>), and the former Lead Software Developer at <a
|
|
href="https://github.com/frc5024">Raider
|
|
Robotics</a>.</h3>
|
|
<div>
|
|
<div class="scroll-indicator" id="whoSection" data-scroll-indicator-title="Who I am"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- <div class="header-space"></div> -->
|
|
|
|
<div class="card card border-loop border-loop-left">
|
|
<div class="card-body">
|
|
<h1>The blog</h1>
|
|
<h3>I occasionally post writeups and tutorials in the blog portion of this website. Below are
|
|
the
|
|
three most recent posts.</h3>
|
|
|
|
<div class="card-deck">
|
|
{% assign i = 0 %}
|
|
{% for post in site.posts %}
|
|
{% if i < 3 %} <div class="card home-project">
|
|
<div class="card-body">
|
|
<h5 class="card-title">{{post.title}}</h5>
|
|
<h6 class="card-text">{{post.excerpt}}</h6>
|
|
</div>
|
|
<div class="card-footer">
|
|
{% assign post_date = post.date | split: " " %}
|
|
<small class="text-muted">Published: {{post_date.first}}</small>
|
|
<a href="{{post.url}}"><button class="btn btn-outline-primary btn-sm"
|
|
style="float:right;">Read Post</button></a>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% assign i = i | plus:1 %}
|
|
{% endfor %}
|
|
</div>
|
|
|
|
<br>
|
|
|
|
<div style="text-align:center;">
|
|
<a href="/blog" style="margin:auto;"><button type="button" class="btn btn-outline-primary">View
|
|
More</button></a>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<!-- <div class="header-space"></div> -->
|
|
|
|
<div class="card card border-loop border-loop-right">
|
|
<div class="card-body">
|
|
<h1>My notable projects</h1>
|
|
|
|
<h3>I develop and provide many web and desktop applications for public use. I host them all on my
|
|
private backend infrastructure. The network of servers that powers these applications was
|
|
originally
|
|
set up to help me learn server management and distributed application development.</h3>
|
|
|
|
|
|
<div style="padding-top:3rem;"></div>
|
|
|
|
<div style="margin:auto;width:max-content;max-width:100%;">
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('all');">All</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('app');">Apps</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('web');">Web</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('plugin');">Plugins</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('library');">Libraries</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('game');">Games</button>
|
|
<button style="margin:5px;" type="button" class="btn btn-outline-info btn-sm"
|
|
onclick="updateProjectWall('robot');">Robots</button>
|
|
</div>
|
|
|
|
<div class="row" id="project-grid">
|
|
|
|
{% for project in site.data.projects %}
|
|
<div class="col-sm-4 project-item">
|
|
<div class="card home-project"
|
|
data-types="{% for type in project.types %}{{type}},{% endfor %}">
|
|
{% if project.hero %}
|
|
<img src="{{project.hero.img_src}}" class="card-img-top" alt="{{project.title}}"
|
|
loading="auto">
|
|
{% endif %}
|
|
<div class="card-body" {% if project.archived %}data-toggle="tooltip"
|
|
data-placement="top" title="No longer actively maintained" {% endif %}>
|
|
<h5 class="card-title"><strong>{{project.title}} {% if project.archived %}<span
|
|
class="badge badge-secondary">Archived</span>{% endif %}</strong></h5>
|
|
<p class="card-text">{{project.description}}</p>
|
|
|
|
{% for text_btn in project.text_buttons %}
|
|
<a href="{{text_btn.url}}" class="btn btn-{{text_btn.color}}">{{text_btn.text}}</a>
|
|
{% endfor %}
|
|
|
|
{% for icon_btn in project.icon_buttons %}
|
|
<a href="{{icon_btn.url}}" class="btn btn-dark"><i
|
|
class="{{icon_btn.icon}}"></i></a>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
|
|
</div>
|
|
</div>
|
|
<div style="text-align:center;">
|
|
<a href="https://github.com/ewpratten" style="margin:auto;"><button type="button"
|
|
class="btn btn-outline-primary">View
|
|
More</button></a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<!-- Xss warning -->
|
|
<script>
|
|
if ((new URLSearchParams(window.location.search)).get("dnsxss") == "") {
|
|
alert("It looks like the DNS lookup service you just used is vulnerable to XSS. Anyways, welcome to my website!)");
|
|
}
|
|
</script>
|
|
|
|
|
|
{% include footer.html %}
|
|
|
|
<!-- Project grid -->
|
|
<script>
|
|
|
|
function orderProjectGrid() {
|
|
$('#project-grid').masonry({
|
|
// options
|
|
itemSelector: '.project-item',
|
|
// columnWidth: 500,
|
|
transitionDuration: '0s'
|
|
});
|
|
}
|
|
|
|
// Do a primary order call
|
|
orderProjectGrid();
|
|
|
|
// re-order in 2 seconds in case anything was still lazy-loading
|
|
setTimeout(orderProjectGrid, 1500);
|
|
setTimeout(orderProjectGrid, 2000);
|
|
setTimeout(orderProjectGrid, 5000);
|
|
</script>
|
|
|
|
<script src="/assets/js/project-wall.js"></script>
|
|
|
|
|
|
<!-- Dotdav -->
|
|
<!-- <script src="{{site.baseurl}}/assets/js/easyScrollDots.min.js"></script>
|
|
<script>
|
|
easyScrollDots({
|
|
'fixedNav': false,
|
|
'fixedNavId': '',
|
|
'fixedNavUpward': false,
|
|
'offset': 50
|
|
});
|
|
</script> -->
|
|
|
|
</body> |