commit 2da5b972218759f28a80eec5d8452fdaaa77db0d Author: rapturate Date: Mon Feb 23 15:03:43 2026 +0000 Gitea migration diff --git a/css/indexStyle.css b/css/indexStyle.css new file mode 100755 index 0000000..e29e94b --- /dev/null +++ b/css/indexStyle.css @@ -0,0 +1,420 @@ +/* Quick Reset */ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +/*Variables*/ +:root { + --clr-name-plate: #1c3610; + --clr-text-color: rgb(41, 39, 39); + --clr-One:#F2D7C0; + --clr-Two:#B8C2C5; + --clr-Three:#43665f; + --clr-hero: #E19479; + --clr-Four:#A68B78 ; + --clr-Five:#4A5052; + --clr-Six: #5D3A28; + + --fs-h1: 2.5rem; + --fs-h2: 1.8rem; + --fs-h3: 1.2rem; + --fs-text: 1rem; + --fs-small: 0.9rem; +} + +html { + height: 100%; +} + +body { + font-family: 'Open Sans', Arial, sans-serif; + line-height: 1.5; + background-color: var(--clr-One); + color: var(--clr-text-color); + min-height: 100vh; + display: flex; + flex-direction: column; +} + +/* Header */ +header { + position: fixed; + top: 0; + left: 0; + width: 100%; + background-color: var(--clr-Three); + z-index: 10; + box-shadow: 0 2px 5px rgba(0,0,0,0.1); +} + +div.nav-bar { + display: flex; + justify-content: space-between; + align-items: center; + width: 100%; + max-width: 1200px; + margin: 0 auto; + padding: 1rem 2rem; +} + +.nav-logo { + background-color: var(--clr-One); + border-radius: 20px; + padding: 5px; +} + +nav ul.nav-links { + display: flex; + flex-direction: column; + gap: 1rem; + align-items: center; + list-style: none; +} + +nav ul.nav-links a { + color: var(--clr-Six); + text-decoration: none; + padding: 0.5rem 1rem; + border-radius: 10px; + background-color: var(--clr-One); + font-weight: 500; + transition: background-color 0.3s ease; +} + +nav ul.nav-links a:hover, +nav ul.nav-links a:focus { + background-color: var(--clr-Four); + outline: none; +} + +/* Main content */ +main { + flex: 1; + /* padding-top: 120px; Added a gap between nav and hero which apparently is a faux*/ +} + +/* Hero */ +#hero { + display: flex; + flex-direction: column; + min-height: 30rem; + background: var(--clr-hero); + background-size: cover; + background-position: center; + padding-top: 8rem; + padding-bottom: 3rem; + align-content: center; + align-items: center; + justify-content: center; +} + +div.hero-text { + display: flex; + flex-direction: column; + text-align: center; + max-width: 300px; + gap: 1rem; +} + +div.hero-text h1 { + color: var(--clr-name-plate); + font-size: var(--fs-h1); + font-weight: 700; +} + +div.hero-text p { + color: var(--clr-text-color); + font-size: var(--fs-text); + max-width: 60ch; +} + +.cta-button { + display: inline-block; + background-color: var(--clr-Three); + color: var(--clr-One); + padding: 1rem 2rem; + text-decoration: none; + border-radius: 10px; + font-weight: 600; + transition: background-color 0.3s ease; + margin-top: 1rem; + align-self: center; +} + +.cta-button:hover, +.cta-button:focus { + background-color: var(--clr-Six); + outline: none; +} + +img.hero-img { + width: 200px; + height: 200px; + border-radius: 50%; + object-fit: cover; +} + +/* About Section */ +.about-section { + padding: 4rem 2rem; + max-width: 800px; + margin: 0 auto; + text-align: justify; +} + +.about-section h2 { + font-size: var(--fs-h2); + color: var(--clr-name-plate); + margin-bottom: 2rem; + text-align: center; +} + +.about-section p { + font-size: var(--fs-text); + line-height: 1.6; + max-width: 75ch; +} + +/* Projects Containers */ +.list-all-projects { + background-color: var(--clr-Four); + padding: 4rem 2rem; + min-height: 400px; +} + +.list-all-projects h2 { + text-align: center; + color: var(--clr-text-color); + font-size: var(--fs-h2); + margin-bottom: 3rem; +} + +#projects { + display: grid; + gap: 2rem; + grid-template-columns: 1fr; + max-width: 1200px; + margin: 0 auto; +} + +.project-box { + background-color: var(--clr-Two); + border-radius: 15px; + display: flex; + align-items: flex-start; + color: var(--clr-text-color); + overflow: hidden; + box-shadow: 0 4px 8px rgba(0,0,0,0.1); + transition: transform 0.3s ease; +} + +.project-box:hover { + transform: translateY(-2px); +} + +.project-box img { + width: 150px; + height: 120px; + object-fit: cover; + flex-shrink: 0; +} + +.proj-text { + padding: 1rem; + flex: 1; +} + +.proj-text h3 { + font-size: var(--fs-h3); + margin-bottom: 0.5rem; + color: var(--clr-name-plate); +} + +.proj-text p { + font-size: var(--fs-small); + line-height: 1.4; +} + +/* Contact Section */ +#contact { + padding: 4rem 2rem; + background-color: var(--clr-One); +} + +#contact h2 { + text-align: center; + font-size: var(--fs-h2); + color: var(--clr-name-plate); + margin-bottom: 2rem; +} + +#socials { + display: flex; + justify-content: center; + gap: 2rem; + margin-bottom: 3rem; +} + +#socials a img { + width: 3rem; + height: 3rem; + transition: transform 0.3s ease; +} + +#socials a:hover img { + transform: scale(1.1); +} + +form { + display: flex; + flex-direction: column; + align-items: center; + gap: 1.5rem; + max-width: 500px; + margin: 0 auto; +} + +form label { + align-self: flex-start; + font-weight: 600; + color: var(--clr-name-plate); +} + +form input, +form textarea { + width: 100%; + padding: 1rem; + font-size: var(--fs-text); + border: 3px solid var(--clr-Five); + border-radius: 10px; + background-color: white; + color: var(--clr-text-color); +} + +form input:focus, +form textarea:focus { + outline: none; + border-color: var(--clr-Three); +} + +form textarea { + min-height: 120px; + resize: vertical; +} + +form button { + background-color: var(--clr-Three); + color: var(--clr-One); + border: none; + padding: 1rem 2rem; + font-size: var(--fs-text); + border-radius: 10px; + cursor: pointer; + font-weight: 600; + transition: background-color 0.3s ease; +} + +form button:hover, +form button:focus { + background-color: var(--clr-Six); + outline: none; +} + +/* Footer */ +footer { + background-color: var(--clr-Five); + color: var(--clr-One); + padding: 2rem; + text-align: center; + width: 100%; + margin-top: auto; +} + +footer p { + margin-bottom: 1rem; +} + +.social-links { + display: flex; + justify-content: center; + gap: 1.5rem; +} + +.social-links a img { + width: 2rem; + height: 2rem; + filter: brightness(0) invert(1); + transition: transform 0.3s ease; +} + +.social-links a:hover img { + transform: scale(1.1); +} + +/* Responsive Design - Mobile First */ +@media (min-width: 600px) { + nav ul.nav-links { + flex-direction: row; + } + + #hero { + display: grid; + grid-template-columns: 1fr 1fr; + align-items: center; + gap: 3rem; + /* padding: 4rem 2rem; */ + } + + div.hero-text { + text-align: left; + order: 2; + } + + div.hero-text h1 { + text-align: left; + } + + div.hero-text p { + text-align: left; + } + + .cta-button { + align-self: flex-start; + } + + img.hero-img { + order: 1; + justify-self: center; + } + + #projects { + grid-template-columns: repeat(2, 1fr); + } + + .project-box img { + width: 120px; + height: 100px; + } +} + +@media (min-width: 900px) { + #projects { + grid-template-columns: repeat(3, 1fr); + } + + .project-box { + flex-direction: column; + text-align: center; + } + + .project-box img { + width: 100%; + height: 200px; + } + + .proj-text { + text-align: left; + } +} \ No newline at end of file diff --git a/css/projectStyle.css b/css/projectStyle.css new file mode 100755 index 0000000..32cdbf9 --- /dev/null +++ b/css/projectStyle.css @@ -0,0 +1,219 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +/*Variables*/ +:root { + --clr-primary: #009DF0; + --clr-accent-light: #F09B00; + --clr-accent-dark: #F04E00; + --clr-card-background: #E3F0FB; + --clr-page-background: #fffcf6; + --clr-text-light: #263f4a; + --clr-text-main: #1B0A14; + --clr-header-bg: #43665f; + --clr-nav-bg: #F2D7C0; + + --fs-h1: 2.5rem; + --fs-h2: 1.5rem; + --fs-text: 1rem; +} + +html { + height: 100%; +} + +body { + font-family: 'Open Sans', Arial, sans-serif; + line-height: 1.5; + background-color: var(--clr-page-background); + color: var(--clr-text-main); + min-height: 100vh; + display: flex; + flex-direction: column; +} + +/* Header */ +header { + width: 100%; + background-color: var(--clr-header-bg); + box-shadow: 0 2px 5px rgba(0,0,0,0.1); +} + +.nav-bar { + display: flex; + justify-content: space-between; + align-items: center; + max-width: 1200px; + margin: 0 auto; + padding: 1rem 2rem; +} + +.nav-logo { + background-color: var(--clr-nav-bg); + border-radius: 20px; + padding: 5px; +} + +nav ul.nav-links { + display: flex; + flex-direction: column; + gap: 1rem; + align-items: center; + list-style: none; +} + +nav ul.nav-links a { + color: #5D3A28; + text-decoration: none; + padding: 0.5rem 1rem; + border-radius: 10px; + background-color: var(--clr-nav-bg); + font-weight: 500; + transition: background-color 0.3s ease; +} + +nav ul.nav-links a:hover, +nav ul.nav-links a:focus { + background-color: #A68B78; + outline: none; +} + +.header-content { + text-align: center; + padding: 2rem; + background-color: var(--clr-page-background); +} + +.header-content h1 { + font-size: var(--fs-h1); + color: var(--clr-text-main); + font-weight: 700; +} + +/* Main content */ +main { + flex: 1; + padding: 3rem 2rem; + max-width: 1200px; + margin: 0 auto; + width: 100%; +} + +#projects { + display: grid; + grid-template-columns: 1fr; /* Single column for mobile */ + gap: 2rem; +} + +#projects h2 { + font-size: var(--fs-h2); + color: var(--clr-text-main); + margin-bottom: 1rem; +} + +#projects p { + color: var(--clr-text-light); + font-size: var(--fs-text); + line-height: 1.6; + max-width: 65ch; +} + +.project-card { + display: flex; + flex-direction: column; + background-color: var(--clr-card-background); + border-radius: 16px; + box-shadow: 0 4px 12px rgba(91, 127, 161, 0.3); + overflow: hidden; + transition: transform 0.3s ease, box-shadow 0.3s ease; +} + +.project-card:hover { + transform: translateY(-4px); + box-shadow: 0 8px 20px rgba(91, 127, 161, 0.4); +} + +.project-image { + width: 100%; + height: 250px; + overflow: hidden; +} + +.project-image img { + width: 100%; + height: 100%; + object-fit: cover; + transition: transform 0.3s ease; +} + +.project-card:hover .project-image img { + transform: scale(1.05); +} + +.project-description { + padding: 1.5rem; + flex: 1; +} + +.project-description h2 { + margin-bottom: 1rem; +} + +/* Footer */ +footer { + background-color: #4A5052; + color: #F2D7C0; + padding: 2rem; + text-align: center; + width: 100%; + margin-top: auto; +} + +footer p { + margin-bottom: 1rem; +} + +.social-links { + display: flex; + justify-content: center; + gap: 1.5rem; +} + +.social-links a img { + width: 2rem; + height: 2rem; + filter: brightness(0) invert(1); + transition: transform 0.3s ease; +} + +.social-links a:hover img { + transform: scale(1.1); +} + +/* Responsive Design - Mobile First */ +@media (min-width: 600px) { + nav ul.nav-links { + flex-direction: row; + } + + #projects { + grid-template-columns: repeat(2, 1fr); + } + + .project-image { + height: 200px; + } +} + +@media (min-width: 900px) { + #projects { + grid-template-columns: repeat(3, 1fr); + } + + .project-image { + height: 250px; + } +} \ No newline at end of file diff --git a/images/Lew Header icon.svg b/images/Lew Header icon.svg new file mode 100755 index 0000000..282f607 --- /dev/null +++ b/images/Lew Header icon.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/images/Lew Header.svg b/images/Lew Header.svg new file mode 100755 index 0000000..b4e5f4e --- /dev/null +++ b/images/Lew Header.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + Rapturate + \ No newline at end of file diff --git a/images/Lew's Images/Doubly Linked List.jpg b/images/Lew's Images/Doubly Linked List.jpg new file mode 100755 index 0000000..82ab27f Binary files /dev/null and b/images/Lew's Images/Doubly Linked List.jpg differ diff --git a/images/Lew's Images/Find Median Sorted Array.jpg b/images/Lew's Images/Find Median Sorted Array.jpg new file mode 100755 index 0000000..b1b1757 Binary files /dev/null and b/images/Lew's Images/Find Median Sorted Array.jpg differ diff --git a/images/Lew's Images/Graph Theory Project.jpg b/images/Lew's Images/Graph Theory Project.jpg new file mode 100755 index 0000000..63400b3 Binary files /dev/null and b/images/Lew's Images/Graph Theory Project.jpg differ diff --git a/images/Lew's Images/Lew.JPG b/images/Lew's Images/Lew.JPG new file mode 100755 index 0000000..040a0eb Binary files /dev/null and b/images/Lew's Images/Lew.JPG differ diff --git a/images/Lew's Images/Project 1jpg.jpg b/images/Lew's Images/Project 1jpg.jpg new file mode 100755 index 0000000..2440212 Binary files /dev/null and b/images/Lew's Images/Project 1jpg.jpg differ diff --git a/images/Lew's Images/ToDoList Project.jpg b/images/Lew's Images/ToDoList Project.jpg new file mode 100755 index 0000000..a18e4c2 Binary files /dev/null and b/images/Lew's Images/ToDoList Project.jpg differ diff --git a/images/facebook-icon.svg b/images/facebook-icon.svg new file mode 100755 index 0000000..2c6d1f7 --- /dev/null +++ b/images/facebook-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/generic project photo.jpg b/images/generic project photo.jpg new file mode 100755 index 0000000..2e6576d Binary files /dev/null and b/images/generic project photo.jpg differ diff --git a/images/generic_person.jfif b/images/generic_person.jfif new file mode 100755 index 0000000..fccf834 Binary files /dev/null and b/images/generic_person.jfif differ diff --git a/images/hero background.jpg b/images/hero background.jpg new file mode 100755 index 0000000..ca9de9d Binary files /dev/null and b/images/hero background.jpg differ diff --git a/images/hero.jpg b/images/hero.jpg new file mode 100755 index 0000000..a03c6ac Binary files /dev/null and b/images/hero.jpg differ diff --git a/images/hero_superhero_dark.jpg b/images/hero_superhero_dark.jpg new file mode 100755 index 0000000..7741ee8 Binary files /dev/null and b/images/hero_superhero_dark.jpg differ diff --git a/images/hero_superhero_light.jpg b/images/hero_superhero_light.jpg new file mode 100755 index 0000000..7423ba4 Binary files /dev/null and b/images/hero_superhero_light.jpg differ diff --git a/images/instagram-icon.svg b/images/instagram-icon.svg new file mode 100755 index 0000000..dda94e9 --- /dev/null +++ b/images/instagram-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/images/linkedin-icon.svg b/images/linkedin-icon.svg new file mode 100755 index 0000000..7893100 --- /dev/null +++ b/images/linkedin-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100755 index 0000000..9b1d928 --- /dev/null +++ b/index.html @@ -0,0 +1,135 @@ + + + + + + + + + + + + + Lewis's Information + + + +
+ +
+ +
+
+ profile picture +
+

Lewis Price

+

Welcome!

+

This site is still under construction but feel free to look around!

+ Get In Touch +
+
+ +
+

About Me

+

I have been interested in computers and programming from a very young age. I started with HTML in 2008. I quickly dove deeper into the world of programming where I began learning Java. At the time, Minecraft Beta was just starting to become popular in the world of gaming and I would practice Java by modding Minecraft Beta. Java taught me the ins and outs of the object-oriented world where I started to branch out into other languages to learn more about algorithms and systems. I am now comfortable writing programs in C, C++, Java, Python, HTML, CSS, and Golang. In addition, I am comfortable working with SQL databases, UML diagraming, and MongoDB.

+
+ +
+

Personal Projects

+
+
+ project picture +
+

Web Scraper/Discord Bot

+

- Golang

+
+
+
+ project picture +
+

To-Do List

+

- Java

+
+
+
+ project picture +
+

Binary Search Tree

+

- C++

+
+
+
+ project picture +
+

Graph Theory Project

+

- C++

+
+
+
+ project picture +
+

Median of Two Sorted Arrays

+

- Golang

+
+
+
+
+ +
+

Contact Me

+ + +
+
+ + + + + diff --git a/project.html b/project.html new file mode 100755 index 0000000..fb7c3ee --- /dev/null +++ b/project.html @@ -0,0 +1,106 @@ + + + + + + + + + + + + + Lew's Portfolio + + +
+ +
+ +
+
+ + +
+
+ Project 1 Image +
+
+

Web Scraper/Discord Bot

+

A web scraper and Discord bot that pulls codes to unlock special gear in Borderlands 4 when prompted by a user on Discord.

+
+
+ + +
+
+ Project 2 Image +
+
+

To-Do List

+

A modifiable To-Do list that allows for organization and scheduling based on priority, date, and category.

+
+
+ + +
+
+ Project 3 Image +
+
+

Binary Search Tree

+

A program that I wrote as a singly linked list then modified into a doubly linked list, and then modified into a binary search tree.

+
+
+ + +
+
+ Project 4 Image +
+
+

Graph Theory Project

+

An exploration of weighted graph theory using “Cities” and “Roads” as nodes and edges. Search functions include Breadth First, Depth First, and Dijkstra's.

+
+
+ + +
+
+ Project 5 Image +
+
+

Median of Two Sorted Arrays LeetCode Hard

+

Given two sorted arrays nums1 and nums2 of size m and n respectively, return the median of the two sorted arrays.

+
+
+ +
+ +
+ + + + \ No newline at end of file