mirror of
https://github.com/r-freeman/portfolio.git
synced 2024-11-25 03:05:40 +00:00
✨ My current portfolio website, built with TypeScript, Next.js, React, Tailwind CSS, self-hosted on Raspberry Pi 5.
https://ryanfreeman.dev
r-freeman
104e79b951
All checks were successful
Build And Publish / BuildAndPublish (push) Successful in 2m22s
|
||
---|---|---|
.gitea/workflows | ||
app | ||
components | ||
lib | ||
public | ||
styles | ||
types | ||
.dockerignore | ||
.env.example | ||
.env.gpg | ||
.eslintrc.json | ||
.gitignore | ||
decrypt_secrets.sh | ||
Dockerfile | ||
LICENSE | ||
mdx-components.tsx | ||
middleware.ts | ||
next.config.mjs | ||
package-lock.json | ||
package.json | ||
postcss.config.js | ||
README.md | ||
tailwind.config.ts | ||
tsconfig.json |
Portfolio
This website was built using TypeScript, React, Next.js and Tailwind CSS. It is designed to showcase my professional experience and skills, as well as provide information about me and my interests.
- Language: TypeScript
- Framework: Next.js
- Database: Supabase
- Deployment: Self-Hosted on Raspberry Pi 5
- Styling: Tailwind CSS
- Integrations: Spotify
Project structure
app/
- App router.app/api/
- API routes for article views and Spotify integrations.app/writing/
- Blog posts written in MDX format (Markdown in JSX).components/
- All the components of the website in tsx format.lib/
- Useful functions and scripts for connecting to external services and so on.public/
- Used for static files such as icons and images.styles/
- Contains the stylesheets for Tailwind and Prism.types/
- Types for various components in the project.
Running locally
This application requires node v16.14+.
git clone https://github.com/r-freeman/portfolio.git
cd portfolio/
npm i
npm run dev
Create a .env.local
file using .env.example
as a template.