Skip to content

Commit

Permalink
feat: add dark theme
Browse files Browse the repository at this point in the history
  • Loading branch information
rherwig committed Nov 7, 2023
1 parent dc0e889 commit 38e2b7b
Show file tree
Hide file tree
Showing 99 changed files with 3,985 additions and 810 deletions.
2 changes: 2 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
strict-peer-dependencies=false
auto-install-peers=true
ignore-workspace-root-check=true
save-exact=true
4 changes: 4 additions & 0 deletions apps/website/.eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
module.exports = {
extends: ['@hrwg/eslint-config'],
plugins: ['qwik'],
};
20 changes: 20 additions & 0 deletions apps/website/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FROM node:20-alpine AS node-pnpm

RUN npm i -g pnpm

FROM node-pnpm AS hrwg-base

ARG ORIGIN
ENV ORIGIN ${ORIGIN}

WORKDIR /app
EXPOSE 4200

RUN mkdir -p var/cache var/logs var/data
COPY ./dist/apps/website .
COPY ./package.json .
COPY ./pnpm-lock.yaml .

RUN pnpm install --production --frozen-lockfile --ignore-scripts

CMD ["node", "server/entry.express.mjs"]
16 changes: 16 additions & 0 deletions apps/website/adapters/express/vite.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { nodeServerAdapter } from '@builder.io/qwik-city/adapters/node-server/vite';
import { extendConfig } from '@builder.io/qwik-city/vite';

import baseConfig from '../../vite.config';

export default extendConfig(baseConfig, () => {
return {
build: {
ssr: true,
rollupOptions: {
input: ['apps/website/src/entry.express.tsx', '@qwik-city-plan'],
},
},
plugins: [nodeServerAdapter({ name: 'express' })],
};
});
27 changes: 0 additions & 27 deletions apps/website/eslint.config.js

This file was deleted.

7 changes: 7 additions & 0 deletions apps/website/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"name": "@hrwg/website",
"private": true,
"scripts": {
"qwik": "qwik"
}
}
18 changes: 15 additions & 3 deletions apps/website/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
"outputPath": "dist/apps/website"
},
"configurations": {
"preview": {}
"preview": {},
"production": {}
}
},
"build.client": {
Expand All @@ -25,21 +26,32 @@
},
"build.ssr": {
"executor": "@nx/vite:build",
"defaultConfiguration": "preview",
"defaultConfiguration": "production",
"options": {
"outputPath": "dist/apps/website"
},
"configurations": {
"preview": {
"ssr": "src/entry.preview.tsx",
"mode": "production"
},
"production": {
"configFile": "apps/website/adapters/express/vite.config.ts",
"mode": "production"
}
}
},
"locales.extract": {
"executor": "nx:run-commands",
"options": {
"command": "qwik-speak-extract --supportedLangs=de-DE,en-US --assetsPath=src/locales",
"cwd": "apps/website"
}
},
"preview": {
"executor": "@nx/vite:preview-server",
"options": {
"buildTarget": "website:build",
"buildTarget": "website:build:preview",
"port": 4300
}
},
Expand Down
Binary file added apps/website/public/android-chrome-192x192.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/android-chrome-512x512.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/apple-touch-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions apps/website/public/browserconfig.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="/mstile-150x150.png"/>
<TileColor>#7e22ce</TileColor>
</tile>
</msapplication>
</browserconfig>
Binary file added apps/website/public/favicon-16x16.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon.ico
Binary file not shown.
1 change: 0 additions & 1 deletion apps/website/public/favicon.svg

This file was deleted.

