You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
4.8 KiB
85 lines
4.8 KiB
extends template_70s
|
|
block content
|
|
.container#home
|
|
.inner
|
|
section.hero.full-height
|
|
.hero-box
|
|
h1 Garrett Mills
|
|
p Software engineer, computer scientist, and nerd.
|
|
//p Hi, there. My name is Garrett, and I'm a computer scientist, software engineer, and speaker.
|
|
.section-border
|
|
.section-border-inner-1
|
|
.section-border-inner-2
|
|
section#about
|
|
h2 about me
|
|
.about-container
|
|
.img
|
|
img(src="/assets/img/profile.jpg" width=300 height=300)
|
|
.about
|
|
p Hi, I'm Garrett. Welcome to my corner of the internet.
|
|
p I'm a computer scientist and software engineer specializing in software/systems architectures and programming languages. Some of my more recent projects include <a href="https://github.com/swarmlang/swarm" target="_blank">the Swarm programming language</a>, <a href="https://extollo.garrettmills.dev" target="_blank">the Extollo framework</a>, and <a href="https://code.garrettmills.dev/Starship/CoreID" target="_blank">the CoreID SSO server</a>.
|
|
p I sometimes write <a href="#{named('blog')}">blog posts</a> and <a href="https://code.garrettmills.dev/garrettmills" target="_blank">publish code</a> from my projects.
|
|
.section-border.odd
|
|
.section-border-inner-1
|
|
.section-border-inner-2
|
|
if workItemYears && workItemYears.length
|
|
section#work
|
|
h2 what I'm working on
|
|
.timeline-group
|
|
each year in workItemYears
|
|
.work-container(class=(workItemHiddenYears.includes(year) ? 'timeline-item theme-hide' : 'timeline-item'))
|
|
.timeline-container
|
|
.timeline-year #{year}
|
|
|
|
each item in workItemGroups[year]
|
|
.work-container(class=(item.endDate ? 'timeline-item theme-hide' : 'timeline-item'))
|
|
.timeline-container
|
|
.timeline-content
|
|
.range-small #{item.rangeDisplay()}
|
|
h3 !{item.name}
|
|
p !{item.description}
|
|
.work-container
|
|
button#timeline-view-all show past work
|
|
.section-border
|
|
.section-border-inner-1
|
|
.section-border-inner-2
|
|
section#contact
|
|
h2 get in touch
|
|
.contact-container
|
|
.message
|
|
p I'd love to hear from you if you have questions or inquiries related to me or my projects. You can get in touch by text, e-mail, or using this form. I also occasionally share thoughts on my <a href="/blog">blog</a>.
|
|
p <b>E-mail:</b> <a href="mailto:shout@garrettmills.dev">shout@garrettmills.dev</a>
|
|
.form
|
|
form#contact-form(method='post' action=named('contact'))
|
|
.form-group
|
|
input#contactEmail.form-control(type='email' name='email' placeholder='E-Mail Address' required)
|
|
input#contactEEmail(type='email' name='e-mail')
|
|
.form-group
|
|
input#contactFirst.form-control(name='name' placeholder='Name' required)
|
|
.form-group
|
|
textarea.form-control#contactMessage(name='message' placeholder='Message' required rows=6)
|
|
.form-group
|
|
button Send
|
|
.section-border.odd
|
|
.section-border-inner-1
|
|
.section-border-inner-2
|
|
section#recent
|
|
h2 latest updates
|
|
each item in feedPosts
|
|
.feed-item
|
|
.feed-category(id='feedPostTag_' + item.feedPostId)
|
|
.tag #{item.tag}
|
|
span
|
|
if !item.visible
|
|
p.text (draft)
|
|
p.text !{item.body}
|
|
.bottom
|
|
.stamp <a href="#{named('feed')}##{item.feedPostId}" class="feed-edit-button">permalink</a> | #{item.postedAt.toLocaleString()}
|
|
.row.mt-4
|
|
.col-12.text-center
|
|
a.button(href="/feed") view all
|
|
|
|
block append script
|
|
script.
|
|
document.getElementById('contactEEmail').style.display = 'none'
|