{ "nav": { "home": "Home", "about": "About", "projects": "Projects", "contact": "Contact" }, "common": { "back": "Back", "backToHome": "Back to Home", "backToProjects": "Back to Projects", "viewAllProjects": "View All Projects", "loading": "Loading..." }, "consent": { "title": "Privacy settings", "description": "We use optional services (analytics and chat) to improve the site. You can change your choice anytime.", "essential": "Essential", "analytics": "Analytics", "chat": "Chatbot", "alwaysOn": "Always on", "acceptAll": "Accept all", "acceptSelected": "Accept selected", "rejectAll": "Reject all", "hide": "Hide" }, "home": { "hero": { "kicker": "Dennis Konkol — Osnabrück, Germany", "claim": "I self-host half my life. The rest I code.", "intro": "IT admin in Osnabrück and master's student. From February 2027 I look after Microsoft 365 full-time, until then my master's thesis.", "countdown": "{days, plural, one {# day to go.} other {# days to go.}}", "ctaWork": "See projects", "ctaContact": "Write me" }, "tisch": { "title": "The desk.", "allProjects": "All projects", "hintBoard": "Everything here can be touched. Throw it, stack it, tap for details.", "hintDeck": "Swipe the cards aside, tap for details.", "tidy": "Tidy up", "mess": "Mess it up", "flip": "tap for details", "details": "Open project", "prev": "Previous card", "next": "Next card", "ticketTitle": "Master's thesis · due 15 Feb 2027", "ticketDays": "days until submission", "ticketJob": "from 02/2027: M365 administrator", "ticketStub": "Now", "serverTitle": "What I run", "servers": { "ingress": { "name": "netcup · front door", "detail": "Traefik, Dokploy, this site" }, "mail": { "name": "IONOS · mail and photos", "detail": "mailcow, Immich" }, "home": { "name": "Home · Raspberry Pi", "detail": "Home Assistant, Paperless" } }, "serverNote": "Guarded by CrowdSec, daily backups with restic.", "bookLabel": "Reading now", "bookFallback": "To the library", "photoCaption": "That's me.", "chatCard": "Ask me something.", "chatCardHint": "Open AI chat", "sticker": "Runs on my own servers." }, "windows": { "close": "Close", "minimize": "Minimize", "openWindows": "Open windows", "projectPage": "Project page", "source": "Source", "live": "See it live", "stack": "Stack", "year": "Year", "now": { "title": "now.txt · October 2026", "days": "days until my master's thesis is due", "study": { "label": "Study", "text": "Federated reinforcement learning for a logistics hub, due mid-February 2027" }, "work": { "label": "Work", "text": "IT at a company in Osnabrück, from February 2027 full-time as Microsoft 365 administrator" }, "side": { "label": "On the side", "text": "nightly, an app for thoughts between 2 and 5 a.m." } }, "server": { "title": "servers · all green", "headline": "Three machines, one VPN." }, "read": { "title": "reading · from Hardcover", "progress": "read", "empty": "No book on the nightstand right now.", "library": "To the library" }, "about": { "title": "about me", "p1": "I grew up in Lingen and now live in Osnabrück. It all started with a Raspberry Pi and the question whether I could store my photos myself. That turned into three servers.", "p2": "When I'm not at the computer, I'm at Body Attack on Tuesdays, on the slopes in winter, or playing board games with friends.", "facts": { "laptop": { "label": "Work machine", "value": "MacBook Pro M4 Pro" }, "pc": { "label": "For games", "value": "PC with RTX 3080" }, "study": { "label": "Study", "value": "Master's in computer science" }, "languages": { "label": "Languages", "value": "German, English" } } }, "chat": { "title": "ask me · AI", "welcome": "Hi! Ask me anything about Dennis, his projects or his setup.", "consent": "The chat runs through an AI service in my n8n. Your messages are processed and briefly stored for that. Nothing is sent until you agree.", "allow": "Allow chat", "placeholder": "Your question …", "send": "Send", "error": "No connection right now. Try again in a moment.", "thinking": "Writing a reply", "note": "Answers come from an AI and can be wrong." }, "contact": { "title": "contact", "body": "For projects, questions about my setup or just because. I usually reply within a day or two.", "copy": "Copy address", "copied": "Copied", "form": "To the form" } }, "contact": { "title": "Write me.", "subtitle": "For projects, questions about my setup or just because. I usually reply within a day or two.", "getInTouch": "Get In Touch", "getInTouchBody": "I'm always available to discuss new opportunities, interesting projects, or simply chat about technology and innovation.", "info": { "email": "Email", "location": "Location", "locationValue": "Osnabrück, Germany" }, "form": { "title": "Send Message", "sending": "Sending message…", "send": "Send Message", "labels": { "name": "Name", "email": "Email", "subject": "Subject", "message": "Message", "requiredMarker": "*" }, "placeholders": { "name": "Your name", "email": "your@email.com", "subject": "What's this about?", "message": "Tell me more about your project or question…" }, "errors": { "nameRequired": "Name is required", "nameMin": "Name must be at least 2 characters", "emailRequired": "Email is required", "emailInvalid": "Please enter a valid email address", "subjectRequired": "Subject is required", "subjectMin": "Subject must be at least 3 characters", "messageRequired": "Message is required", "messageMin": "Message must be at least 10 characters" }, "characters": "{count} characters" } } }, "projects": { "shared": { "featured": "Featured" }, "list": { "title": "My Projects", "intro": "Explore my portfolio of projects, from web applications to mobile apps. Each project showcases different skills and technologies.", "searchPlaceholder": "Search projects...", "all": "All", "noResults": "No projects found matching your criteria.", "clearFilters": "Clear filters" }, "detail": { "links": "Project Links", "liveDemo": "Live Demo", "liveNotAvailable": "Live demo not available", "viewSource": "View Source", "techStack": "Tech Stack" } }, "footer": { "role": "IT & self-hosting", "madeIn": "self-hosted in Germany", "legalNotice": "Legal notice", "privacyPolicy": "Privacy policy", "privacySettings": "Privacy settings", "privacySettingsTitle": "Show privacy settings banner again", "builtWith": "Built with Next.js and Directus, running on my own servers.", "aiDisclaimer": "Some content on this site may be AI-assisted.", "backToTop": "Back to top", "systemsOnline": "Systems Online" }, "notFound": { "title": "Page not Found", "description": "The content you are looking for has been moved, deleted, or never existed.", "returnHome": "Return Home", "goBack": "Go Back", "exploreWork": "Explore Work", "exploreWorkDesc": "Maybe what you need is in my project archive?", "viewProjects": "View Projects", "errorReport": "Error Report" }, "books": { "title": "Library", "subtitle": "Books that shaped my mindset and expanded my horizons.", "backHome": "Back Home", "empty": "No books yet." } }