From d979318632d51b6b9969ec8cd92ec91b2189a0e4 Mon Sep 17 00:00:00 2001
From: Mikayla Dobson <93477693+innocuous-symmetry@users.noreply.github.com>
Date: Tue, 10 Jan 2023 13:05:59 -0600
Subject: [PATCH] new content, maintenance on project browser
---
src/components/AboutMe/SectionData.jsx | 21 ++++-----
src/components/ProjectsArray.jsx | 59 +++++++++++++------------
src/components/Technologies/techList.js | 17 +++++--
src/pages/Links.jsx | 2 +-
src/pages/Projects.jsx | 39 ++++++++++------
src/sass/pages/Links.scss | 9 ++++
6 files changed, 88 insertions(+), 59 deletions(-)
diff --git a/src/components/AboutMe/SectionData.jsx b/src/components/AboutMe/SectionData.jsx
index bde7473..697029b 100644
--- a/src/components/AboutMe/SectionData.jsx
+++ b/src/components/AboutMe/SectionData.jsx
@@ -13,9 +13,14 @@ export const WhatIDo = {
- Web Design Consulting
- I consult on small teams at Metazu Studio, a Nashville-based startup connecting clients with services in video production, AR/VR, social media, photography, and web design.
- I have worked on projects focused on full stack web engineering, real time communications, and designing beautiful user experiences.
+ Collaborative software engineering
+ I have consulted on small teams with:
+
+
Dization, a Pittsburgh-based company developing an enterprise resource planning solution for small businesses
+
Metazu Studio, a Nashville-based startup connecting clients with services in video production, AR/VR, social media, photography, and web design.
+
+
+ My work on these projects deals with managing the complexities of full-stack web engineering, as well as delivering beautiful user experiences to end customers.
@@ -59,7 +64,7 @@ export const Education = {
}
const MetazuConcepts = [
- "UI/UX design", "Pair Programming", "REST APIs", "Database management", "Consulting with Clients"
+ "Enterprise Resource Planning", "UI/UX design", "Pair Programming", "REST APIs", "Database management", "Consulting with Clients"
]
const MusicExperiences = [
@@ -105,12 +110,4 @@ export const Employment = {
)
-}
-
-export const Community = {
- title: "Community",
- jsx: (
- <>
- >
- )
}
\ No newline at end of file
diff --git a/src/components/ProjectsArray.jsx b/src/components/ProjectsArray.jsx
index fd15945..cd7caeb 100644
--- a/src/components/ProjectsArray.jsx
+++ b/src/components/ProjectsArray.jsx
@@ -3,16 +3,16 @@ import { v4 } from 'uuid';
export const projectsArray = [
{
- name: "Mikayla's E-Commerce Store",
+ name: "Express Spice Shop",
languages: ["TypeScript", "React", "PERN", "REST_API"],
inProgress: true,
jsx: (
- Mikayla's E-Commerce Store
- A fully-featured e-commerce platform
+
+ A sample, fully-featured e-commerce platform
Built in React with TypeScript, Node/Express, and PostgreSQL
- Payment processing supported through Stripe
- REST API fully documented in Swagger
+ Payment processing supported through Stripe (in progress)
+ API documentation with Swagger
IN PROGRESS
)
@@ -24,7 +24,7 @@ export const projectsArray = [
deployed: true,
jsx: (
- Procedural Drones
+ Procedural Music Generation
An experimental space for building out procedural music generation using vanilla JavaScript
Uses Tone.js to interact with the Web Audio API
Features a plain HTML/CSS front end to interact with the program
@@ -68,19 +68,6 @@ export const projectsArray = [
)
},
- {
- name: "Musical Counterpoint Bot",
- languages: ["HTML/CSS", "JavaScript"],
- inProgress: true,
- jsx: (
-
- Musical Counterpoint Bot
- A web-based program with functionality to evaluate sample solutions of problems in
- species-based counterpoint, as detailed by Johann Fux in Gradus ad Parnassum.
- In progress. Using vanilla HTML/CSS/JS.
-
- )
- },
{
name: "Password Game",
languages: ["React", "MongoDB", "MERN", "React", "REST_API", "Socket.io", "Sass", "MaterialUI"],
@@ -95,12 +82,12 @@ export const projectsArray = [
)
},
{
- name: "Splinter",
- languages: ["React", "PERN", "Socket.io"],
+ name: "Splendor Clone",
+ languages: ["React", "TypeScript"],
inProgress: true,
jsx: (
- Splinter
+ Splendor -- a clone of the board game by Marc André
A clone of a popular card-based resource gathering game
Local multiplayer, with plans to build out online multiplayer and solo vs. CPU
In progress. Using React, Node/Express, and PostgreSQL.
@@ -108,15 +95,29 @@ export const projectsArray = [
)
},
{
- name: "Carenest",
- languages: ["React"],
- inProgress: false,
+ name: "Recipin",
+ languages: ["React", "TypeScript", "PERN"],
+ inProgress: true,
jsx: (
- Carenest
- Designed in collaboration with Faith Magras, Elvis Hernandez, and Daytreon Dean
- as a submission for #HACKTN with Hackathons International in March 2022.
- Produced using React. View the repo here!
+ Recipin -- a home recipe management solution
+ Manage a collection of your own commonly-used recipes
+ Features a full user-auth workflow and enables the sharing of recipes between users
+ Allows the user to build shopping lists from collections of their recipes
+ Built using full end-to-end TypeScript for the React front end and the Express server
+
+ )
+ },
+ {
+ name: "Photosorting with VGG16",
+ languages: ["Python", "TensorFlow", "PostgreSQL"],
+ inProgress: true,
+ jsx: (
+
+ Photosorting with VGG16
+ A tool written in Python for sorting photos based on the output of VGG16, the pre-trained image recognition model included with TensorFlow.
+ The user may also integrate the results of their photo sort into a PostgreSQL database.
+ The repository may be found here!
)
},
diff --git a/src/components/Technologies/techList.js b/src/components/Technologies/techList.js
index 3fccc0d..04ae692 100644
--- a/src/components/Technologies/techList.js
+++ b/src/components/Technologies/techList.js
@@ -6,6 +6,8 @@ export const techList = [
topic: "JavaScript",
subtopics: [
"TypeScript",
+ "React",
+ "Redux",
"NodeJS",
"Express",
"ToneJS",
@@ -17,14 +19,19 @@ export const techList = [
subtopics: [
"Pandas",
"Beautiful Soup",
+ "TensorFlow, Keras",
+ "Flet"
]
},
{
- topic: "C#",
- subtopics: [],
+ topic: "Java",
+ subtopics: [
+ "Spring Boot",
+ "Swing"
+ ]
},
{
- topic: "Java",
+ topic: "PHP",
subtopics: []
}
]
@@ -61,6 +68,8 @@ export const techList = [
topic: "SQL",
subtopics: [
"PostgreSQL",
+ "MySQL",
+ "Apache Web Server",
"MongoDB",
"Supabase"
]
@@ -70,6 +79,8 @@ export const techList = [
subtopics: [
"Express.js",
"Express-Session",
+ "PHP",
+ "Spring Boot",
"API Documentation with Swagger",
"MVC Architecture"
]
diff --git a/src/pages/Links.jsx b/src/pages/Links.jsx
index dc81872..701747d 100644
--- a/src/pages/Links.jsx
+++ b/src/pages/Links.jsx
@@ -6,7 +6,7 @@ import linkedin from "../media/LI-In-Bug.png";
export default function Links() {
return (
-
Connect with me and get a closer look at my work!
+
Check out the links below to get a better look at my work!
diff --git a/src/pages/Projects.jsx b/src/pages/Projects.jsx
index 0f93a1f..2a64150 100644
--- a/src/pages/Projects.jsx
+++ b/src/pages/Projects.jsx
@@ -39,6 +39,26 @@ export default function Projects() {
}, [search]);
useEffect(() => {
+ function unpack(element) {
+ if (typeof element == "string") return element;
+
+ if (typeof element.props.children != "string") {
+ if (Array.isArray(element.props.children)) {
+ let composite = "";
+
+ for (let each of element.props.children) {
+ composite += unpack(each);
+ }
+
+ return composite;
+ }
+
+ return unpack(element.props.children);
+ }
+
+ return element.props.children;
+ }
+
let projectText = [];
let i = 0;
while (i < projectsArray.length) {
@@ -47,26 +67,17 @@ export default function Projects() {
text: []
}
+ let newText;
+
for (let each of projectsArray[i].jsx.props.children) {
- if (Array.isArray(each.props.children)) {
- for (let nested of each.props.children) {
- if (typeof nested === 'string') {
- const newText = nested.toLowerCase();
- project.text.push(newText);
- } else {
- const newText = nested.props.children.toLowerCase();
- project.text.push(newText);
- }
- }
- } else {
- const newText = each.props.children.toLowerCase();
- project.text.push(newText);
- }
+ newText = unpack(each);
+ project.text.push(newText);
}
projectText.push(project);
i++;
}
+
setText(projectText);
}, [])
diff --git a/src/sass/pages/Links.scss b/src/sass/pages/Links.scss
index d2a347e..fac0643 100644
--- a/src/sass/pages/Links.scss
+++ b/src/sass/pages/Links.scss
@@ -1,12 +1,21 @@
@import "../helper/variables";
+@import "../helper/mixins";
.links-page {
background-color: $lilac;
justify-content: center;
+ padding-top: 5rem;
+
.links-container {
display: flex;
flex-flow: row wrap;
+
.MuiCard-root {
+ @include step-entry(2);
+
+ opacity: 0;
+ transition: 0.5s transform ease;
+
display: inline-flex;
flex-direction: column;
align-items: center;