Added experience/projects into other views.
This commit is contained in:
parent
498bda2cf4
commit
a844aa54dc
|
@ -6,7 +6,8 @@
|
||||||
|
|
||||||
<PageTitle>Home</PageTitle>
|
<PageTitle>Home</PageTitle>
|
||||||
|
|
||||||
<div class="container d-none d-lg-block mt-5 pt-3 pb-5 ps-5 pe-5 ">
|
<!-- View 1: Desktop View -->
|
||||||
|
<div class="container d-none d-lg-none d-xl-block mt-5 pt-3 pb-5 ps-5 pe-5 ">
|
||||||
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
||||||
|
|
||||||
<!-- Start of Grid -->
|
<!-- Start of Grid -->
|
||||||
|
@ -260,7 +261,252 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Desktop B: Tablet View -->
|
<!-- View 2: Smaller Desktop View -->
|
||||||
|
<div class="container d-none d-md-none d-xl-none d-lg-block mt-4 pt-3 pb-4 ">
|
||||||
|
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
||||||
|
<div class="row mb-3">
|
||||||
|
<div class="col-auto ">
|
||||||
|
<img class="card-img rounded-3" style="width: 16.9em;" src="https://i.pinimg.com/736x/54/63/ed/5463ed9471053712a76c0dd0b301a7ea.jpg" />
|
||||||
|
</div>
|
||||||
|
<div class="col ">
|
||||||
|
<!-- About Me-->
|
||||||
|
<div class="row card rounded fs-6 mb-3 p-2 ps-3 pe-3 border-0">
|
||||||
|
I am a full-stack web developer with additional
|
||||||
|
experience in Data Analysis and Visualization, as well as
|
||||||
|
Simulation/VR development, and AI/ML programming.
|
||||||
|
I am a friendly team worker with strong analytical, math
|
||||||
|
and problem-solving skills that adapts well to an
|
||||||
|
Agile/SCRUM environment and development lifecycle.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row mt-3">
|
||||||
|
<!-- School Experience -->
|
||||||
|
<div class="col me-1">
|
||||||
|
<div class="row bg-white rounded p-2 ps-3 pe-3 border border-1 border-primary">
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0">September 2018 – March 2022</p>
|
||||||
|
<p class="fs-5 card-title m-0 p-0">B.S. in Computer Science</p>
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0">Oregon State University</p>
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0">Graduated Cum Laude</p>
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0">Dean’s List: Fall 2020, Fall 2021</p>
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0">Final GPA: 3.33</p>
|
||||||
|
|
||||||
|
<!-- Courses -->
|
||||||
|
<label class="text-decoration-underline p-0">Courses</label>
|
||||||
|
<div class="overflow-auto p-0" style="max-height: 10rem">
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
@if (courses == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
@foreach (var course in courses)
|
||||||
|
{
|
||||||
|
<li class="list-group-item">@course</li>
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="col ms-1">
|
||||||
|
<!--Skills \ Languages-->
|
||||||
|
<div class="row bg-white rounded p-2 border border-1 border-primary mb-2">
|
||||||
|
<div class="card-header">
|
||||||
|
<label class="text-decoration-underline">Skills \ Languages</label>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="overflow-auto p-0" style="max-height: 8rem">
|
||||||
|
@if (skills == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
@foreach (var skill in skills)
|
||||||
|
{
|
||||||
|
<li class="list-group-item">@skill</li>
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Tools -->
|
||||||
|
<div class="row bg-white rounded p-2 border border-1 border-primary">
|
||||||
|
<div class="card-header">
|
||||||
|
|
||||||
|
<label class="text-decoration-underline">Tools</label>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="overflow-auto p-0" style="max-height: 8rem">
|
||||||
|
@if (tools == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
@foreach (var tool in tools)
|
||||||
|
{
|
||||||
|
<li class="list-group-item">@tool</li>
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Experience / Projects -->
|
||||||
|
<div>
|
||||||
|
<div class="row mt-3">
|
||||||
|
|
||||||
|
<div class="col card border-0 rounded rounded-4 pt-3 pb-3">
|
||||||
|
<!-- Button Bay-->
|
||||||
|
<div class="row mt-2">
|
||||||
|
<div class="d-grid gap-2 d-md-flex justify-content-around">
|
||||||
|
<button class="btn rounded-4 w-25 @(isExperience ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleExperience()">Experience</button>
|
||||||
|
<button class="btn rounded-4 w-25 @(isProjects ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleProjects()">Projects</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col">
|
||||||
|
@if (isExperience)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center fst-italic fs-1 mb-2">
|
||||||
|
Experience
|
||||||
|
</div>
|
||||||
|
@if (experiences == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@foreach (var experience in experiences)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0"> @experience.StartYear – @experience.EndYear</p>
|
||||||
|
<p class="fs-5 card-title m-0">@experience.Title - @experience.Company</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">@experience.Details</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (isProjects)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center fst-italic fs-1 mb-2">Projects</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Temperature Blanket Visualizer</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Useful tool to help visualize and refine blanket planning for crochet temperature blankets.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">PokemonSleep Toolset</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A webpage constructed for the purposes of assisting players in the mobile game, Pokemon Sleep. Featuring a Pokemon Rater that derives ratings utilizing <a href="https://docs.google.com/spreadsheets/d/14nzQ--k4XhpFHI0qhgNRQlpWswh6WAxBCfq_QvIVZyI/edit?gid=339317073#gid=339317073">this</a> publically available spreadsheet constructed by other fans of the game.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">AI-Driven D&D 5E Character Generator with React, Next.js, and OpenAI GPT-3 Engine</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Creates a credible D&D 5E character sheet, including backstory, based on user input. Ex."I would like to play a magical elf." Or "I want to smash things with a big hammer." Would result in the AI choosing the best character to play with given the limitations and rules of the game (class, race, etc). The user would still be able to customize their character afterwards, and be prompted if they happen to “break” the rules of character generation; i.e. too many skill points assigned.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Lead development in core functionality, including front and back-end development. Developed all JavaScript components and pages including the deterministic logic depending on decisions made by the AI, and the styling using the emotion library.
|
||||||
|
</p>
|
||||||
|
<a class="" href="https://web.engr.oregonstate.edu/~hessro/teaching/hof/cs494#w22">CS 494 Hall of Fame recipient.</a>
|
||||||
|
<a class="mt-2" href="https://github.com/tylertitsworth/ai-character-generator">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">iOS Gesture Alphabet with Swift and CoreML</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">iOS keyboard extension that translates movements made by the user’s phone to corresponding letters. The model used has been trained with Apple’s CoreML to follow the user’s movements as though they were writing them in the air, through the detection of the device’s sensors, primarily through roll/pitch/yaw. Developed as a means of accessibility for users who may not be able to use a traditional phone keyboard effectively.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">SCRUM team lead and lead developer during each phase of project lifecycle. Collected, cleaned, trained and tested model with data personally collected and collected by other users. Developed core functionality, including keyboard extension interface and translation of motion to letter.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/kjiroux/iOS-Gesture-Alphabet">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Android Mobile App with Backend PokeAPI and Java</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Using the PokeAPI, created the app “UltimateDex”, which acts as a complete Pokedex from the series Pokemon. Accesses all possible Pokemon, allows the user to search, filter their searches, and save entries to their personal repository for easy retrieval. Each entry when selected comes with its own page which displays all relevant information regarding the entry, including the image associated with the Pokemon, and styled similarly to that of the series.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/osu-cs492-w20/final-project-tamagucci/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">NodeJS WebApp with MYSQL Database and Handlebars</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Fantasy task-assignment system. Utilizes MYSQL to organize and contain guilds, “quests” posted to the forum/board, and guild members whose accounts are associated with the webapp. Handlebars template to display contents, NodeJS to serve.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/yanyan2019/cs340_project/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- View 3: Tablet View -->
|
||||||
<div class="container d-none d-md-block d-lg-none mt-4 pt-3 pb-4 ">
|
<div class="container d-none d-md-block d-lg-none mt-4 pt-3 pb-4 ">
|
||||||
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
||||||
|
|
||||||
|
@ -297,7 +543,7 @@
|
||||||
|
|
||||||
<!-- Courses -->
|
<!-- Courses -->
|
||||||
<label class="text-decoration-underline p-0">Courses</label>
|
<label class="text-decoration-underline p-0">Courses</label>
|
||||||
<div class="overflow-auto p-0" style="max-height: 10rem">
|
<div class="overflow-auto p-0" style="max-height: 9.8rem">
|
||||||
<ul class="list-group list-group-flush">
|
<ul class="list-group list-group-flush">
|
||||||
@if (courses == null)
|
@if (courses == null)
|
||||||
{
|
{
|
||||||
|
@ -366,16 +612,151 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div class="row mt-3">
|
||||||
|
|
||||||
|
<div class="col card border-0 rounded rounded-4 pt-3 pb-3">
|
||||||
|
<!-- Button Bay-->
|
||||||
|
<div class="row mt-2">
|
||||||
|
<div class="d-grid gap-2 d-md-flex justify-content-around">
|
||||||
|
<button class="btn rounded-4 w-25 @(isExperience ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleExperience()">Experience</button>
|
||||||
|
<button class="btn rounded-4 w-25 @(isProjects ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleProjects()">Projects</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col">
|
||||||
|
@if (isExperience)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center fst-italic fs-1 mb-2">
|
||||||
|
Experience
|
||||||
|
</div>
|
||||||
|
@if (experiences == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@foreach (var experience in experiences)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0"> @experience.StartYear – @experience.EndYear</p>
|
||||||
|
<p class="fs-5 card-title m-0">@experience.Title - @experience.Company</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">@experience.Details</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (isProjects)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-md-center fst-italic fs-1 mb-2">Projects</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Temperature Blanket Visualizer</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Useful tool to help visualize and refine blanket planning for crochet temperature blankets.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">PokemonSleep Toolset</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A webpage constructed for the purposes of assisting players in the mobile game, Pokemon Sleep. Featuring a Pokemon Rater that derives ratings utilizing <a href="https://docs.google.com/spreadsheets/d/14nzQ--k4XhpFHI0qhgNRQlpWswh6WAxBCfq_QvIVZyI/edit?gid=339317073#gid=339317073">this</a> publically available spreadsheet constructed by other fans of the game.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">AI-Driven D&D 5E Character Generator with React, Next.js, and OpenAI GPT-3 Engine</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Creates a credible D&D 5E character sheet, including backstory, based on user input. Ex."I would like to play a magical elf." Or "I want to smash things with a big hammer." Would result in the AI choosing the best character to play with given the limitations and rules of the game (class, race, etc). The user would still be able to customize their character afterwards, and be prompted if they happen to “break” the rules of character generation; i.e. too many skill points assigned.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Lead development in core functionality, including front and back-end development. Developed all JavaScript components and pages including the deterministic logic depending on decisions made by the AI, and the styling using the emotion library.
|
||||||
|
</p>
|
||||||
|
<a class="" href="https://web.engr.oregonstate.edu/~hessro/teaching/hof/cs494#w22">CS 494 Hall of Fame recipient.</a>
|
||||||
|
<a class="mt-2" href="https://github.com/tylertitsworth/ai-character-generator">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">iOS Gesture Alphabet with Swift and CoreML</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">iOS keyboard extension that translates movements made by the user’s phone to corresponding letters. The model used has been trained with Apple’s CoreML to follow the user’s movements as though they were writing them in the air, through the detection of the device’s sensors, primarily through roll/pitch/yaw. Developed as a means of accessibility for users who may not be able to use a traditional phone keyboard effectively.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">SCRUM team lead and lead developer during each phase of project lifecycle. Collected, cleaned, trained and tested model with data personally collected and collected by other users. Developed core functionality, including keyboard extension interface and translation of motion to letter.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/kjiroux/iOS-Gesture-Alphabet">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Android Mobile App with Backend PokeAPI and Java</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Using the PokeAPI, created the app “UltimateDex”, which acts as a complete Pokedex from the series Pokemon. Accesses all possible Pokemon, allows the user to search, filter their searches, and save entries to their personal repository for easy retrieval. Each entry when selected comes with its own page which displays all relevant information regarding the entry, including the image associated with the Pokemon, and styled similarly to that of the series.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/osu-cs492-w20/final-project-tamagucci/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-content-md-center mb-3">
|
||||||
|
<div class="card w-75 p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">NodeJS WebApp with MYSQL Database and Handlebars</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Fantasy task-assignment system. Utilizes MYSQL to organize and contain guilds, “quests” posted to the forum/board, and guild members whose accounts are associated with the webapp. Handlebars template to display contents, NodeJS to serve.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/yanyan2019/cs340_project/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- View 4: Mobile View -->
|
||||||
|
<div class="container card rounded border-0 d-block d-md-none mx-auto mt-4 mb-3 shadow-sm ">
|
||||||
<!-- Desktop C: Mobile View -->
|
<h1 class="fst-italic fw-light fs-1 font-monospace pt-2">Hello, World!</h1>
|
||||||
<div class="container card border-0 d-block d-md-none mx-auto mt-4 shadow-sm pb-2">
|
|
||||||
<h1 class="fst-italic fw-light fs-1 font-monospace">Hello, World!</h1>
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="card p-3 border-0">
|
<div class="card border-0">
|
||||||
<div class="clearfix">
|
<div class="clearfix">
|
||||||
<img src="https://i.pinimg.com/736x/54/63/ed/5463ed9471053712a76c0dd0b301a7ea.jpg"
|
<img src="https://i.pinimg.com/736x/54/63/ed/5463ed9471053712a76c0dd0b301a7ea.jpg"
|
||||||
class="mobile-profile float-start me-3 mb-2" />
|
class="mobile-profile float-start me-3 mb-2" />
|
||||||
|
@ -398,6 +779,7 @@
|
||||||
|
|
||||||
<hr class="text-primary" />
|
<hr class="text-primary" />
|
||||||
|
|
||||||
|
<!-- Education -->
|
||||||
<div class="row mb-3 ms-2 me-2 ">
|
<div class="row mb-3 ms-2 me-2 ">
|
||||||
<div class="card p-2 ps-3 pe-3 border border-1 border-primary">
|
<div class="card p-2 ps-3 pe-3 border border-1 border-primary">
|
||||||
<p class="fs-6 fw-lighter card-subtitle m-0">September 2018 – March 2022</p>
|
<p class="fs-6 fw-lighter card-subtitle m-0">September 2018 – March 2022</p>
|
||||||
|
@ -409,6 +791,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Skills \ Languages -->
|
||||||
<div class="row mb-3 ms-2 me-2">
|
<div class="row mb-3 ms-2 me-2">
|
||||||
<div class="bg-primary-subtle rounded p-2 border-0">
|
<div class="bg-primary-subtle rounded p-2 border-0">
|
||||||
<div class="card-header text-bg-primary text-light fs-3">
|
<div class="card-header text-bg-primary text-light fs-3">
|
||||||
|
@ -432,6 +815,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Technology -->
|
||||||
<div class="row mb-3 ms-2 me-2">
|
<div class="row mb-3 ms-2 me-2">
|
||||||
<div class="bg-primary-subtle rounded p-2 border-0">
|
<div class="bg-primary-subtle rounded p-2 border-0">
|
||||||
<div class="card-header text-bg-primary text-light fs-3">
|
<div class="card-header text-bg-primary text-light fs-3">
|
||||||
|
@ -455,5 +839,149 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Experience \ Projects -->
|
||||||
|
<div class="row mb-3 ms-2 me-2">
|
||||||
|
<div class="col card border-0 rounded rounded-4 pt-3 ">
|
||||||
|
<!-- Button Bay-->
|
||||||
|
<div class="row mt-2">
|
||||||
|
<div class="d-flex justify-content-evenly">
|
||||||
|
<button class="btn rounded-4 flex-fill @(isExperience ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleExperience()">Experience</button>
|
||||||
|
<button class="btn rounded-4 flex-fill @(isProjects ? "btn-primary" : "btn-outline-primary")" type="button" @onclick="() => ToggleProjects()">Projects</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@if (isExperience)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-center fst-italic fs-1 mt-2">
|
||||||
|
Experience
|
||||||
|
</div>
|
||||||
|
@if (experiences == null)
|
||||||
|
{
|
||||||
|
<div>Loading...</div>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<div class="overflow-auto" style="max-height: 16rem">
|
||||||
|
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
@foreach (var experience in experiences)
|
||||||
|
{
|
||||||
|
<div class=" justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-6 fw-lighter card-subtitle p-0"> @experience.StartYear – @experience.EndYear</p>
|
||||||
|
<p class="fs-5 card-title m-0">@experience.Title - @experience.Company</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">@experience.Details</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (isProjects)
|
||||||
|
{
|
||||||
|
<div class="row justify-content-center fst-italic fs-1 mt-2">Projects</div>
|
||||||
|
|
||||||
|
<div class="overflow-auto" style="max-height: 16rem">
|
||||||
|
|
||||||
|
<ul class="list-group list-group-flush">
|
||||||
|
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Temperature Blanket Visualizer</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Useful tool to help visualize and refine blanket planning for crochet temperature blankets.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">PokemonSleep Toolset</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A webpage constructed for the purposes of assisting players in the mobile game, Pokemon Sleep. Featuring a Pokemon Rater that derives ratings utilizing <a href="https://docs.google.com/spreadsheets/d/14nzQ--k4XhpFHI0qhgNRQlpWswh6WAxBCfq_QvIVZyI/edit?gid=339317073#gid=339317073">this</a> publically available spreadsheet constructed by other fans of the game.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">A personal project, but a fun one.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://localhost:7189/pokemonsleep">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z"/>
|
||||||
|
<path d="M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">AI-Driven D&D 5E Character Generator with React, Next.js, and OpenAI GPT-3 Engine</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Creates a credible D&D 5E character sheet, including backstory, based on user input. Ex."I would like to play a magical elf." Or "I want to smash things with a big hammer." Would result in the AI choosing the best character to play with given the limitations and rules of the game (class, race, etc). The user would still be able to customize their character afterwards, and be prompted if they happen to “break” the rules of character generation; i.e. too many skill points assigned.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Lead development in core functionality, including front and back-end development. Developed all JavaScript components and pages including the deterministic logic depending on decisions made by the AI, and the styling using the emotion library.
|
||||||
|
</p>
|
||||||
|
<a class="" href="https://web.engr.oregonstate.edu/~hessro/teaching/hof/cs494#w22">CS 494 Hall of Fame recipient.</a>
|
||||||
|
<a class="mt-2" href="https://github.com/tylertitsworth/ai-character-generator">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">iOS Gesture Alphabet with Swift and CoreML</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">iOS keyboard extension that translates movements made by the user’s phone to corresponding letters. The model used has been trained with Apple’s CoreML to follow the user’s movements as though they were writing them in the air, through the detection of the device’s sensors, primarily through roll/pitch/yaw. Developed as a means of accessibility for users who may not be able to use a traditional phone keyboard effectively.
|
||||||
|
</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">SCRUM team lead and lead developer during each phase of project lifecycle. Collected, cleaned, trained and tested model with data personally collected and collected by other users. Developed core functionality, including keyboard extension interface and translation of motion to letter.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/kjiroux/iOS-Gesture-Alphabet">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">Android Mobile App with Backend PokeAPI and Java</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Using the PokeAPI, created the app “UltimateDex”, which acts as a complete Pokedex from the series Pokemon. Accesses all possible Pokemon, allows the user to search, filter their searches, and save entries to their personal repository for easy retrieval. Each entry when selected comes with its own page which displays all relevant information regarding the entry, including the image associated with the Pokemon, and styled similarly to that of the series.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/osu-cs492-w20/final-project-tamagucci/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="justify-content-md-center">
|
||||||
|
<div class="card p-3 ps-4 pe-4 rounded">
|
||||||
|
<p class="fs-5 card-title m-0">NodeJS WebApp with MYSQL Database and Handlebars</p>
|
||||||
|
<p class="fs-6 fw-lighter card-text">Fantasy task-assignment system. Utilizes MYSQL to organize and contain guilds, “quests” posted to the forum/board, and guild members whose accounts are associated with the webapp. Handlebars template to display contents, NodeJS to serve.
|
||||||
|
</p>
|
||||||
|
<a class="mt-2" href="https://github.com/yanyan2019/cs340_project/">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" class="bi bi-github" viewBox="0 0 16 16">
|
||||||
|
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue