Compare commits
2 Commits
83b2b9ac68
...
14c65bda05
Author | SHA1 | Date | |
---|---|---|---|
14c65bda05 | |||
16104d12ae |
37
TODO.md
37
TODO.md
@ -1,39 +1,40 @@
|
||||
# TODO
|
||||
|
||||
## Code
|
||||
- [ ] day.js for dates
|
||||
- [ ] Nix Shell
|
||||
- [ ] License
|
||||
|
||||
## SSE
|
||||
- [x] Correct Sitemap.xml
|
||||
- [x] Correct robots.txt
|
||||
- [x] Correct security.txt
|
||||
## Code
|
||||
- [ ] Nix Shell
|
||||
- [ ] Analytics
|
||||
- [ ] Organize code better
|
||||
|
||||
## SEO
|
||||
- [ ] Meta tags on each page
|
||||
|
||||
## Layout
|
||||
- [x] Show current page
|
||||
- [x] Correct bg colour on entire page
|
||||
- [x] Hamburger menu on mobile
|
||||
- [ ] Dark mode toggle
|
||||
- [ ] Navigate using pathname / breadcrumbs
|
||||
|
||||
## Accessibility
|
||||
- [x] Fix colours on buttons
|
||||
- [x] Correct contrast
|
||||
- [ ] All interactable elements have labels
|
||||
- [x] Colour links, also in MDX posts
|
||||
|
||||
## I18N
|
||||
- [ ] Markdown for text
|
||||
|
||||
## ~/
|
||||
- [ ] About me description
|
||||
- [x] Latest projects
|
||||
- [x] Non-cat image
|
||||
- [ ] Limit latest projects to N (5?)
|
||||
|
||||
## ~/about
|
||||
- [ ] About me
|
||||
|
||||
## ~/links
|
||||
- [ ] Add Bluesky link
|
||||
- [ ] Add MusicBrainz link
|
||||
- [ ] Add Archidekt link
|
||||
|
||||
## ~/projects
|
||||
- [ ] Translate projects
|
||||
- [ ] Bachelor project
|
||||
- [ ] Sparebank1 ActualBudget service
|
||||
- [ ] More about this website
|
||||
- [ ] RSS Feed
|
||||
|
||||
## ~/slashes
|
||||
- [ ] List of all slashes
|
||||
|
@ -1,5 +1,6 @@
|
||||
{
|
||||
"$schema": "https://inlang.com/schema/inlang-message-format",
|
||||
"archidektMessage": "My MTG cards and decks",
|
||||
"hiIm": "Hi, I'm",
|
||||
"position": "Software Engineer",
|
||||
"aboutMe": "Dedicated developer currently working at Capgemini Bergen.",
|
||||
|
@ -1,5 +1,6 @@
|
||||
{
|
||||
"$schema": "https://inlang.com/schema/inlang-message-format",
|
||||
"archidektMessage": "Mine MTG kort og decks",
|
||||
"hiIm": "Hei, jeg er",
|
||||
"position": "Programvareutvikler",
|
||||
"aboutMe": "Engasjert utvikler som for tiden jobber hos Capgemini Bergen.",
|
||||
|
@ -26,6 +26,7 @@
|
||||
"@tailwindcss/vite": "^4.0.9",
|
||||
"astro": "^5.3.1",
|
||||
"astro-icon": "^1.1.5",
|
||||
"dayjs": "^1.11.13",
|
||||
"sharp": "^0.33.5",
|
||||
"svelte": "^5.20.4",
|
||||
"tailwindcss": "^4.0.9",
|
||||
|
8
pnpm-lock.yaml
generated
8
pnpm-lock.yaml
generated
@ -44,6 +44,9 @@ importers:
|
||||
astro-icon:
|
||||
specifier: ^1.1.5
|
||||
version: 1.1.5
|
||||
dayjs:
|
||||
specifier: ^1.11.13
|
||||
version: 1.11.13
|
||||
sharp:
|
||||
specifier: ^0.33.5
|
||||
version: 0.33.5
|
||||
@ -1444,6 +1447,9 @@ packages:
|
||||
daisyui@5.0.0-beta.8:
|
||||
resolution: {integrity: sha512-jSokqm5i+Pv1jG80wliNzMHjmcF+iMx5xRUpk0/QExVoVNyQNWeCsaWJQubPvUq7bt9nzSsQTR2uIZBoyIIoaA==}
|
||||
|
||||
dayjs@1.11.13:
|
||||
resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
|
||||
|
||||
debug@4.3.7:
|
||||
resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
|
||||
engines: {node: '>=6.0'}
|
||||
@ -4782,6 +4788,8 @@ snapshots:
|
||||
|
||||
daisyui@5.0.0-beta.8: {}
|
||||
|
||||
dayjs@1.11.13: {}
|
||||
|
||||
debug@4.3.7:
|
||||
dependencies:
|
||||
ms: 2.1.3
|
||||
|
@ -13,6 +13,15 @@ export interface MyLink {
|
||||
}
|
||||
|
||||
export default [
|
||||
{
|
||||
title: "Archidekt",
|
||||
url: "https://archidekt.com/u/Emberal",
|
||||
message: m.archidektMessage(),
|
||||
},
|
||||
{
|
||||
title: "Bluesky",
|
||||
url: "https://bsky.app/profile/martials.no",
|
||||
},
|
||||
{
|
||||
title: "Codeberg",
|
||||
url: "https://codeberg.org/martials",
|
||||
@ -55,6 +64,10 @@ export default [
|
||||
alt: "Mastodon icon",
|
||||
},
|
||||
},
|
||||
{
|
||||
title: "ListenBrainz",
|
||||
url: "https://listenbrainz.org/user/emberal/",
|
||||
},
|
||||
{
|
||||
title: "Pixelfed",
|
||||
url: "https://pixelfed.social/i/web/profile/261454857934868480",
|
||||
|
@ -1,11 +1,12 @@
|
||||
---
|
||||
import * as m from "@/paraglide/messages"
|
||||
import Layout from "@/layouts/Layout.astro"
|
||||
import BadgeList from "@/components/badge/BadgeList.astro"
|
||||
import GiteaLink from "@/components/links/GiteaLink.astro"
|
||||
import { languageTag } from "@/paraglide/runtime"
|
||||
import { getEntry, render } from "astro:content"
|
||||
import { Image } from "astro:assets"
|
||||
import * as m from "@/paraglide/messages"
|
||||
import dayjs from "dayjs"
|
||||
import "@/styles/global.css"
|
||||
|
||||
interface Props {
|
||||
@ -26,9 +27,12 @@ const {
|
||||
createdAt,
|
||||
updatedAt,
|
||||
} = entry!.data
|
||||
|
||||
function localeDateString(isoString: string): string {
|
||||
return dayjs(isoString).locale(languageTag()).format("YYYY-MM-DD")
|
||||
}
|
||||
---
|
||||
|
||||
<!--TODO day.js / Temporal API for dates?-->
|
||||
<Layout title={title} class="mx-auto max-w-[750px]">
|
||||
<div class="flex justify-between my-2">
|
||||
<div>
|
||||
@ -37,10 +41,10 @@ const {
|
||||
</div>
|
||||
<div class="flex flex-col items-end">
|
||||
<p>
|
||||
{m.createdAt()}: {new Date(createdAt).toLocaleDateString(languageTag())}
|
||||
{m.createdAt()}: {localeDateString(createdAt)}
|
||||
</p>
|
||||
<p>
|
||||
{m.updatedAt()}: {new Date(updatedAt).toLocaleDateString(languageTag())}
|
||||
{m.updatedAt()}: {localeDateString(updatedAt)}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user