76 lines
1.5 KiB
Markdown
76 lines
1.5 KiB
Markdown
# FrauJulian's Portfolio Website
|
|
|
|
## Preview
|
|
|
|
Visit the live website at [fraujulian.xyz](https://fraujulian.xyz/).
|
|
|
|
## Technology
|
|
|
|
- Angular 22
|
|
- TypeScript
|
|
- SCSS
|
|
- Vitest for tests
|
|
|
|
## Features
|
|
|
|
- English and German language options (`?lang=de` selects German)
|
|
- About, work, and project portfolio
|
|
- Contact links
|
|
- Imprint and privacy information
|
|
- Interactive portrait highlights
|
|
|
|
## Project Architecture
|
|
|
|
- `src/app/home` — portfolio landing page
|
|
- `src/app/imprint` — imprint and privacy page
|
|
- `src/app/footer` — site footer
|
|
- `src/app/shared` — reusable UI components
|
|
- `src/app/services` — language and preference services
|
|
- `src/languages` — English and German content
|
|
- `scripts` — asset generation, versioning, and static file tools
|
|
|
|
## Setup
|
|
|
|
Requirements: Node.js 24.15 or newer and npm 11.12 or newer.
|
|
|
|
### Development
|
|
|
|
```bash
|
|
npm ci
|
|
npm run dev
|
|
```
|
|
|
|
The development server generates required static assets and runs the site at
|
|
`http://localhost:4200`.
|
|
|
|
### Production
|
|
|
|
```bash
|
|
npm run build
|
|
npm start
|
|
```
|
|
|
|
The build writes the static site to `dist/browser`. The static server serves the
|
|
built site at `http://localhost:3000`.
|
|
|
|
## Tests
|
|
|
|
```bash
|
|
npm run test
|
|
```
|
|
|
|
This generates assets and runs the Vitest tests in jsdom.
|
|
|
|
## Docs
|
|
|
|
- [Nginx Proxy Manager deployment notes](npm.md)
|
|
|
|
## Guidelines
|
|
|
|
Run `npm run check` before submitting changes. See [AGENTS.md](AGENTS.md) for
|
|
project conventions.
|
|
|
|
## LICENSE
|
|
|
|
Licensed under the [GNU Affero General Public License v3.0](LICENSE).
|