https://github.com/lucasfth/portfolio
Portfolio for Lucas hosted at lucashanson.dk
https://github.com/lucasfth/portfolio
blog cms markdown photography portfolio-website
Last synced: 5 months ago
JSON representation
Portfolio for Lucas hosted at lucashanson.dk
- Host: GitHub
- URL: https://github.com/lucasfth/portfolio
- Owner: lucasfth
- License: apache-2.0
- Created: 2025-02-15T19:49:35.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-12-23T14:12:40.000Z (6 months ago)
- Last Synced: 2025-12-24T00:07:23.984Z (6 months ago)
- Topics: blog, cms, markdown, photography, portfolio-website
- Language: TypeScript
- Homepage: https://lucashanson.dk/
- Size: 31.7 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Portfolio Website
This project is a modern portfolio website built with [Next.js](https://nextjs.org/) and powered by the [Bun](https://bun.sh/) runtime.
## Reasoning
My previous portfolio needed to add html for each new page I wanted (you can see the old version [here](https://github.com/lucasfth/lucas-hanson)).
I wanted to make it easier and mimic a CMS.
Thus, I created this project, which mainly needs new markdown files to create new pages.
Though I still need to refer to the files in the code.
Since creating my old one I have also gotten more obsessed with photography, so I wanted to make a portfolio that could showcase my photos better.
You can visit the deployed version [here](https://lucashanson.dk).
## Tech Stack
- **Framework**: Next.js 15 (App Router)
- **Runtime**: Bun 1.3
- **Language**: TypeScript
- **Content**: Markdown files
- **Styling**: CSS
- **Deployment**: Vercel (recommended)
## Available Scripts
Run locally with reload:
`bun run dev`
Will be available at [http://localhost:3000](http://localhost:3000)
### Build and deploy (Vercel)
Local build:
```bash
bun run build
```
To deploy, push to your GitHub repository and connect it to Vercel. Vercel will run `npm run build` automatically.
## Want to use this project?
This project is open source and uses the Apache 2.0 license.
If you are unsure about what that entails, you can read the license [here](./LICENSE).
To get started with using this project, you need to:
1. Fork the repository
2. Clone the repository
3. `cd` into the repository
4. Install Bun (if not already installed): `curl -fsSL https://bun.sh/install | bash`
5. Run `bun install`
6. Run `bun run dev`
When you get to building and deploying, I have unfortunately hardcoded my own domain in a few places.
You must therefore need to change the domain in the following files:
- `package.json`
- `CNAME`
- `scripts/generateRSS.js`
There might be more places, but these are the primary ones.