65 lines
1.0 KiB
Markdown
65 lines
1.0 KiB
Markdown
# My Portfolio
|
|
|
|
Personal portfolio built with Next.js, React, TypeScript, and Tailwind CSS.
|
|
|
|
## What It Includes
|
|
|
|
- Hero section with typing intro
|
|
- Work experience and skills sections
|
|
- Uptime and activity panels
|
|
- Project and mini-project showcases
|
|
- Contact page and admin page
|
|
|
|
## Development
|
|
|
|
Install dependencies:
|
|
|
|
```bash
|
|
pnpm install
|
|
```
|
|
|
|
Run the development server:
|
|
|
|
```bash
|
|
pnpm dev
|
|
```
|
|
|
|
Open [http://localhost:3000](http://localhost:3000) in your browser.
|
|
|
|
## Production Build
|
|
|
|
Create a production build:
|
|
|
|
```bash
|
|
pnpm build
|
|
```
|
|
|
|
Start the production server locally:
|
|
|
|
```bash
|
|
pnpm start
|
|
```
|
|
|
|
## Docker
|
|
|
|
This project includes a standalone Docker image setup.
|
|
|
|
Build the image:
|
|
|
|
```bash
|
|
docker build -t my-portfolio:latest .
|
|
```
|
|
|
|
Run with Docker Compose:
|
|
|
|
```bash
|
|
docker compose up --build
|
|
```
|
|
|
|
The app will be available on port `6756` via `docker-compose.yml`.
|
|
|
|
## Notes
|
|
|
|
- `next.config.ts` uses `output: "standalone"` so the Docker image can ship a minimal runtime.
|
|
- The activity graph on the home page is loaded from a remote SVG source.
|