1 change: 1 addition & 0 deletions apps/website/public/keys/rherwig.pub
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN30bd6C7jHqmu7l39eQ+oIAxDlk93t3T1fpqgUB/6H5 [email protected]
34 changes: 27 additions & 7 deletions apps/website/public/manifest.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,29 @@
{
"$schema": "https://json.schemastore.org/web-manifest-combined.json",
"name": "qwik-project-name",
"short_name": "Welcome to Qwik",
"start_url": ".",
"display": "standalone",
"background_color": "#fff",
"description": "A Qwik project app."
"$schema": "https://json.schemastore.org/web-manifest-combined.json",
"name": "hrwg",
"short_name": "hrwg",
"start_url": ".",
"icons": [
{
"src": "/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
},
{
"src": "/android-chrome-512x512-maskable.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
],
"theme_color": "#ffffff",
"background_color": "#ffffff",
"orientation": "portrait",
"display": "standalone",
"description": "Personal website of Rico Herwig"
}
Binary file added apps/website/public/mstile-150x150.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion apps/website/public/robots.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
User-agent: *
Disallow:
Allow: /
20 changes: 20 additions & 0 deletions apps/website/public/safari-pinned-tab.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file added apps/website/src/assets/images/profile/rico.webp
Binary file not shown.
3 changes: 3 additions & 0 deletions apps/website/src/assets/scss/_tailwind.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
11 changes: 11 additions & 0 deletions apps/website/src/assets/scss/_typography.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
@use '@fontsource-variable/alegreya';
@use '@fontsource-variable/source-sans-3';

h1,
h2,
h3,
h4,
h5,
h6 {
@apply font-serif font-bold;
}
9 changes: 9 additions & 0 deletions apps/website/src/assets/scss/main.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
@use './tailwind';
@use './typography';

html,
body {
@apply w-full h-full;
@apply font-sans antialiased;
@apply bg-background-dark text-primary-50;
}
58 changes: 58 additions & 0 deletions apps/website/src/components/cv/the-address.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import { component$ } from '@builder.io/qwik';
import { useTranslate } from 'qwik-speak';

export default component$(() => {
const t = useTranslate();
const isPrivateMode = true;

return (
<div class="grid w-full grid-cols-2 text-left leading-[3rem] print:max-w-xs md:leading-loose print:text-black">
<div class="pr-10 font-bold uppercase">{t('experience.address.address')}</div>

{!isPrivateMode ? (
<div>
<div>Rosenberger Str. 9</div>
<div>28790 Schwanewede</div>
<div>{t('experience.address.country')}</div>
</div>
) : (
<div>{t('experience.restricted')}</div>
)}

<div class="pr-10 font-bold uppercase">{t('experience.address.phone')}</div>

{!isPrivateMode ? (
<div>
<a
href="#"
class="block underline transition-all hover:translate-x-1"
>
+49 (0) 151 / 12 297 144
</a>
</div>
) : (
<div>{t('experience.restricted')}</div>
)}

<div class="pr-10 font-bold uppercase">{t('experience.address.mail')}</div>
<div>
<a
href="mailto:[email protected]"
class="block underline transition-all hover:translate-x-1"
>
[email protected]
</a>
</div>

<div class="pr-10 font-bold uppercase">{t('experience.address.website')}</div>
<div>
<a
href="https://hrwg.de"
class="block underline transition-all hover:translate-x-1"
>
hrwg.de
</a>
</div>
</div>
);
});
47 changes: 47 additions & 0 deletions apps/website/src/components/cv/the-facts.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
import { component$ } from '@builder.io/qwik';
import { useTranslate } from 'qwik-speak';

import TheAddress from './the-address';
import TheSocialLinks from './the-social-links';
import TheSkills from './the-skills';
import TheLanguages from './the-languages';

export default component$(() => {
const t = useTranslate();

return (
<div class="mt-20 print:text-center">
<section class="print:flex flex-col items-center mb-20">
<h2 class="text-2xl leading-6 font-bold uppercase mb-8">
{t('experience.facts.info')}
</h2>

<TheAddress />
</section>

<section class="print:flex flex-col items-center mb-20 print:break-after-page">
<h2 class="text-2xl leading-6 font-bold uppercase mb-8">
{t('experience.facts.social')}
</h2>

<TheSocialLinks />
</section>

<section class="print:flex flex-col items-center mb-20 print:mt-20">
<h2 class="text-2xl leading-6 font-bold uppercase mb-8">
{t('experience.facts.skills')}
</h2>

<TheSkills />
</section>

<section class="print:flex flex-col items-center print:break-after-page">
<h2 class="text-2xl leading-6 font-bold uppercase mb-8">
{t('experience.facts.languages')}
</h2>

<TheLanguages />
</section>
</div>
);
});
27 changes: 27 additions & 0 deletions apps/website/src/components/cv/the-hero-unit.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { component$ } from '@builder.io/qwik';

import ProfileImage from '../../assets/images/profile/rico.webp?jsx';

export default component$(() => {
return (
<section class="mb-6 flex print:text-black">
<div class="flex flex-1 flex-col items-center justify-center">
<div class="flex items-center justify-center">
<div class="mb-8 flex aspect-square w-[220px] items-center justify-center rounded-full bg-gradient-to-b from-accent-main to-accent-400">
<ProfileImage
alt="Bild von Rico Herwig"
placeholder="blur"
class="aspect-square w-[200px] rounded-full object-cover"
/>
</div>
</div>

<h1 class={`text-center text-6xl font-bold uppercase`}>Rico Herwig</h1>

<h2 class={`text-center text-2xl text-accent-main font-sans`}>
Frontend Developer
</h2>
</div>
</section>
);
});
Loading

0 comments on commit 38e2b7b

Please sign in to comment.