diff --git a/apps/api/src/assets/sitemap.xml b/apps/api/src/assets/sitemap.xml index 5b90f1e71..44b4e7bb2 100644 --- a/apps/api/src/assets/sitemap.xml +++ b/apps/api/src/assets/sitemap.xml @@ -90,6 +90,10 @@ https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-copilot-money ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-de.fi + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-delta ${currentDate}T00:00:00+00:00 @@ -412,6 +416,10 @@ https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-copilot-money ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-de.fi + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-delta ${currentDate}T00:00:00+00:00 @@ -754,6 +762,10 @@ https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-copilot-money ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-de.fi + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-delta ${currentDate}T00:00:00+00:00 @@ -942,6 +954,10 @@ https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-copilot-money ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-de.fi + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-delta ${currentDate}T00:00:00+00:00 diff --git a/apps/api/src/middlewares/html-template.middleware.ts b/apps/api/src/middlewares/html-template.middleware.ts index e691bc89d..ac2551a51 100644 --- a/apps/api/src/middlewares/html-template.middleware.ts +++ b/apps/api/src/middlewares/html-template.middleware.ts @@ -91,6 +91,9 @@ const isFileRequest = (filename: string) => { return true; } else if ( filename.includes('auth/ey') || + filename.includes( + 'personal-finance-tools/open-source-alternative-to-de.fi' + ) || filename.includes( 'personal-finance-tools/open-source-alternative-to-markets.sh' ) diff --git a/apps/client/src/app/pages/resources/personal-finance-tools/products.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products.ts index 16a4b1d2a..7acdcb5b8 100644 --- a/apps/client/src/app/pages/resources/personal-finance-tools/products.ts +++ b/apps/client/src/app/pages/resources/personal-finance-tools/products.ts @@ -8,6 +8,7 @@ import { CapitallyPageComponent } from './products/capitally-page.component'; import { CapMonPageComponent } from './products/capmon-page.component'; import { CompoundPlanningPageComponent } from './products/compound-planning-page.component'; import { CopilotMoneyPageComponent } from './products/copilot-money-page.component'; +import { DeFiPageComponent } from './products/de.fi-page.component'; import { DeltaPageComponent } from './products/delta-page.component'; import { DivvyDiaryPageComponent } from './products/divvydiary-page.component'; import { EightFiguresPageComponent } from './products/eightfigures-page.component'; @@ -146,6 +147,14 @@ export const products: Product[] = [ pricingPerYear: '$70', slogan: 'Do money better with Copilot' }, + { + component: DeFiPageComponent, + founded: 2020, + key: 'de.fi', + languages: ['English'], + name: 'De.Fi', + slogan: 'DeFi Portfolio Tracker' + }, { component: DeltaPageComponent, founded: 2017, diff --git a/apps/client/src/app/pages/resources/personal-finance-tools/products/de.fi-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/de.fi-page.component.ts new file mode 100644 index 000000000..7ece232d1 --- /dev/null +++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/de.fi-page.component.ts @@ -0,0 +1,31 @@ +import { CommonModule } from '@angular/common'; +import { Component } from '@angular/core'; +import { MatButtonModule } from '@angular/material/button'; +import { RouterModule } from '@angular/router'; + +import { products } from '../products'; + +@Component({ + host: { class: 'page' }, + imports: [CommonModule, MatButtonModule, RouterModule], + selector: 'gf-de-fi-page', + standalone: true, + styleUrls: ['../product-page-template.scss'], + templateUrl: '../product-page-template.html' +}) +export class DeFiPageComponent { + public product1 = products.find(({ key }) => { + return key === 'ghostfolio'; + }); + + public product2 = products.find(({ key }) => { + return key === 'de.fi'; + }); + + public routerLinkAbout = ['/' + $localize`about`]; + public routerLinkFeatures = ['/' + $localize`features`]; + public routerLinkResourcesPersonalFinanceTools = [ + '/' + $localize`resources`, + 'personal-finance-tools' + ]; +}