feat: add Home, Project, and Work Index views with responsive design and SEO enhancements
Deploy Documentation / check-and-deploy (push) Successful in 20s

- Implemented HomeView with a timeline layout, featuring sections for hero, profile, projects, stack, and contact.
- Created ProjectView to display individual project details, including status, highlights, and tech stack.
- Developed WorkIndexView to list all projects with breadcrumb navigation.
- Enhanced TypeScript configuration for improved module resolution.
This commit is contained in:
LOUIS POTEVIN
2026-07-02 13:55:46 +02:00
parent 4946d2586c
commit 611af1ac67
50 changed files with 8134 additions and 2873 deletions
+27 -32
View File
@@ -1,37 +1,32 @@
/** Profile and links - single source of truth for the whole site. */
export const site = {
name: "Louis Potevin",
handle: "unkn0wn",
role: "Full-stack developer",
domain: "louis-potevin.dev",
location: "Limoges · Nouvelle-Aquitaine",
// Job Search
availability: "Permanent contract (CDI) - September 2026",
mobility: "Anywhere in France, on-site or remote",
// Contact
email: "contact@louis-potevin.dev",
// External links (icons via simple-icons-astro)
name: 'Louis Potevin',
email: 'contact@louis-potevin.dev',
location: { city: 'Limoges', region: 'Nouvelle-Aquitaine', country: 'FR' },
availability: { cdiFrom: '2026-09', freelance: true },
links: {
gitea: {
label: "Gitea",
url: "https://git.novaprojects.dev/unkn0wn",
icon: "gitea",
},
github: {
label: "GitHub",
url: "https://github.com/unkn0wndo3s",
icon: "github",
},
npm: {
label: "npm",
url: "https://www.npmjs.com/~unkn0wndo3s",
icon: "npm",
},
linkedin: {
label: "LinkedIn",
url: "https://www.linkedin.com/in/louis-potevin",
icon: "linkedin",
},
github: { label: 'GitHub', url: 'https://github.com/unkn0wndo3s' },
gitea: { label: 'Gitea', url: 'https://git.novaprojects.dev/unkn0wn' },
npm: { label: 'npm', url: 'https://www.npmjs.com/~unkn0wndo3s' },
linkedin: { label: 'LinkedIn', url: 'https://www.linkedin.com/in/louis-potevin' },
},
} as const;
export type SiteLink = { label: string; url: string; icon: string };
/** Everyday tools, shown on the home page. `icon` maps to simple-icons-astro names. */
export const stack = [
{ name: 'Astro', icon: 'Astro' },
{ name: 'Vue.js', icon: 'Vuedotjs' },
{ name: 'TypeScript', icon: 'Typescript' },
{ name: 'JavaScript', icon: 'Javascript' },
{ name: 'Sass', icon: 'Sass' },
{ name: 'Node.js', icon: 'Nodedotjs' },
{ name: 'PostgreSQL', icon: 'Postgresql' },
{ name: 'Docker', icon: 'Docker' },
{ name: 'Linux', icon: 'Linux' },
{ name: 'Cloudflare', icon: 'Cloudflare' },
{ name: 'Gitea CI/CD', icon: 'Gitea' },
{ name: 'Rust', icon: 'Rust' },
{ name: 'Python', icon: 'Python' },
{ name: 'Git', icon: 'Git' },
{ name: 'Figma', icon: 'Figma' },
] as const;