diff --git a/bun.lockb b/bun.lockb
index b2bf9fc..0f88f1c 100755
Binary files a/bun.lockb and b/bun.lockb differ
diff --git a/package.json b/package.json
index 35cbb2a..5d8b569 100644
--- a/package.json
+++ b/package.json
@@ -15,20 +15,21 @@
"devDependencies": {
"@sveltejs/adapter-auto": "^3.3.1",
"@sveltejs/adapter-static": "^3.0.8",
- "@sveltejs/kit": "^2.14.0",
+ "@sveltejs/kit": "^2.15.1",
"@sveltejs/vite-plugin-svelte": "^4.0.4",
"autoprefixer": "^10.4.20",
"bits-ui": "^1.0.0-next.74",
"clsx": "^2.1.1",
"install": "^0.13.0",
- "lucide-svelte": "^0.439.0",
+ "lucide-svelte": "^0.469.0",
"mode-watcher": "^0.5.0",
"prettier": "^3.4.2",
"prettier-plugin-svelte": "^3.3.2",
"prettier-plugin-tailwindcss": "^0.6.9",
- "svelte": "^5.15.0",
+ "simple-icons": "^14.0.0",
+ "svelte": "^5.16.0",
"svelte-check": "^4.1.1",
- "tailwind-merge": "^2.5.5",
+ "tailwind-merge": "^2.6.0",
"tailwind-variants": "^0.3.0",
"tailwindcss": "^3.4.17",
"tailwindcss-animate": "^1.0.7",
diff --git a/src/app.css b/src/app.css
index 5130460..fbd6e01 100644
--- a/src/app.css
+++ b/src/app.css
@@ -90,8 +90,11 @@
h3 {
@apply scroll-m-20 text-2xl font-semibold tracking-tight;
}
+ h4 {
+ @apply scroll-m-20 text-xl font-semibold tracking-tight;
+ }
p {
- @apply leading-7;
+ @apply text-base leading-7;
}
ul {
@apply list-inside list-disc leading-7;
diff --git a/src/lib/components/icons/BlueSky.svelte b/src/lib/components/icons/BlueSky.svelte
new file mode 100644
index 0000000..b9a5a63
--- /dev/null
+++ b/src/lib/components/icons/BlueSky.svelte
@@ -0,0 +1,28 @@
+
+
+
+
+
diff --git a/src/lib/components/icons/Discord.svelte b/src/lib/components/icons/Discord.svelte
new file mode 100644
index 0000000..8216b7e
--- /dev/null
+++ b/src/lib/components/icons/Discord.svelte
@@ -0,0 +1,28 @@
+
+
+
+
+
diff --git a/src/lib/components/icons/Instagram.svelte b/src/lib/components/icons/Instagram.svelte
new file mode 100644
index 0000000..7375eb0
--- /dev/null
+++ b/src/lib/components/icons/Instagram.svelte
@@ -0,0 +1,28 @@
+
+
+
+
+
diff --git a/src/lib/components/ui/accordion/accordion-content.svelte b/src/lib/components/ui/accordion/accordion-content.svelte
new file mode 100644
index 0000000..4a3b884
--- /dev/null
+++ b/src/lib/components/ui/accordion/accordion-content.svelte
@@ -0,0 +1,24 @@
+
+
+
+
+ {@render children?.()}
+
+
diff --git a/src/lib/components/ui/accordion/accordion-item.svelte b/src/lib/components/ui/accordion/accordion-item.svelte
new file mode 100644
index 0000000..640a466
--- /dev/null
+++ b/src/lib/components/ui/accordion/accordion-item.svelte
@@ -0,0 +1,12 @@
+
+
+
diff --git a/src/lib/components/ui/accordion/accordion-trigger.svelte b/src/lib/components/ui/accordion/accordion-trigger.svelte
new file mode 100644
index 0000000..6fb11b3
--- /dev/null
+++ b/src/lib/components/ui/accordion/accordion-trigger.svelte
@@ -0,0 +1,29 @@
+
+
+
+ svg]:rotate-180',
+ className
+ )}
+ {...restProps}
+ >
+ {@render children?.()}
+
+
+
diff --git a/src/lib/components/ui/accordion/index.ts b/src/lib/components/ui/accordion/index.ts
new file mode 100644
index 0000000..0734d4e
--- /dev/null
+++ b/src/lib/components/ui/accordion/index.ts
@@ -0,0 +1,17 @@
+import { Accordion as AccordionPrimitive } from 'bits-ui';
+import Content from './accordion-content.svelte';
+import Item from './accordion-item.svelte';
+import Trigger from './accordion-trigger.svelte';
+const Root = AccordionPrimitive.Root;
+
+export {
+ Root,
+ Content,
+ Item,
+ Trigger,
+ //
+ Root as Accordion,
+ Content as AccordionContent,
+ Item as AccordionItem,
+ Trigger as AccordionTrigger
+};
diff --git a/src/lib/index.ts b/src/lib/index.ts
index 06b9bff..4b48409 100644
--- a/src/lib/index.ts
+++ b/src/lib/index.ts
@@ -15,6 +15,19 @@ export const skills = [
{ name: 'Git & GitHub', icon: '🔧', url: 'https://github.com/' }
];
+import { Github, Mail } from 'lucide-svelte';
+import BlueSky from '$lib/components/icons/BlueSky.svelte';
+import Discord from '$lib/components/icons/Discord.svelte';
+import Instagram from '$lib/components/icons/Instagram.svelte';
+
+export const socials = [
+ { name: 'GitHub', url: 'https://github.com/nwrenger', icon: Github },
+ { name: 'BlueSky', url: 'https://bsky.app/profile/nilch.bsky.social', icon: BlueSky },
+ { name: 'Discord', url: 'https://discordlookup.com/user/567331495484719134', icon: Discord },
+ { name: 'Instagram', url: 'https://www.instagram.com/_nilch', icon: Instagram },
+ { name: 'Mails', url: 'mailto:nils@wrenger.net', icon: Mail }
+];
+
export const projects = [
{
title: 'console-utils-rs',
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index ffbb150..90af103 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -56,7 +56,7 @@
-
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index 26fecb0..48324b2 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -1,10 +1,11 @@
- portfolio
+ Portfolio
Rust enthusiast passionate about coding. I've worked on
various projects so far, so look for that under
Projects. Feel free to reach out for a chat about coding or
- anything else via email at
- nils@wrenger.net!
+ anything else!
-
-
Skills
-
- My focus is on UI development (websites, apps, and TUIs) and performance-driven projects like
- algorithms and databases. Therefore, my proficiency lies in Rust
and in
- Svelte
- (i.e., JavaScript
/ TypeScript
). But in the past, I have tried out
- other programming languages like Go
and
- Python
, or even a game engine like
- Godot
, so keep your eyes peeled! Or just check out the list below:
-
-
+
+
+ {/each}
+
+
+
-
-
Sponsor Me
-
- You can also sponsor me
- here on GitHub
- to support my work and to get some cool perks like early access to certain projects!
-
-
+
+ Sponsor Me?
+
+
+ You can also sponsor me
+
+ here on GitHub
+
+ to support my work and to get some cool perks like early access to certain projects!
+
+
+
+
diff --git a/src/routes/projects/+page.svelte b/src/routes/projects/+page.svelte
index 3bdc61d..52f8a12 100644
--- a/src/routes/projects/+page.svelte
+++ b/src/routes/projects/+page.svelte
@@ -26,7 +26,7 @@
{#each projects as { title, summary, picture, description, link, archived }}