update contact information, adjust layout styles, and add data to skills/projects sections
This commit is contained in:
@@ -5,8 +5,12 @@
|
|||||||
|
|
||||||
.content {
|
.content {
|
||||||
max-width: 1500px;
|
max-width: 1500px;
|
||||||
|
min-height: 100svh;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 1.5rem 1.25rem 4rem;
|
padding: 1.5rem 1.25rem 3rem;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sidebar {
|
.sidebar {
|
||||||
@@ -90,7 +94,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.site-footer {
|
.site-footer {
|
||||||
margin-top: 2rem;
|
margin-top: auto;
|
||||||
|
padding-top: 2rem;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: #8b949e;
|
color: #8b949e;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<main class="content">
|
<main class="content">
|
||||||
<router-outlet></router-outlet>
|
<router-outlet></router-outlet>
|
||||||
<footer class="site-footer">
|
<footer class="site-footer">
|
||||||
<p>(c) {{ currentYear }} Tim Kainz - Fullstack Developer (Angular - C# - Flutter)</p>
|
<p>(c) {{ currentYear }} Tim Kainz | +43 677 62678219</p>
|
||||||
</footer>
|
</footer>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ export class Contact {
|
|||||||
readonly channels: Channel[] = [
|
readonly channels: Channel[] = [
|
||||||
{
|
{
|
||||||
label: 'Email',
|
label: 'Email',
|
||||||
value: 'alex.carter.dev@mail.com',
|
value: 'tikaiz@gmx.at',
|
||||||
href: 'mailto:alex.carter.dev@mail.com',
|
href: 'mailto:tikaiz@gmx.at',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Location',
|
label: 'Location',
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
<div class="page-wrap">
|
<div class="page-wrap">
|
||||||
<header class="hero section" id="top">
|
<header class="hero section" id="top">
|
||||||
<p class="eyebrow">Available for full-time and freelance work</p>
|
|
||||||
<h1>{{ hero.name }}</h1>
|
<h1>{{ hero.name }}</h1>
|
||||||
<p class="hero-role">{{ hero.role }}</p>
|
<p class="hero-role">{{ hero.role }}</p>
|
||||||
<p class="hero-intro">{{ hero.intro }}</p>
|
<p class="hero-intro">{{ hero.intro }}</p>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { CardComponent } from '../../components/card/card';
|
|||||||
|
|
||||||
interface Skill {
|
interface Skill {
|
||||||
name: string;
|
name: string;
|
||||||
category: 'Frontend' | 'Backend' | 'Mobile' | 'Cloud';
|
category: 'Frontend' | 'Backend' | 'Mobile' | 'Cloud' | 'Frontend / Backend';
|
||||||
level: string;
|
level: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -32,38 +32,47 @@ export class Home {
|
|||||||
readonly hero = {
|
readonly hero = {
|
||||||
name: 'Tim Kainz',
|
name: 'Tim Kainz',
|
||||||
role: 'Fullstack Developer',
|
role: 'Fullstack Developer',
|
||||||
intro:
|
intro: 'I build polished web, backend, and mobile products with Angular, C#, and Flutter.',
|
||||||
'I build polished web, backend, and mobile products with Angular, C#, and Flutter.',
|
|
||||||
focus: 'Focused on performance, clean architecture, and product-minded delivery.',
|
focus: 'Focused on performance, clean architecture, and product-minded delivery.',
|
||||||
};
|
};
|
||||||
|
|
||||||
readonly skills: Skill[] = [
|
readonly skills: Skill[] = [
|
||||||
{ name: 'Angular', category: 'Frontend', level: 'Advanced' },
|
{ name: 'Angular', category: 'Frontend', level: 'Advanced' },
|
||||||
{ name: 'TypeScript', category: 'Frontend', level: 'Advanced' },
|
{ name: 'React', category: 'Frontend', level: 'Advanced' },
|
||||||
{ name: 'C# / .NET', category: 'Backend', level: 'Advanced' },
|
{ name: 'Ionic', category: 'Frontend', level: 'Advanced' },
|
||||||
{ name: 'REST APIs', category: 'Backend', level: 'Advanced' },
|
{ name: 'TypeScript', category: 'Frontend / Backend', level: 'Advanced' },
|
||||||
|
{ name: 'Javascript', category: 'Frontend / Backend', level: 'Advanced' },
|
||||||
|
{ name: 'Express', category: 'Backend', level: 'Advanced' },
|
||||||
|
{ name: 'C# / .NET', category: 'Frontend / Backend', level: 'Advanced' },
|
||||||
|
{ name: 'ASP.NET Core', category: 'Backend', level: 'Advanced' },
|
||||||
|
{ name: 'WPF', category: 'Frontend', level: 'Advanced' },
|
||||||
|
{ name: 'Java', category: 'Backend', level: 'Advanced' },
|
||||||
|
{ name: 'Spring Boot', category: 'Backend', level: 'Advanced' },
|
||||||
{ name: 'Flutter', category: 'Mobile', level: 'Advanced' },
|
{ name: 'Flutter', category: 'Mobile', level: 'Advanced' },
|
||||||
{ name: 'Firebase', category: 'Cloud', level: 'Intermediate' },
|
|
||||||
];
|
];
|
||||||
|
|
||||||
readonly projects: Project[] = [
|
readonly projects: Project[] = [
|
||||||
{
|
{
|
||||||
title: 'ClinicFlow Platform',
|
title: 'Tasktimer',
|
||||||
description: 'Patient scheduling and billing dashboard for multi-location clinics.',
|
description:
|
||||||
stack: ['Angular', 'C#', '.NET API', 'PostgreSQL'],
|
'Jira time-tracking app with custom reporting and connectivity, build for mobile and web.',
|
||||||
impact: 'Reduced booking mistakes by 38% and improved team response speed.',
|
stack: ['Ionic', 'React', 'Spring Boot', 'Oracle', 'Web', 'Android', 'iOS'],
|
||||||
|
impact:
|
||||||
|
'Led backend and architectural work: implemented Spring Boot backend, database access for Oracle with reporting capabilities, including reliable Jira connectivity.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'FieldOps Mobile App',
|
title: 'Synopsis Platform Core',
|
||||||
description: 'Offline-first mobile app for technicians to manage service tasks.',
|
description: 'Main Synopsis Platform codebase (backend + frontend pieces).',
|
||||||
stack: ['Flutter', 'C#', 'SQLite', 'Azure Functions'],
|
stack: ['C#', 'TypeScript', 'HTML', 'Docker', 'Web'],
|
||||||
impact: 'Enabled same-day job updates even in low-connectivity zones.',
|
impact:
|
||||||
|
'Contributed via issues, code and investigations (plugin-loader, microfrontend research), influencing platform direction and stability.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Insights Portal',
|
title: 'Website SV Hofkirchen (Chess Club)',
|
||||||
description: 'Real-time analytics workspace with modular report widgets.',
|
description: 'Club management web app for the SV Hofkirchen chess club.',
|
||||||
stack: ['Angular', 'SignalR', 'C#', '.NET'],
|
stack: ['C#', '.NET', 'Blazor', 'SQLite', 'Web'],
|
||||||
impact: 'Cut reporting time from hours to minutes for operations teams.',
|
impact:
|
||||||
|
'Designed the technical core across backend, database, and Blazor UI: implemented backend services, and partially built the Blazor frontend',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user