mirror of
https://github.com/Arlind-dev/sulej.ch.git
synced 2025-12-05 19:17:20 +01:00
Compare commits
38 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fd8f94dcd6 | ||
|
|
19cb5f14e3 | ||
|
|
f29ecb118e | ||
|
|
742259c87e | ||
|
|
03d20eca98 | ||
|
|
215e7a759e | ||
|
|
667ea89249 | ||
|
|
4aaf96a643 | ||
|
|
9c742d9a90 | ||
|
|
afb550ac16 | ||
|
|
c38c3089e5 | ||
|
|
7a1a2aac21 | ||
|
|
05851c3e72 | ||
|
|
381f14d406 | ||
|
|
7c6e256b3b | ||
|
|
7d0fd2e5b1 | ||
|
|
c697b86375 | ||
|
|
a30832cd17 | ||
|
|
0a89355ceb | ||
|
|
8ad7a8da2e | ||
|
|
35181d2f6f | ||
|
|
8ce4f5b3c5 | ||
| e49ea7dd60 | |||
| 6bfb56264c | |||
| aae339d760 | |||
| d4fbd26596 | |||
| 982fd5f38e | |||
|
|
55318b13da | ||
|
|
da3fcdd87f | ||
|
|
62a0ecf8f1 | ||
|
|
854fa03ca0 | ||
|
|
9c157101c3 | ||
| 5153aeaa27 | |||
| d8901ec8e0 | |||
|
|
a21fbffc96 | ||
|
|
92a1e33c1e | ||
|
|
d6f5c0e9d3 | ||
| ae19a5ed99 |
6
.github/dependabot.yml
vendored
6
.github/dependabot.yml
vendored
@@ -14,3 +14,9 @@ updates:
|
||||
schedule:
|
||||
interval: "daily"
|
||||
open-pull-requests-limit: 10
|
||||
|
||||
- package-ecosystem: "docker"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
open-pull-requests-limit: 10
|
||||
|
||||
8
.github/workflows/main.yml
vendored
8
.github/workflows/main.yml
vendored
@@ -27,7 +27,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -47,7 +47,7 @@ jobs:
|
||||
|
||||
- name: Run semantic-release
|
||||
id: semantic
|
||||
uses: cycjimmy/semantic-release-action@v5
|
||||
uses: cycjimmy/semantic-release-action@v6
|
||||
with:
|
||||
extra_plugins: |
|
||||
@semantic-release/changelog
|
||||
@@ -75,7 +75,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
@@ -140,7 +140,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
## [1.1.0](https://github.com/Arlind-dev/sulej.ch/compare/v1.0.1...v1.1.0) (2025-10-28)
|
||||
|
||||
### Features
|
||||
|
||||
* **ui:** add new favicon ([6bfb562](https://github.com/Arlind-dev/sulej.ch/commit/6bfb56264c3752e35369ac167c0149f8a7ca75c6))
|
||||
|
||||
## [1.0.1](https://github.com/Arlind-dev/sulej.ch/compare/v1.0.0...v1.0.1) (2025-10-17)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
ARG BUILD_IMAGE=ghcr.io/arlind-dev/sulej.ch:build-latest
|
||||
FROM --platform=$BUILDPLATFORM ${BUILD_IMAGE} AS build
|
||||
|
||||
FROM nginx:alpine
|
||||
FROM nginx:1.29.3-alpine3.22
|
||||
|
||||
ARG BUILD_IMAGE
|
||||
|
||||
@@ -9,4 +9,4 @@ WORKDIR /usr/share/nginx/html
|
||||
COPY --from=build /output ./
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
@@ -1,8 +1,9 @@
|
||||
FROM node:alpine AS build
|
||||
FROM node:24.1.0-alpine3.20 AS build
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN npm install -g --force corepack && corepack enable && corepack prepare pnpm@latest --activate
|
||||
RUN npm install -g --force corepack \
|
||||
&& corepack enable
|
||||
|
||||
COPY package.json pnpm-lock.yaml ./
|
||||
RUN pnpm install --frozen-lockfile
|
||||
|
||||
1553
package-lock.json
generated
1553
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
17
package.json
17
package.json
@@ -1,25 +1,26 @@
|
||||
{
|
||||
"name": "sulej.ch",
|
||||
"version": "1.0.1",
|
||||
"version": "1.1.0",
|
||||
"packageManager": "pnpm@10.15.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"prepare": "svelte-kit sync",
|
||||
"dev": "vite dev",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"dev": "svelte-kit sync && vite dev",
|
||||
"build": "svelte-kit sync && vite build",
|
||||
"preview": "svelte-kit sync && vite preview",
|
||||
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
||||
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
|
||||
},
|
||||
"dependencies": {
|
||||
"svelte": "^5.40.1"
|
||||
"svelte": "^5.45.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@sveltejs/adapter-static": "^3.0.10",
|
||||
"@sveltejs/kit": "^2.47.0",
|
||||
"@sveltejs/kit": "^2.49.0",
|
||||
"@sveltejs/vite-plugin-svelte": "^6.2.1",
|
||||
"svelte-check": "^4.3.3",
|
||||
"@types/node": "^24.10.1",
|
||||
"svelte-check": "^4.3.4",
|
||||
"typescript": "^5.9.3",
|
||||
"vite": "^7.1.10"
|
||||
"vite": "^7.2.6"
|
||||
}
|
||||
}
|
||||
|
||||
550
pnpm-lock.yaml
generated
550
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
20
src/app.css
20
src/app.css
@@ -1,26 +1,10 @@
|
||||
@font-face {
|
||||
font-family: 'JetBrains Mono Nerd Font';
|
||||
src: url('/fonts/JetBrainsMonoNerdFont-Regular.ttf') format('truetype');
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'JetBrains Mono Nerd Font';
|
||||
src: url('/fonts/JetBrainsMonoNerdFont-Bold.ttf') format('truetype');
|
||||
font-weight: 700;
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
font-family: 'JetBrains Mono Nerd Font', 'JetBrains Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
||||
font-family: 'JetBrains Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
||||
}
|
||||
|
||||
:root {
|
||||
--font-mono: 'JetBrains Mono Nerd Font', 'JetBrains Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
||||
--font-mono: 'JetBrains Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
||||
}
|
||||
@@ -5,6 +5,9 @@
|
||||
<meta charset="utf-8" />
|
||||
<link id="fav" rel="icon" href="/favicon.ico" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&display=swap" rel="stylesheet">
|
||||
<meta name="description" content="sulej.ch">
|
||||
%sveltekit.head%
|
||||
</head>
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
<script lang="ts">
|
||||
import { site } from "./site.config";
|
||||
const mailto = `mailto:${site.contactEmail}`;
|
||||
</script>
|
||||
|
||||
<section>
|
||||
<div style="margin: 0.5rem 0;">Owner: Arlind Sulejmani</div>
|
||||
<div style="margin: 0.5rem 0;">Contact: <a href="mailto:arlind@sulej.ch">arlind@sulej.ch</a></div>
|
||||
<div style="margin: 0.5rem 0;">Owner: {site.ownerName}</div>
|
||||
<div style="margin: 0.5rem 0;">Contact: <a href={mailto}>{site.contactEmail}</a></div>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -1,15 +1,22 @@
|
||||
<script lang="ts">
|
||||
import type { VersionInfo } from "./version";
|
||||
import { site, currentYear } from "./site.config";
|
||||
export let versionInfo: VersionInfo;
|
||||
</script>
|
||||
|
||||
<footer>
|
||||
<div style="display: inline-flex; align-items: baseline; gap: 1rem; margin: 1rem 0 0;">
|
||||
<small>© 2025 sulej.ch</small>
|
||||
<small>© {currentYear} {site.domain}</small>
|
||||
<small>
|
||||
<a class="version-link" href="https://github.com/Arlind-dev/sulej.ch">
|
||||
{versionInfo.version} <span class="commit">({versionInfo.commit})</span>
|
||||
</a>
|
||||
{#if site.githubRepo}
|
||||
<a class="version-link" href={site.githubRepo}>
|
||||
{versionInfo.version} <span class="commit">({versionInfo.commit})</span>
|
||||
</a>
|
||||
{:else}
|
||||
<span class="version-link" aria-label="App version">
|
||||
{versionInfo.version} <span class="commit">({versionInfo.commit})</span>
|
||||
</span>
|
||||
{/if}
|
||||
</small>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
<script lang="ts">
|
||||
import { site } from "./site.config";
|
||||
const title = `About ${site.siteTitle}`;
|
||||
// Keep markup minimal and data-driven via config
|
||||
</script>
|
||||
|
||||
<header>
|
||||
<h1 style="margin: 0.5rem 0 1rem;">About sulej.ch</h1>
|
||||
<h1 style="margin: 0.5rem 0 1rem;">{title}</h1>
|
||||
</header>
|
||||
|
||||
17
src/lib/site.config.ts
Normal file
17
src/lib/site.config.ts
Normal file
@@ -0,0 +1,17 @@
|
||||
export type SiteConfig = {
|
||||
ownerName: string;
|
||||
contactEmail: string;
|
||||
domain: string; // e.g. "sulej.ch"
|
||||
siteTitle: string; // e.g. "sulej.ch"
|
||||
githubRepo?: string; // optional repo URL
|
||||
};
|
||||
|
||||
export const site: SiteConfig = {
|
||||
ownerName: "Arlind Sulejmani",
|
||||
contactEmail: "arlind@sulej.ch",
|
||||
domain: "sulej.ch",
|
||||
siteTitle: "sulej.ch",
|
||||
githubRepo: "https://github.com/Arlind-dev/sulej.ch"
|
||||
};
|
||||
|
||||
export const currentYear = new Date().getFullYear();
|
||||
@@ -1,11 +1,15 @@
|
||||
<script>
|
||||
<script lang="ts">
|
||||
import '../app.css';
|
||||
import { site } from '../lib/site.config';
|
||||
const title = site.siteTitle;
|
||||
const description = `${site.siteTitle} — ${site.domain}`;
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>sulej.ch</title>
|
||||
<title>{title}</title>
|
||||
<meta name="description" content={description} />
|
||||
</svelte:head>
|
||||
|
||||
<div style="min-height: 100vh; padding-top: clamp(1rem, 8vh, 6rem); display: flex; flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; gap: clamp(1rem, 1.5vw, 1.5rem); padding-left: clamp(0.5rem, 2vw, 1.5rem); padding-right: clamp(0.5rem, 2vw, 1.5rem); padding-bottom: clamp(0.5rem, 2vw, 1.5rem); font-size: clamp(1rem, 1rem + 1vw, 1.5rem);">
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user