Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

> **A production-ready, highly optimized Angular architecture designed for scale, performance, and maintainability.**

This repository serves as a masterclass in modern Angular development. Engineered from the ground up by a Senior Angular Developer, it demonstrates how to architect a state-of-the-art (SOTA) frontend application using the absolute latest features of Angular 21. It is explicitly designed to serve as a technical reference for enterprise teams and prospective clients.
This repository serves as a masterclass in modern Angular development. Engineered from the ground up by a Senior Angular Architect, it demonstrates how to architect a state-of-the-art (SOTA) frontend application using the absolute latest features of Angular 21. It is explicitly designed to serve as a technical reference for enterprise teams and prospective clients.

## 🚀 Why This Architecture is "Senior-Level"

Expand Down
2 changes: 1 addition & 1 deletion messages.xlf
Original file line number Diff line number Diff line change
Expand Up @@ -1363,7 +1363,7 @@
</trans-unit>
<trans-unit id="home-hero-description" datatype="html">
<source>
Senior Angular Experte &amp; Solo-Bootstrapper von Triathlon Pace. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen,
Senior Angular Architekt &amp; Solo-Bootstrapper von Triathlon Pace. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen,
die Optimierung von Performance-Engpässen und die Lieferung hochkarätiger Angular-Lösungen.
</source>
<context-group purpose="location">
Expand Down
7 changes: 7 additions & 0 deletions src/app/app.routes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ export const routes: Routes = [
(m) => m.DatenschutzComponent,
),
},
{
path: 'privacy-policy',
loadComponent: () =>
import('./features/legal/datenschutz/datenschutz.component').then(
(m) => m.DatenschutzComponent,
),
},
{
path: 'discovery-prep',
loadComponent: () =>
Expand Down
8 changes: 4 additions & 4 deletions src/app/core/services/seo/content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,17 @@ const seoContent: {
} = {
'/': {
de: {
title: 'Esser Web Engineering | Senior Angular Experte',
title: 'Esser Web Engineering | Senior Angular Architekt',
description:
'Senior Angular Experte & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen, die Optimierung von Performance-Engpässen und die Lieferung hochkarätiger Angular-Lösungen.',
'Senior Angular Architekt & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen, die Optimierung von Performance-Engpässen und die Lieferung hochkarätiger Angular-Lösungen.',
imageUrl:
'https://tricalculator-images.s3.eu-central-1.amazonaws.com/website/esser-web-engineering-logo-text-og-moz.jpg',
type: 'website',
},
en: {
title: 'Esser Web Engineering | Senior Angular Expert',
title: 'Esser Web Engineering | Senior Angular Architect',
description:
'Senior Angular Expert & Web Engineering. Specialized in building scalable enterprise applications, optimizing performance bottlenecks, and delivering high-quality Angular solutions.',
'Senior Angular Architect & Web Engineering. Specialized in building scalable enterprise applications, optimizing performance bottlenecks, and delivering high-quality Angular solutions.',
imageUrl:
'https://tricalculator-images.s3.eu-central-1.amazonaws.com/website/esser-web-engineering-logo-text-og-moz.jpg',
type: 'website',
Expand Down
8 changes: 4 additions & 4 deletions src/app/core/services/seo/seo.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@ import { environment } from '../../../../environments/environment';

const homepageSeoData = {
en: {
title: 'Esser Web Engineering | Senior Angular Expert',
title: 'Esser Web Engineering | Senior Angular Architect',
description:
'Senior Angular Expert & Web Engineering. Specialized in building scalable enterprise applications, optimizing performance bottlenecks, and delivering high-quality Angular solutions.',
'Senior Angular Architect & Web Engineering. Specialized in building scalable enterprise applications, optimizing performance bottlenecks, and delivering high-quality Angular solutions.',
imageUrl:
'https://tricalculator-images.s3.eu-central-1.amazonaws.com/website/esser-web-engineering-logo-text-og-moz.jpg',
},
de: {
title: 'Esser Web Engineering | Senior Angular Experte',
title: 'Esser Web Engineering | Senior Angular Architekt',
description:
'Senior Angular Experte & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen, die Optimierung von Performance-Engpässen und die Lieferung hochkarätiger Angular-Lösungen.',
'Senior Angular Architekt & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen, die Optimierung von Performance-Engpässen und die Lieferung hochkarätiger Angular-Lösungen.',
imageUrl:
'https://tricalculator-images.s3.eu-central-1.amazonaws.com/website/esser-web-engineering-logo-text-og-moz.jpg',
},
Expand Down
2 changes: 1 addition & 1 deletion src/app/features/about/about/about.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

<div class="max-w-50rem mx-auto mb-8">
<p class="text-xl sm:text-2xl font-light text-white-alpha-80 line-height-3" i18n="@@about-intro">
Senior Angular Experte mit Fokus auf pragmatische Umsetzung. Ich entwickle skalierbare Enterprise-Applikationen, die technische Exzellenz mit nachhaltigen Ergebnissen vereinen.
Senior Angular Architekt mit Fokus auf pragmatische Umsetzung. Ich entwickle skalierbare Enterprise-Applikationen, die technische Exzellenz mit nachhaltigen Ergebnissen vereinen.
</p>
</div>

Expand Down
6 changes: 3 additions & 3 deletions src/app/features/home/home/home.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
<span
class="text-white text-xs sm:text-sm font-bold uppercase tracking-wider"
i18n="@@home-hero-badge"
>Senior Angular Experte</span
>10+ Jahre Enterprise Erfahrung</span
>
</div>

Expand All @@ -46,7 +46,7 @@
i18n="@@home-hero-title"
>
Freelance Senior<br />
Angular Experte
Angular Architekt
</h1>
<p
class="text-lg lg:text-2xl text-white-alpha-80 line-height-3 mb-6 max-w-40rem mx-auto"
Expand Down Expand Up @@ -97,7 +97,7 @@
style="width: 1.25rem; height: 1.25rem"
><i class="pi pi-bolt"></i
></span>
Lighthouse 100/100
Lighthouse 90+
</span>
<span class="text-xl font-bold text-white flex align-items-center gap-2">
<span
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ <h2 class="text-2xl font-bold mb-4 text-white" i18n="@@paid-consultation-title">
</p>
<app-scheduler [url]="paidConsultingUrl" (success)="selectOption('form')"></app-scheduler>
<p class="text-xs text-white-alpha-40 mt-4 text-center italic" i18n="@@choice-cancellation-policy">
* Stornierung oder Umbuchung bis zu 24 Stunden vor dem Termin kostenlos möglich.
* Stornierung oder Umbuchung bis zu 48 Stunden vor dem Termin kostenlos möglich.
</p>
</div>
} @else if (selectedOption === 'mentoring') {
Expand All @@ -105,7 +105,7 @@ <h2 class="text-2xl font-bold mb-4 text-white" i18n="@@mentoring-consultation-ti
</p>
<app-scheduler [url]="mentoringUrl" (success)="selectOption('form')"></app-scheduler>
<p class="text-xs text-white-alpha-40 mt-4 text-center italic" i18n="@@choice-cancellation-policy">
* Stornierung oder Umbuchung bis zu 24 Stunden vor dem Termin kostenlos möglich.
* Stornierung oder Umbuchung bis zu 48 Stunden vor dem Termin kostenlos möglich.
</p>
</div>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h3 class="text-xl font-bold text-white mb-3" i18n="@@mentoring-logistics-title"
<div class="glass-card p-5 h-full border-2 border-white-alpha-10">
<h3 class="text-xl font-bold text-white mb-3" i18n="@@mentoring-cancel-title">Stornierung / Umbuchung</h3>
<p class="text-white-alpha-70 mb-0" i18n="@@mentoring-cancel-text">
Bis zu 24 Stunden vor dem Termin kostenlos möglich. Danach ist das Honorar in voller Höhe fällig.
Bis zu 48 Stunden vor dem Termin kostenlos möglich. Danach ist das Honorar in voller Höhe fällig.
</p>
</div>
</div>
Expand Down
4 changes: 2 additions & 2 deletions src/app/shared/components/scheduler/scheduler.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
</div>
<h3 class="text-xl font-bold mb-3 text-white" i18n="@@calendar-consent-title">Terminkalender aktivieren</h3>
<p class="text-white-alpha-60 mb-5 max-w-30rem" i18n="@@calendar-consent-text">
Ich nutze Google Calendar, um dir eine einfache Terminbuchung zu ermöglichen.
Um Ihnen eine komfortable Terminbuchung direkt auf der Seite zu ermöglichen, nutze ich Google Calendar.
Durch das Laden des Kalenders wird eine Verbindung zu Google-Servern hergestellt.
Weitere Infos findest du in meiner <a routerLink="/datenschutz" class="text-primary-500 no-underline hover:underline">Datenschutzerklärung</a>.
Weitere Infos finden Sie in meiner <a routerLink="/datenschutz" class="text-primary-500 no-underline hover:underline">Datenschutzerklärung</a>.
</p>
<button
(click)="acceptConsent()"
Expand Down
8 changes: 4 additions & 4 deletions src/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,18 @@
<link rel="icon" type="image/x-icon" href="assets/favicon.ico" />
<link rel="manifest" href="manifest.webmanifest" />
<link rel="preconnect" href="https://tricalculator-images.s3.eu-central-1.amazonaws.com" crossorigin />
<title>Esser Web Engineering | Senior Angular Experte</title>
<title>Esser Web Engineering | Senior Angular Architekt</title>
<meta
name="description"
content="Senior Angular Experte & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen und Performance-Optimierung."
content="Senior Angular Architekt & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen und Performance-Optimierung."
/>
<meta
property="og:title"
content="Esser Web Engineering | Senior Angular Experte"
content="Esser Web Engineering | Senior Angular Architekt"
/>
<meta
property="og:description"
content="Senior Angular Experte & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen und Performance-Optimierung."
content="Senior Angular Architekt & Web Engineering. Spezialisiert auf den Aufbau skalierbarer Enterprise-Anwendungen und Performance-Optimierung."
/>
<meta
property="og:image"
Expand Down
18 changes: 9 additions & 9 deletions src/locale/messages.en.xlf
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@
<target>Activate Appointment Calendar</target>
</trans-unit>
<trans-unit id="calendar-consent-text" datatype="html">
<source>Ich nutze Google Calendar, um dir eine einfache Terminbuchung zu ermöglichen. Durch das Laden des Kalenders wird eine Verbindung zu Google-Servern hergestellt. Weitere Infos findest du in meiner &lt;a routerLink="/datenschutz" class="text-primary-500 no-underline hover:underline"&gt;Datenschutzerklärung&lt;/a&gt;.</source>
<target>I use Google Calendar to provide you with an easy booking experience. Loading the calendar establishes a connection to Google's servers. Further information can be found in my &lt;a routerLink="/datenschutz" class="text-primary-500 no-underline hover:underline"&gt;Privacy Policy&lt;/a&gt;.</target>
<source>Um Ihnen eine komfortable Terminbuchung direkt auf der Seite zu ermöglichen, nutze ich Google Calendar. Durch das Laden des Kalenders wird eine Verbindung zu Google-Servern hergestellt. Weitere Infos finden Sie in meiner &lt;a routerLink="/datenschutz" class="text-primary-500 no-underline hover:underline"&gt;Datenschutzerklärung&lt;/a&gt;.</source>
<target>I use Google Calendar to provide you with an easy booking experience. Loading the calendar establishes a connection to Google's servers. Further information can be found in my &lt;a routerLink="/privacy-policy" class="text-primary-500 no-underline hover:underline"&gt;Privacy Policy&lt;/a&gt;.</target>
</trans-unit>
<trans-unit id="calendar-loading" datatype="html">
<source>Kalender wird geladen...</source>
Expand Down Expand Up @@ -1301,8 +1301,8 @@
<target>You are currently offline. The form will be submitted once you are online.</target>
</trans-unit>
<trans-unit id="about-intro" datatype="html">
<source>Senior Angular Experte mit Fokus auf pragmatische Umsetzung. Ich entwickle skalierbare Enterprise-Applikationen, die technische Exzellenz mit nachhaltigen Ergebnissen vereinen.</source>
<target>Senior Angular Expert with a focus on pragmatic implementation. I develop scalable enterprise applications that combine technical excellence with sustainable results.</target>
<source>Senior Angular Architekt mit Fokus auf pragmatische Umsetzung. Ich entwickle skalierbare Enterprise-Applikationen, die technische Exzellenz mit nachhaltigen Ergebnissen vereinen.</source>
<target>Senior Angular Architect with a focus on pragmatic implementation. I develop scalable enterprise applications that combine technical excellence with sustainable results.</target>
</trans-unit>
<trans-unit id="home-services-title" datatype="html">
<source>Expertise &amp; Leistungen</source>
Expand Down Expand Up @@ -1550,22 +1550,22 @@
<target>An initial consultation is non-binding for both sides. My goal is to offer you real value – whether we work together afterward or not.</target>
</trans-unit>
<trans-unit id="home-hero-badge" datatype="html">
<source>10+ Jahre Enterprise-Erfahrung</source>
<source>10+ Jahre Enterprise Erfahrung</source>
<target>10+ Years of Enterprise Experience</target>
</trans-unit>
<trans-unit id="home-hero-title" datatype="html">
<source>
Freelance Senior<x id="LINE_BREAK" ctype="lb" equiv-text="&lt;br&gt;"/>
Angular Experte
Angular Architekt
</source>
<target>
Freelance Senior<x id="LINE_BREAK" ctype="lb" equiv-text="&lt;br&gt;"/>
Angular Expert
Angular Architect
</target>
</trans-unit>
<trans-unit id="home-hero-description" datatype="html">
<source>Senior Angular Experte mit Fokus auf pragmatische Umsetzung. Ich entwickle skalierbare Enterprise-Applikationen, die technische Exzellenz mit nachhaltigen Ergebnissen vereinen.</source>
<target>Senior Angular Expert focused on pragmatic engineering. I build scalable enterprise applications that combine technical excellence with sustainable business outcomes.</target>
<source>Spezialisiert auf High-Performance Architekturen und die Rettung komplexer Legacy-Codebases. Ich liefere technische Exzellenz mit klarem Fokus auf Ihren ROI.</source>
<target>Specialized in high-performance architectures and rescuing complex legacy codebases. I deliver technical excellence with a clear focus on your ROI.</target>
</trans-unit>
<trans-unit id="home-hero-btn-1" datatype="html">
<source>Kostenloses Erstgespräch</source>
Expand Down
Loading