92 lines
1.8 KiB
Markdown
92 lines
1.8 KiB
Markdown
# Jody Holt | Developer Portfolio
|
|
|
|
This is the source code for my personal portfolio.
|
|
Created using React//Tailwind//TypeScript
|
|
|
|
---
|
|
|
|
## Overview
|
|
|
|
This site demonstrates my personality, skills, and presents the tone I provide through all my collaborative/business endeavors.
|
|
|
|
**STACK**
|
|
|
|
- SPA with React (functional components, hooks)
|
|
- TailwindCSS (custom tokens and theme system)
|
|
- Theme Engine (5 themes with automated color adaption per user preference )
|
|
- IntersectionObserver (based scroll nav)
|
|
- Modular component layout
|
|
|
|
---
|
|
|
|
## Project structure
|
|
|
|
```bash
|
|
src/
|
|
|-assets/ # Images
|
|
|-components/ #Reusable UI components
|
|
|-hooks/ #Custom React Hooks
|
|
|-styles/ #Tailwind + custom theme CSS
|
|
|App.tsx
|
|
|index.css
|
|
|
|
```
|
|
|
|
---
|
|
|
|
## Theme System
|
|
|
|
### within index:
|
|
#### 5 unique themes are laid out by:
|
|
- color-bg
|
|
- color-primary
|
|
- color-text
|
|
- color-secondary
|
|
- color-tertiary
|
|
|
|
These themes are applied via html[data-theme="x"] and are used across the site for all gradients, tints, accents, etc.
|
|
|
|
|
|
|
|
|
|
## To run on local client:
|
|
```bash
|
|
npm i
|
|
|
|
npm run dev
|
|
|
|
## Local: http://localhost:5173/ (control + click local host url)
|
|
|
|
```
|
|
|
|
## Contact Form Setup
|
|
|
|
### Frontend env
|
|
Create `.env` in the project root:
|
|
|
|
```bash
|
|
VITE_CONTACT_API_URL=/api/contact
|
|
VITE_TURNSTILE_SITE_KEY=your_turnstile_site_key
|
|
```
|
|
|
|
### Backend API
|
|
The contact backend lives in `contact-api/`.
|
|
|
|
```bash
|
|
cd contact-api
|
|
npm i
|
|
npm run dev
|
|
```
|
|
|
|
Create `contact-api/.env` from `contact-api/.env.example` and set your real Turnstile + SMTP credentials.
|
|
|
|
### VPS service files
|
|
- systemd unit template: `ops/jody-contact-api.service`
|
|
- Nginx reverse proxy snippet: `ops/nginx-contact-api.conf`
|
|
|
|
## Author
|
|
|
|
### Jody Holt
|
|
### Frontend Developer • Passion Pioneer
|
|
#### [GitHub](https://github.com/Ricearoni1245) • [LinkedIn](https://www.linkedin.com/in/jody-holt-9b19b0256)
|