update
This commit is contained in:
parent
39dc286569
commit
1914e93357
1
.postcssrc
Normal file
1
.postcssrc
Normal file
@ -0,0 +1 @@
|
|||||||
|
{ "plugins": { "@tailwindcss/postcss": {} } }
|
103
index.css
Normal file
103
index.css
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
@import 'tailwindcss';
|
||||||
|
|
||||||
|
@page {
|
||||||
|
size: letter;
|
||||||
|
margin: 0.8in;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-size: 9pt;
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
body * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
color: #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 24pt;
|
||||||
|
font-family: 'DM Serif Text';
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 16pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
border-bottom: 1px solid #ddd; /* Adds subtle separation */
|
||||||
|
margin-top: 20px;
|
||||||
|
padding-bottom: 4px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
margin-top: 16px;
|
||||||
|
font-size: 12pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
margin-top: 12px;
|
||||||
|
font-size: 10pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h5 {
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-top: 6px;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
@apply list-disc;
|
||||||
|
padding-left: 18pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol {
|
||||||
|
@apply list-decimal;
|
||||||
|
padding-left: 18pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
p, li {
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
margin-bottom: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-size: 8pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 24pt;
|
||||||
|
font-family: 'DM Serif Text';
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 14pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 12pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
font-size: 10pt;
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
p, li {
|
||||||
|
font-family: 'Noto Serif';
|
||||||
|
}
|
454
index.html
Normal file
454
index.html
Normal file
@ -0,0 +1,454 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||||
|
<link
|
||||||
|
href="https://fonts.googleapis.com/css2?family=DM+Serif+Text:ital@0;1&family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap"
|
||||||
|
rel="stylesheet"
|
||||||
|
/>
|
||||||
|
<link rel="stylesheet" href="./index.css" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Orion Kindel</h1>
|
||||||
|
<p>
|
||||||
|
<strong
|
||||||
|
>Engineering Leader • Scalable Systems Architect • Open-Source
|
||||||
|
Advocate</strong
|
||||||
|
>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Passionate about creating educational content to evangelize modern tools and practices, while actively growing in mentorship, team leadership, and business leadership roles. Dedicated to fostering open-source communities and contributing to impactful organizations.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Chicago, IL ·
|
||||||
|
<a class="text-nowrap" href="tel:9894430197">+1 989 443 0197</a> ·
|
||||||
|
<a class="text-nowrap" href="mailto:orionkindel@gmail.com">
|
||||||
|
orionkindel@gmail.com</a
|
||||||
|
>
|
||||||
|
·
|
||||||
|
<a class="text-nowrap" href="https://git.orionkindel.com">
|
||||||
|
git.orionkindel.com</a
|
||||||
|
>
|
||||||
|
·
|
||||||
|
<a class="text-nowrap" href="https://github.com/cakekindel">
|
||||||
|
github.com/cakekindel</a
|
||||||
|
>
|
||||||
|
·
|
||||||
|
<a class="text-nowrap" href="https://www.meetup.com/chicago-rust-meetup/">
|
||||||
|
meetup.com/chicago-rust-meetup</a
|
||||||
|
>
|
||||||
|
·
|
||||||
|
<a class="text-nowrap" href="https://linkedin.com/in/orion-kindel">
|
||||||
|
linkedin.com/in/orion-kindel</a
|
||||||
|
>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<!-- <p>
|
||||||
|
Engineering leader with 8+ years of experience building high-performing
|
||||||
|
teams, scalable architectures, and validated products. Proven track
|
||||||
|
record in leading engineering teams, improving development processes,
|
||||||
|
and driving business outcomes through technical innovation.
|
||||||
|
</p>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<h2>Technical Skills</h2>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>Languages</strong>: Haskell, Purescript, Rust, OCaml, Python,
|
||||||
|
JavaScript/TypeScript
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<strong>Infrastructure</strong>: AWS, Linux, CI/CD, Kubernetes, Docker
|
||||||
|
</li>
|
||||||
|
<li><strong>Databases</strong>: PostgreSQL, SQL, NoSQL</li>
|
||||||
|
<li>
|
||||||
|
<strong>Architecture</strong>: Event-driven systems, microservices,
|
||||||
|
monoliths
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<strong>Leadership & Process</strong>: Agile, Scrum, mentoring, hiring
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<strong>Version Control</strong>: Expert in Git, GitHub, and self-hosted
|
||||||
|
Gitea instances, including mirroring and automated workflows.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Community Leadership</h2>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Revived the Chicago Rust Meetup chapter post-pandemic by networking with
|
||||||
|
the VP of Technology at Google to secure contributor access.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Organized a series of in-person happy-hour meetups, growing attendance
|
||||||
|
from 2 to over 40 regular participants within a year.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Fostered a collaborative and welcoming environment, re-establishing the
|
||||||
|
group as a hub for Rust developers in the Chicago area.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Authored several blog posts on Rust, Typescript & pattern matching,
|
||||||
|
which collectively gained 50,000 views on Medium, engaging a global audience
|
||||||
|
with actionable guides, leading to improved adoption of Rust and functional programming.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Regularly attend non-domain-specific tech meetups, serving as a
|
||||||
|
community pillar and mentor to 20+ aspiring developers on career advice,
|
||||||
|
technical skills and open-source contributions.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Experience</h2>
|
||||||
|
|
||||||
|
<div class="flex justify-between items-baseline">
|
||||||
|
<h3>Founder, CTO · LÜM Ventures</h3>
|
||||||
|
<p><em>Chicago IL, July 2024 - Present</em></p>
|
||||||
|
</div>
|
||||||
|
<p>
|
||||||
|
Architected and led the development of a full-stack
|
||||||
|
<strong>Purescript</strong> MVP, balancing rapid delivery with long-term
|
||||||
|
scalability and maintainability. Built a solid foundation with
|
||||||
|
<strong>automated testing, monitoring, and zero tech debt</strong>,
|
||||||
|
ensuring seamless expansion into the full platform vision.
|
||||||
|
</p>
|
||||||
|
<h5>Key Contributions</h5>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>Scalable, Maintainable Full-Stack Architecture</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Designed a robust FRP-based frontend with monadic composition,
|
||||||
|
enabling fine-grained state management and complex dependency
|
||||||
|
resolution.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Engineered a metaprogramming-powered backend that minimizes
|
||||||
|
boilerplate while supporting rich, complex REST semantics.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Ensured strict type safety between the frontend and API, preventing
|
||||||
|
contract violations when deployed together.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Future-Proof Database & API Design</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Built a 4NF PostgreSQL schema with modularity and pivot flexibility,
|
||||||
|
supporting the full platform roadmap.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Developed a bespoke migration system, ensuring seamless schema
|
||||||
|
evolution without external dependencies.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Defined an OpenAPI + JSON Schema REST API, incorporating
|
||||||
|
HATEOAS-style linked data for enhanced discoverability.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Reliability, Automation & CI/CD</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Scaffolding from day one included unit & end-to-end tests, liveness
|
||||||
|
checks, and real-time monitoring, ensuring stability and
|
||||||
|
observability.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Implemented full CI/CD with automated deployments, minimizing
|
||||||
|
overhead for iteration.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Built an ephemeral test environment system, allowing isolated,
|
||||||
|
instant database instances for high-speed automated testing.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Open-Source Contributions & Thought Leadership</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Authored technical blog posts on functional programming, Rust,
|
||||||
|
Typescript, sharing insights with the developer community and
|
||||||
|
demonstrating expertise.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Published multiple Purescript libraries as part of MVP development,
|
||||||
|
contributing back to the ecosystem.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Advocated for FOSS involvement, ensuring company culture aligns with
|
||||||
|
open-source best practices.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Trained a junior engineer with no prior FP experience, making them
|
||||||
|
productive in Purescript within a month.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Business & Product Strategy</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Defined and continually refined product vision and roadmap,
|
||||||
|
validating through hands-on customer feedback.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Led business development efforts, networking with investors and
|
||||||
|
partners to drive funding and adoption.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Founder, CTO · Thunderstrike</h3>
|
||||||
|
<p><em>Chicago, IL • June 2023 – April 2024</em></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Founded and led the development of a full-stack
|
||||||
|
<strong>Purescript</strong> MVP, rapidly iterating on core product
|
||||||
|
hypotheses while balancing technical excellence with delivery. Built a
|
||||||
|
highly scalable, event-driven architecture and established strong
|
||||||
|
<strong>open-source contributions</strong> to the Purescript ecosystem.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h5>Key Contributions</h5>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>High-Performance Full-Stack Architecture</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Developed a <strong>fully type-safe monolithic codebase</strong> in
|
||||||
|
<strong>Purescript</strong>, ensuring long-term maintainability and
|
||||||
|
rapid prototyping.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Designed a <strong>JSON DSL</strong> for
|
||||||
|
<strong>distributed web scraping</strong>, allowing complex
|
||||||
|
behavioral configurations.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Built a <strong>robust type-level API contract system</strong>,
|
||||||
|
ensuring <strong>zero API contract mismatches</strong> between
|
||||||
|
backend and frontend.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Database & Scalability Enhancements</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Engineered a
|
||||||
|
<strong>highly normalized (5NF) PostgreSQL schema</strong>,
|
||||||
|
optimizing for performance and data integrity.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Leveraged
|
||||||
|
<strong
|
||||||
|
>PL/pgSQL functions, triggers, and user-defined types</strong
|
||||||
|
>
|
||||||
|
to improve data expressiveness and enforce constraints.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Created a <strong>bespoke database migration system</strong>,
|
||||||
|
enabling safe, source-controlled schema evolution.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Infrastructure & Event-Driven Processing</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Built a
|
||||||
|
<strong
|
||||||
|
>horizontally & vertically scalable distributed web
|
||||||
|
scraper</strong
|
||||||
|
>, processing large-scale data efficiently.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Designed
|
||||||
|
<strong>containerized, platform-agnostic infrastructure</strong>,
|
||||||
|
ensuring easy deployment across environments.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Implemented <strong>event-driven architecture</strong> for
|
||||||
|
modularity and independent scalability.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Open-Source Contributions & Thought Leadership</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Developed and published
|
||||||
|
<strong>multiple open-source Purescript libraries</strong>,
|
||||||
|
including:
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>purescript-postgresql</strong> – Ergonomic PostgreSQL
|
||||||
|
interfacing for FP-based applications.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<strong>purescript-node-stream-pipes</strong> – Stream
|
||||||
|
processing utilities for scalable data pipelines.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<strong>purescript-url-immutable</strong> – Immutable URL
|
||||||
|
manipulation utilities for REST and API work.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Advocated for <strong>FOSS contributions</strong>, establishing a
|
||||||
|
culture of open-source engagement.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Business Strategy & Growth</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Defined and refined
|
||||||
|
<strong
|
||||||
|
>company strategy, product roadmap, and investor pitch</strong
|
||||||
|
>, securing early traction.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Led networking efforts at
|
||||||
|
<strong>trade shows, meetups, and investor events</strong>, driving
|
||||||
|
industry engagement.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Mentored <strong>three software engineering interns</strong>,
|
||||||
|
training them in <strong>functional programming</strong> and making
|
||||||
|
them productive in <strong>Purescript within two months</strong>.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Senior Software Engineering Team Lead · Qwick</h3>
|
||||||
|
<p><em>Phoenix, AZ • February 2021 – March 2023</em></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Led the engineering team at Qwick, where I drove the architecture and
|
||||||
|
implementation of scalable, high-performance systems. Spearheaded
|
||||||
|
initiatives that improved system reliability and streamlined engineering
|
||||||
|
workflows, resulting in a 40% increase in velocity and a significant
|
||||||
|
improvement in service reliability.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h5>Key Contributions</h5>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>Scalable Architecture & Performance Optimization</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Led the transformation of Qwick's monolithic system into a
|
||||||
|
**distributed microservices architecture**, improving scalability
|
||||||
|
and deployability.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Implemented **event-driven architecture**, decoupling services for
|
||||||
|
independent scalability and reducing system bottlenecks.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Optimized system performance by introducing **automated performance
|
||||||
|
testing**, reducing average response times by 35%.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Reliability & Automation</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Led the **migration to Kubernetes**, enabling more reliable
|
||||||
|
container orchestration and horizontal scaling of applications.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Spearheaded the implementation of **automated testing** for unit,
|
||||||
|
integration, and end-to-end testing, improving release cycles.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Developed and maintained CI/CD pipelines, reducing deployment times
|
||||||
|
by 60%.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Team Leadership & Mentorship</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Managed and mentored a team of **5+ software engineers**, fostering
|
||||||
|
an environment of growth, collaboration, and innovation.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Implemented **Agile/Scrum processes**, resulting in a 40% increase
|
||||||
|
in sprint velocity and improving team satisfaction.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Organized **weekly code review sessions**, improving code quality
|
||||||
|
and ensuring adherence to best practices.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<strong>Cross-functional Collaboration</strong>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Collaborated closely with **product managers** and **designers** to
|
||||||
|
define features and product requirements, ensuring alignment with
|
||||||
|
customer needs.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Worked directly with the **CTO** to refine the company's technical
|
||||||
|
vision, roadmap, and strategic goals.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Coordinated with **stakeholders** to gather feedback and refine
|
||||||
|
development processes, ensuring that the product roadmap aligned
|
||||||
|
with business objectives.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Software Engineering Team Lead · TheoremOne</h3>
|
||||||
|
<p><em>Global • April 2020 – February 2021</em></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Led two engineering teams in the successful delivery of high-quality,
|
||||||
|
scalable software solutions for enterprise clients. Architected
|
||||||
|
cloud-based systems on AWS and implemented best practices that
|
||||||
|
significantly improved both development efficiency and product quality.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>Software Engineer · StrongMind</h3>
|
||||||
|
<p><em>Phoenix, AZ • March 2017 – April 2020</em></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Contributed to the design and development of distributed systems
|
||||||
|
and applications, focusing on educational technology. Key responsibilities included optimizing processes
|
||||||
|
and system performance, and enhancing development efficiency.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Education</h2>
|
||||||
|
<h3>Associate's of Science</h3>
|
||||||
|
<p><em>Scottsdale Community College, Awarded 2016</em></p>
|
||||||
|
</body>
|
||||||
|
</html>
|
6
index.js
6
index.js
@ -1,4 +1,4 @@
|
|||||||
import { $ } from 'zx'
|
import { $ } from 'bun'
|
||||||
import * as Fs from 'fs'
|
import * as Fs from 'fs'
|
||||||
import * as Path from 'path'
|
import * as Path from 'path'
|
||||||
import * as Stream from 'stream/promises'
|
import * as Stream from 'stream/promises'
|
||||||
@ -6,9 +6,7 @@ import * as Puppeteer from 'puppeteer'
|
|||||||
|
|
||||||
/** @type {import('puppeteer').PDFOptions} */
|
/** @type {import('puppeteer').PDFOptions} */
|
||||||
const PDF_OPTIONS = {
|
const PDF_OPTIONS = {
|
||||||
format: 'letter',
|
|
||||||
printBackground: true,
|
printBackground: true,
|
||||||
margin: { bottom: '0.25in', top: '0.25in', left: '0.25in', right: '0.25in' },
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const DEBUG = !!process.env['DEBUG']
|
const DEBUG = !!process.env['DEBUG']
|
||||||
@ -20,7 +18,7 @@ await $`bun bundle --public-url ${root}`
|
|||||||
|
|
||||||
const pup = await Puppeteer.launch({ headless: DEBUG ? false : 'new' })
|
const pup = await Puppeteer.launch({ headless: DEBUG ? false : 'new' })
|
||||||
const page = await pup.newPage()
|
const page = await pup.newPage()
|
||||||
await page.goto(root + '/resume.html')
|
await page.goto(root + '/index.html')
|
||||||
await page.waitForNetworkIdle()
|
await page.waitForNetworkIdle()
|
||||||
const pdf = await page.createPDFStream(PDF_OPTIONS)
|
const pdf = await page.createPDFStream(PDF_OPTIONS)
|
||||||
const out = Fs.createWriteStream('./resume.pdf', { flags: 'w+' })
|
const out = Fs.createWriteStream('./resume.pdf', { flags: 'w+' })
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
"name": "resume",
|
"name": "resume",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"bundle": "parcel build --no-cache ./resume.html",
|
"bundle": "parcel build --no-cache ./index.html",
|
||||||
"export": "bun index.js",
|
"export": "bun index.js",
|
||||||
"fmt": "bun bun/fmt.js"
|
"fmt": "bun bun/fmt.js"
|
||||||
},
|
},
|
||||||
@ -14,8 +14,9 @@
|
|||||||
"typescript": "^5.0.0"
|
"typescript": "^5.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@tailwindcss/postcss": "^4.0.0",
|
||||||
"parcel": "latest",
|
"parcel": "latest",
|
||||||
"puppeteer": "^21.7.0",
|
"puppeteer": "^21.7.0",
|
||||||
"zx": "^7.2.3"
|
"tailwindcss": "^4.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
1018
resume.html
1018
resume.html
File diff suppressed because it is too large
Load Diff
BIN
resume.pdf
BIN
resume.pdf
Binary file not shown.
8
tailwind.config.js
Normal file
8
tailwind.config.js
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
module.exports = {
|
||||||
|
content: ["./*.html"],
|
||||||
|
theme: {
|
||||||
|
extend: {},
|
||||||
|
},
|
||||||
|
variants: {},
|
||||||
|
plugins: [],
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user