diff --git a/apps/api/src/assets/sitemap.xml b/apps/api/src/assets/sitemap.xml index 5590f1909..160a4f98e 100644 --- a/apps/api/src/assets/sitemap.xml +++ b/apps/api/src/assets/sitemap.xml @@ -58,6 +58,10 @@ https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-altoo ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-capmon + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-copilot-money ${currentDate}T00:00:00+00:00 @@ -142,6 +146,10 @@ https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-snowball-analytics ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-stockmarketeye + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-sumio ${currentDate}T00:00:00+00:00 @@ -292,6 +300,10 @@ https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-altoo ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-capmon + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-copilot-money ${currentDate}T00:00:00+00:00 @@ -376,6 +388,10 @@ https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-snowball-analytics ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-stockmarketeye + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-sumio ${currentDate}T00:00:00+00:00 @@ -558,6 +574,10 @@ https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-altoo ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-campmon + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-copilot-money ${currentDate}T00:00:00+00:00 @@ -642,6 +662,10 @@ https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-snowball-analytics ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-stockmarketeye + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-sumio ${currentDate}T00:00:00+00:00 @@ -670,6 +694,10 @@ https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-altoo ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-capmon + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-copilot-money ${currentDate}T00:00:00+00:00 @@ -754,6 +782,10 @@ https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-snowball-analytics ${currentDate}T00:00:00+00:00 + + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-stockmarketeye + ${currentDate}T00:00:00+00:00 + https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-sumio ${currentDate}T00:00:00+00:00 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 1dce94310..111a287f6 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 @@ -1,6 +1,7 @@ import { Product } from '@ghostfolio/common/interfaces'; import { AltooPageComponent } from './products/altoo-page.component'; +import { CapMonPageComponent } from './products/capmon-page.component'; import { CopilotMoneyPageComponent } from './products/copilot-money-page.component'; import { DeltaPageComponent } from './products/delta-page.component'; import { DivvyDiaryPageComponent } from './products/divvydiary-page.component'; @@ -22,6 +23,7 @@ import { SeekingAlphaPageComponent } from './products/seeking-alpha-page.compone import { SharesightPageComponent } from './products/sharesight-page.component'; import { SimplePortfolioPageComponent } from './products/simple-portfolio-page.component'; import { SnowballAnalyticsPageComponent } from './products/snowball-analytics-page.component'; +import { StockMarketEyePageComponent } from './products/stockmarketeye-page.component'; import { SumioPageComponent } from './products/sumio-page.component'; import { UtlunaPageComponent } from './products/utluna-page.component'; import { YeekateePageComponent } from './products/yeekatee-page.component'; @@ -60,6 +62,16 @@ export const products: Product[] = [ origin: $localize`Switzerland`, slogan: 'Simplicity for Complex Wealth' }, + { + component: CapMonPageComponent, + founded: 2022, + isOpenSource: false, + key: 'capmon', + name: 'CapMon.org', + origin: $localize`Germany`, + note: 'Sunset in 2023', + slogan: 'Next Generation Assets Tracking' + }, { component: CopilotMoneyPageComponent, founded: 2019, @@ -311,10 +323,20 @@ export const products: Product[] = [ isOpenSource: false, key: 'snowball-analytics', name: 'Snowball Analytics', - origin: 'France', + origin: $localize`France`, pricingPerYear: '$80', slogan: 'Simple and powerful portfolio tracker' }, + { + component: StockMarketEyePageComponent, + founded: 2008, + isOpenSource: false, + key: 'stockmarketeye', + name: 'StockMarketEye', + origin: $localize`France`, + note: 'Sunset in 2023', + slogan: 'A Powerful Portfolio & Investment Tracking App' + }, { component: SumioPageComponent, hasFreePlan: true, diff --git a/apps/client/src/app/pages/resources/personal-finance-tools/products/capmon-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/capmon-page.component.ts new file mode 100644 index 000000000..7df8872a3 --- /dev/null +++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/capmon-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-capmon-page', + standalone: true, + styleUrls: ['../product-page-template.scss'], + templateUrl: '../product-page-template.html' +}) +export class CapMonPageComponent { + public product1 = products.find(({ key }) => { + return key === 'ghostfolio'; + }); + + public product2 = products.find(({ key }) => { + return key === 'capmon'; + }); + + public routerLinkAbout = ['/' + $localize`about`]; + public routerLinkFeatures = ['/' + $localize`features`]; + public routerLinkResourcesPersonalFinanceTools = [ + '/' + $localize`resources`, + 'personal-finance-tools' + ]; +} diff --git a/apps/client/src/app/pages/resources/personal-finance-tools/products/stockmarketeye-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/stockmarketeye-page.component.ts new file mode 100644 index 000000000..8fda86382 --- /dev/null +++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/stockmarketeye-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-stockmarketeye-page', + standalone: true, + styleUrls: ['../product-page-template.scss'], + templateUrl: '../product-page-template.html' +}) +export class StockMarketEyePageComponent { + public product1 = products.find(({ key }) => { + return key === 'ghostfolio'; + }); + + public product2 = products.find(({ key }) => { + return key === 'stockmarketeye'; + }); + + public routerLinkAbout = ['/' + $localize`about`]; + public routerLinkFeatures = ['/' + $localize`features`]; + public routerLinkResourcesPersonalFinanceTools = [ + '/' + $localize`resources`, + 'personal-finance-tools' + ]; +}