# Portfolio Website v2

## Setup

### Domain Records

- Create one A record

### Reverse Proxy

- It doesn't matter what reverse proxy you use (Nginx, Apache, Traefik, Caddy, etc)
- Point the record to the web port (default: 3000)

### [Docker Compose](./docker-compose.yml)

```yaml
services:
  portfolio:
    container_name: portfolio
    image: git.altaiar.dev/ahmed/portfolio-2:latest
    network_mode: bridge
    restart: unless-stopped
    volumes:
      - config:/app/public/config
      - images:/app/public/images
    ports:
      - 3000:3000

volumes:
  config: # Place config.json and resume.pdf here
  images: # Place images here
```

(Optional) Replace volumes with bind mounts according to your setup

## Configuration

- The only required field is `name`, a two string array for first and last
- See [instrumentation.ts](./src/instrumentation.ts#L18-L89) or [config.d.ts](./src/types/config.d.ts) for possible values
- Validation is performed on container start, and will exit if anything is invalid
