diff --git a/CHANGELOG.md b/CHANGELOG.md
index e9acba012..c1c4c1999 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,17 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## Unreleased
+
+### Added
+
+- Added the ability to close a user account
+
+### Changed
+
+- Improved the language localization for German (`de`)
+- Upgraded `ng-extract-i18n-merge` from version `2.10.0` to `2.12.0`
+
## 2.84.0 - 2024-06-01
### Added
diff --git a/apps/api/src/app/user/delete-own-user.dto.ts b/apps/api/src/app/user/delete-own-user.dto.ts
new file mode 100644
index 000000000..1e3f940cb
--- /dev/null
+++ b/apps/api/src/app/user/delete-own-user.dto.ts
@@ -0,0 +1,6 @@
+import { IsString } from 'class-validator';
+
+export class DeleteOwnUserDto {
+ @IsString()
+ accessToken: string;
+}
diff --git a/apps/api/src/app/user/user.controller.ts b/apps/api/src/app/user/user.controller.ts
index 39e78dcdc..7cd2002bd 100644
--- a/apps/api/src/app/user/user.controller.ts
+++ b/apps/api/src/app/user/user.controller.ts
@@ -1,5 +1,6 @@
import { HasPermission } from '@ghostfolio/api/decorators/has-permission.decorator';
import { HasPermissionGuard } from '@ghostfolio/api/guards/has-permission.guard';
+import { ConfigurationService } from '@ghostfolio/api/services/configuration/configuration.service';
import { PropertyService } from '@ghostfolio/api/services/property/property.service';
import { User, UserSettings } from '@ghostfolio/common/interfaces';
import { hasPermission, permissions } from '@ghostfolio/common/permissions';
@@ -25,6 +26,7 @@ import { User as UserModel } from '@prisma/client';
import { StatusCodes, getReasonPhrase } from 'http-status-codes';
import { size } from 'lodash';
+import { DeleteOwnUserDto } from './delete-own-user.dto';
import { UserItem } from './interfaces/user-item.interface';
import { UpdateUserSettingDto } from './update-user-setting.dto';
import { UserService } from './user.service';
@@ -32,12 +34,41 @@ import { UserService } from './user.service';
@Controller('user')
export class UserController {
public constructor(
+ private readonly configurationService: ConfigurationService,
private readonly jwtService: JwtService,
private readonly propertyService: PropertyService,
@Inject(REQUEST) private readonly request: RequestWithUser,
private readonly userService: UserService
) {}
+ @Delete()
+ @HasPermission(permissions.deleteOwnUser)
+ @UseGuards(AuthGuard('jwt'), HasPermissionGuard)
+ public async deleteOwnUser(
+ @Body() data: DeleteOwnUserDto
+ ): Promise {
+ const hashedAccessToken = this.userService.createAccessToken(
+ data.accessToken,
+ this.configurationService.get('ACCESS_TOKEN_SALT')
+ );
+
+ const [user] = await this.userService.users({
+ where: { accessToken: hashedAccessToken, id: this.request.user.id }
+ });
+
+ if (!user) {
+ throw new HttpException(
+ getReasonPhrase(StatusCodes.FORBIDDEN),
+ StatusCodes.FORBIDDEN
+ );
+ }
+
+ return this.userService.deleteUser({
+ accessToken: hashedAccessToken,
+ id: user.id
+ });
+ }
+
@Delete(':id')
@HasPermission(permissions.deleteUser)
@UseGuards(AuthGuard('jwt'), HasPermissionGuard)
diff --git a/apps/api/src/app/user/user.service.ts b/apps/api/src/app/user/user.service.ts
index 0ac586671..51bd4c4db 100644
--- a/apps/api/src/app/user/user.service.ts
+++ b/apps/api/src/app/user/user.service.ts
@@ -240,10 +240,13 @@ export class UserService {
// Reset benchmark
user.Settings.settings.benchmark = undefined;
- }
-
- if (user.subscription?.type === 'Premium') {
+ } else if (user.subscription?.type === 'Premium') {
currentPermissions.push(permissions.reportDataGlitch);
+
+ currentPermissions = without(
+ currentPermissions,
+ permissions.deleteOwnUser
+ );
}
}
diff --git a/apps/api/src/assets/sitemap.xml b/apps/api/src/assets/sitemap.xml
index e527df8d0..f02c80fc7 100644
--- a/apps/api/src/assets/sitemap.xml
+++ b/apps/api/src/assets/sitemap.xml
@@ -182,6 +182,10 @@
https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-portfolio-dividend-tracker
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-portfolio-visualizer
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-portseido
${currentDate}T00:00:00+00:00
@@ -210,6 +214,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-stock-events
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-stockle
${currentDate}T00:00:00+00:00
@@ -234,6 +242,10 @@
https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-vyzer
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-wallmine
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/de/ressourcen/personal-finance-tools/open-source-alternative-zu-wealthfolio
${currentDate}T00:00:00+00:00
@@ -536,6 +548,10 @@
https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-portfolio-dividend-tracker
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-portfolio-visualizer
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-portseido
${currentDate}T00:00:00+00:00
@@ -564,6 +580,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-stock-events
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-stockle
${currentDate}T00:00:00+00:00
@@ -588,6 +608,10 @@
https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-vyzer
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-wallmine
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/en/resources/personal-finance-tools/open-source-alternative-to-wealthfolio
${currentDate}T00:00:00+00:00
@@ -902,6 +926,10 @@
https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-portfolio-dividend-tracker
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-portfolio-visualizer
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-portseido
${currentDate}T00:00:00+00:00
@@ -930,6 +958,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-stock-events
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-stockle
${currentDate}T00:00:00+00:00
@@ -954,6 +986,10 @@
https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-vyzer
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-wallmine
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/it/risorse/personal-finance-tools/alternativa-open-source-a-wealthfolio
${currentDate}T00:00:00+00:00
@@ -1114,6 +1150,10 @@
https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-portfolio-dividend-tracker
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-portfolio-visualizer
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-portseido
${currentDate}T00:00:00+00:00
@@ -1142,6 +1182,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-stock-events
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-stockle
${currentDate}T00:00:00+00:00
@@ -1166,6 +1210,10 @@
https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-vyzer
${currentDate}T00:00:00+00:00
+
+ https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-wallmine
+ ${currentDate}T00:00:00+00:00
+
https://ghostfol.io/nl/bronnen/personal-finance-tools/open-source-alternatief-voor-wealthfolio
${currentDate}T00:00:00+00:00
diff --git a/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts b/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts
index c6d7f8e89..4f80207aa 100644
--- a/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts
+++ b/apps/client/src/app/components/user-account-settings/user-account-settings.component.ts
@@ -4,6 +4,7 @@ import {
KEY_TOKEN,
SettingsStorageService
} from '@ghostfolio/client/services/settings-storage.service';
+import { TokenStorageService } from '@ghostfolio/client/services/token-storage.service';
import { UserService } from '@ghostfolio/client/services/user/user.service';
import { WebAuthnService } from '@ghostfolio/client/services/web-authn.service';
import { downloadAsFile } from '@ghostfolio/common/helper';
@@ -17,6 +18,7 @@ import {
OnDestroy,
OnInit
} from '@angular/core';
+import { FormBuilder, Validators } from '@angular/forms';
import { MatSlideToggleChange } from '@angular/material/slide-toggle';
import { format, parseISO } from 'date-fns';
import { uniq } from 'lodash';
@@ -33,8 +35,13 @@ export class UserAccountSettingsComponent implements OnDestroy, OnInit {
public appearancePlaceholder = $localize`Auto`;
public baseCurrency: string;
public currencies: string[] = [];
+ public deleteOwnUserForm = this.formBuilder.group({
+ accessToken: ['', Validators.required]
+ });
+ public hasPermissionToDeleteOwnUser: boolean;
public hasPermissionToUpdateViewMode: boolean;
public hasPermissionToUpdateUserSettings: boolean;
+ public isAccessTokenHidden = true;
public isWebAuthnEnabled: boolean;
public language = document.documentElement.lang;
public locales = [
@@ -58,7 +65,9 @@ export class UserAccountSettingsComponent implements OnDestroy, OnInit {
public constructor(
private changeDetectorRef: ChangeDetectorRef,
private dataService: DataService,
+ private formBuilder: FormBuilder,
private settingsStorageService: SettingsStorageService,
+ private tokenStorageService: TokenStorageService,
private userService: UserService,
public webAuthnService: WebAuthnService
) {
@@ -73,6 +82,11 @@ export class UserAccountSettingsComponent implements OnDestroy, OnInit {
if (state?.user) {
this.user = state.user;
+ this.hasPermissionToDeleteOwnUser = hasPermission(
+ this.user.permissions,
+ permissions.deleteOwnUser
+ );
+
this.hasPermissionToUpdateUserSettings = hasPermission(
this.user.permissions,
permissions.updateUserSettings
@@ -125,6 +139,33 @@ export class UserAccountSettingsComponent implements OnDestroy, OnInit {
});
}
+ public onCloseAccount() {
+ const confirmation = confirm(
+ $localize`Do you really want to close your Ghostfolio account?`
+ );
+
+ if (confirmation) {
+ this.dataService
+ .deleteOwnUser({
+ accessToken: this.deleteOwnUserForm.get('accessToken').value
+ })
+ .pipe(
+ catchError(() => {
+ alert($localize`Oops! Incorrect Security Token.`);
+
+ return EMPTY;
+ }),
+ takeUntil(this.unsubscribeSubject)
+ )
+ .subscribe(() => {
+ this.tokenStorageService.signOut();
+ this.userService.remove();
+
+ document.location.href = `/${document.documentElement.lang}`;
+ });
+ }
+ }
+
public onExperimentalFeaturesChange(aEvent: MatSlideToggleChange) {
this.dataService
.putUserSetting({ isExperimentalFeatures: aEvent.checked })
diff --git a/apps/client/src/app/components/user-account-settings/user-account-settings.html b/apps/client/src/app/components/user-account-settings/user-account-settings.html
index 1ad24e22e..fff38a588 100644
--- a/apps/client/src/app/components/user-account-settings/user-account-settings.html
+++ b/apps/client/src/app/components/user-account-settings/user-account-settings.html
@@ -232,6 +232,55 @@
+ @if (hasPermissionToDeleteOwnUser) {
+
+
+ }
diff --git a/apps/client/src/app/components/user-account-settings/user-account-settings.module.ts b/apps/client/src/app/components/user-account-settings/user-account-settings.module.ts
index 89626a96c..e0fe2e1e2 100644
--- a/apps/client/src/app/components/user-account-settings/user-account-settings.module.ts
+++ b/apps/client/src/app/components/user-account-settings/user-account-settings.module.ts
@@ -1,11 +1,12 @@
import { GfValueComponent } from '@ghostfolio/ui/value';
import { CommonModule } from '@angular/common';
-import { NgModule } from '@angular/core';
+import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';
import { MatFormFieldModule } from '@angular/material/form-field';
+import { MatInputModule } from '@angular/material/input';
import { MatSelectModule } from '@angular/material/select';
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
import { RouterModule } from '@angular/router';
@@ -22,10 +23,12 @@ import { UserAccountSettingsComponent } from './user-account-settings.component'
MatButtonModule,
MatCardModule,
MatFormFieldModule,
+ MatInputModule,
MatSelectModule,
MatSlideToggleModule,
ReactiveFormsModule,
RouterModule
- ]
+ ],
+ schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class GfUserAccountSettingsModule {}
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 d089193f0..c681ac93c 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
@@ -32,6 +32,7 @@ import { MonsePageComponent } from './products/monse-page.component';
import { ParqetPageComponent } from './products/parqet-page.component';
import { PlannixPageComponent } from './products/plannix-page.component';
import { PortfolioDividendTrackerPageComponent } from './products/portfolio-dividend-tracker-page.component';
+import { PortfolioVisualizerPageComponent } from './products/portfolio-visualizer-page.component';
import { PortseidoPageComponent } from './products/portseido-page.component';
import { ProjectionLabPageComponent } from './products/projectionlab-page.component';
import { RocketMoneyPageComponent } from './products/rocket-money-page.component';
@@ -39,12 +40,14 @@ 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 { StockEventsPageComponent } from './products/stock-events-page.component';
import { StocklePageComponent } from './products/stockle-page.component';
import { StockMarketEyePageComponent } from './products/stockmarketeye-page.component';
import { SumioPageComponent } from './products/sumio-page.component';
import { TillerPageComponent } from './products/tiller-page.component';
import { UtlunaPageComponent } from './products/utluna-page.component';
import { VyzerPageComponent } from './products/vyzer-page.component';
+import { WallminePageComponent } from './products/wallmine-page.component';
import { WealthfolioPageComponent } from './products/wealthfolio-page.component';
import { WealthicaPageComponent } from './products/wealthica-page.component';
import { WhalPageComponent } from './products/whal-page.component';
@@ -67,7 +70,8 @@ export const products: Product[] = [
'Italiano',
'Nederlands',
'Português',
- 'Türkçe'
+ 'Türkçe',
+ '简体中文'
],
name: 'Ghostfolio',
origin: $localize`Switzerland`,
@@ -408,6 +412,16 @@ export const products: Product[] = [
pricingPerYear: '€60',
slogan: 'Manage all your portfolios'
},
+ {
+ component: PortfolioVisualizerPageComponent,
+ hasFreePlan: true,
+ hasSelfHostingAbility: false,
+ key: 'portfolio-visualizer',
+ languages: ['English'],
+ name: 'Portfolio Visualizer',
+ pricingPerYear: '$360',
+ slogan: 'Tools for Better Investors'
+ },
{
component: PortseidoPageComponent,
founded: 2021,
@@ -484,6 +498,15 @@ export const products: Product[] = [
pricingPerYear: '$80',
slogan: 'Simple and powerful portfolio tracker'
},
+ {
+ component: StockEventsPageComponent,
+ founded: 2019,
+ hasSelfHostingAbility: false,
+ key: 'stock-events',
+ name: 'Stock Events',
+ origin: $localize`Germany`,
+ slogan: 'Track all your Investments'
+ },
{
component: StocklePageComponent,
key: 'stockle',
@@ -543,6 +566,16 @@ export const products: Product[] = [
pricingPerYear: '$348',
slogan: 'Virtual Family Office for Smart Wealth Management'
},
+ {
+ component: WallminePageComponent,
+ hasSelfHostingAbility: false,
+ key: 'wallmine',
+ languages: ['English'],
+ name: 'wallmine',
+ origin: $localize`Czech Republic`,
+ pricingPerYear: '$600',
+ slogan: 'Make Smarter Investments'
+ },
{
component: WealthfolioPageComponent,
hasSelfHostingAbility: true,
diff --git a/apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
new file mode 100644
index 000000000..4baeb4de9
--- /dev/null
+++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
@@ -0,0 +1,32 @@
+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';
+import { BaseProductPageComponent } from './base-page.component';
+
+@Component({
+ host: { class: 'page' },
+ imports: [CommonModule, MatButtonModule, RouterModule],
+ selector: 'gf-portfolio-visualizer-page',
+ standalone: true,
+ styleUrls: ['../product-page-template.scss'],
+ templateUrl: '../product-page-template.html'
+})
+export class PortfolioVisualizerPageComponent extends BaseProductPageComponent {
+ public product1 = products.find(({ key }) => {
+ return key === 'ghostfolio';
+ });
+
+ public product2 = products.find(({ key }) => {
+ return key === 'portfolio-visualizer';
+ });
+
+ 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/stock-events-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
new file mode 100644
index 000000000..ea8aa753b
--- /dev/null
+++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
@@ -0,0 +1,32 @@
+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';
+import { BaseProductPageComponent } from './base-page.component';
+
+@Component({
+ host: { class: 'page' },
+ imports: [CommonModule, MatButtonModule, RouterModule],
+ selector: 'gf-stock-events-page',
+ standalone: true,
+ styleUrls: ['../product-page-template.scss'],
+ templateUrl: '../product-page-template.html'
+})
+export class StockEventsPageComponent extends BaseProductPageComponent {
+ public product1 = products.find(({ key }) => {
+ return key === 'ghostfolio';
+ });
+
+ public product2 = products.find(({ key }) => {
+ return key === 'stock-events';
+ });
+
+ 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/wallmine-page.component.ts b/apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
new file mode 100644
index 000000000..5c75c80fb
--- /dev/null
+++ b/apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
@@ -0,0 +1,32 @@
+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';
+import { BaseProductPageComponent } from './base-page.component';
+
+@Component({
+ host: { class: 'page' },
+ imports: [CommonModule, MatButtonModule, RouterModule],
+ selector: 'gf-wallmine-page',
+ standalone: true,
+ styleUrls: ['../product-page-template.scss'],
+ templateUrl: '../product-page-template.html'
+})
+export class WallminePageComponent extends BaseProductPageComponent {
+ public product1 = products.find(({ key }) => {
+ return key === 'ghostfolio';
+ });
+
+ public product2 = products.find(({ key }) => {
+ return key === 'wallmine';
+ });
+
+ public routerLinkAbout = ['/' + $localize`about`];
+ public routerLinkFeatures = ['/' + $localize`features`];
+ public routerLinkResourcesPersonalFinanceTools = [
+ '/' + $localize`resources`,
+ 'personal-finance-tools'
+ ];
+}
diff --git a/apps/client/src/app/services/data.service.ts b/apps/client/src/app/services/data.service.ts
index d0f5396fe..7993b3ac1 100644
--- a/apps/client/src/app/services/data.service.ts
+++ b/apps/client/src/app/services/data.service.ts
@@ -9,6 +9,7 @@ import { UpdateOrderDto } from '@ghostfolio/api/app/order/update-order.dto';
import { PortfolioHoldingDetail } from '@ghostfolio/api/app/portfolio/interfaces/portfolio-holding-detail.interface';
import { LookupItem } from '@ghostfolio/api/app/symbol/interfaces/lookup-item.interface';
import { SymbolItem } from '@ghostfolio/api/app/symbol/interfaces/symbol-item.interface';
+import { DeleteOwnUserDto } from '@ghostfolio/api/app/user/delete-own-user.dto';
import { UserItem } from '@ghostfolio/api/app/user/interfaces/user-item.interface';
import { UpdateUserSettingDto } from '@ghostfolio/api/app/user/update-user-setting.dto';
import { IDataProviderHistoricalResponse } from '@ghostfolio/api/services/interfaces/interfaces';
@@ -271,6 +272,10 @@ export class DataService {
return this.http.delete(`/api/v1/benchmark/${dataSource}/${symbol}`);
}
+ public deleteOwnUser(aData: DeleteOwnUserDto) {
+ return this.http.delete(`/api/v1/user`, { body: aData });
+ }
+
public deleteUser(aId: string) {
return this.http.delete(`/api/v1/user/${aId}`);
}
diff --git a/apps/client/src/locales/messages.de.xlf b/apps/client/src/locales/messages.de.xlf
index 68ca7a037..378ee9b59 100644
--- a/apps/client/src/locales/messages.de.xlf
+++ b/apps/client/src/locales/messages.de.xlf
@@ -22,7 +22,7 @@
Das Ausfallrisiko beim Börsenhandel kann erheblich sein. Es ist nicht ratsam, Geld zu investieren, welches du kurzfristig benötigst.
apps/client/src/app/app.component.html
- 184
+ 182
@@ -94,7 +94,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 139
+ 150
apps/client/src/app/components/admin-tag/admin-tag.component.html
@@ -105,11 +105,11 @@
134
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
221
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
331
@@ -130,7 +130,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 215
+ 226
apps/client/src/app/components/admin-platform/admin-platform.component.html
@@ -337,7 +337,7 @@
34
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
301
@@ -352,6 +352,10 @@
apps/client/src/app/components/admin-market-data/admin-market-data.html
51
+
+ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
+ 125
+
apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html
150
@@ -465,7 +469,7 @@
26
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
112
@@ -478,7 +482,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 365
+ 376
apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html
@@ -522,7 +526,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 372
+ 383
apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html
@@ -558,10 +562,10 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 130
+ 141
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
209
@@ -841,7 +845,7 @@
262
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
357
@@ -1104,6 +1108,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
188
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
About
@@ -1201,12 +1217,12 @@
Sign in
Einloggen
- apps/client/src/app/components/header/header.component.ts
- 229
+ apps/client/src/app/app-routing.module.ts
+ 141
- apps/client/src/app/pages/webauthn/webauthn-page-routing.module.ts
- 7
+ apps/client/src/app/components/header/header.component.ts
+ 229
@@ -1341,12 +1357,12 @@
Investment
Einlage
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 58
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 165
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 165
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 58
@@ -1441,12 +1457,12 @@
Dividend
Dividenden
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 330
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 177
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 177
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 330
apps/client/src/app/pages/features/features-page.html
@@ -1474,14 +1490,14 @@
Sektoren
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 191
+ 202
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 316
+ 327
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
270
@@ -1494,14 +1510,14 @@
Länder
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 201
+ 212
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 327
+ 338
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
282
@@ -1513,7 +1529,7 @@
10
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
377
@@ -1529,7 +1545,7 @@
Report Data Glitch
Datenfehler melden
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
395
@@ -1549,7 +1565,7 @@
6
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
89
@@ -1610,7 +1626,7 @@
libs/ui/src/lib/assistant/assistant.component.ts
- 233
+ 250
@@ -1622,7 +1638,7 @@
libs/ui/src/lib/assistant/assistant.component.ts
- 236
+ 253
@@ -2038,11 +2054,11 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 120
+ 130
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 222
+ 233
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
@@ -2118,7 +2134,7 @@
Da du bereits eingeloggt bist, kannst du nicht auf die Live Demo zugreifen.
apps/client/src/app/pages/demo/demo-page.component.ts
- 32
+ 35
@@ -2137,8 +2153,8 @@
Features
Features
- apps/client/src/app/pages/features/features-page-routing.module.ts
- 13
+ apps/client/src/app/app-routing.module.ts
+ 65
@@ -2425,7 +2441,7 @@
Quantity
Anzahl
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
154
@@ -2474,7 +2490,7 @@
Kommentar
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 352
+ 363
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
@@ -2494,14 +2510,14 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 148
+ 159
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 232
+ 243
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
228
@@ -2821,7 +2837,7 @@
Change
Änderung
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
63
@@ -2833,7 +2849,7 @@
Average Unit Price
Ø Preis pro Einheit
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
101
@@ -2841,7 +2857,7 @@
Minimum Price
Minimum Preis
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
128
@@ -2849,7 +2865,7 @@
Maximum Price
Maximum Preis
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
144
@@ -2862,14 +2878,14 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 157
+ 168
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 245
+ 256
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
237
@@ -2882,10 +2898,10 @@
Sektor
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 174
+ 185
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
254
@@ -2894,14 +2910,14 @@
Land
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 185
+ 196
apps/client/src/app/components/admin-users/admin-users.html
77
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
264
@@ -3450,7 +3466,7 @@
Symbol Zuordnung
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 279
+ 290
@@ -3893,12 +3909,12 @@
Fees
Gebühren
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 108
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 199
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 199
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 108
apps/client/src/app/pages/portfolio/fire/fire-page.html
@@ -4118,7 +4134,7 @@
Url
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 339
+ 350
apps/client/src/app/components/admin-platform/admin-platform.component.html
@@ -4506,7 +4522,7 @@
Scraper Konfiguration
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 291
+ 302
@@ -4736,6 +4752,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
72
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
Origin
@@ -4940,6 +4968,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
77
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
Region
@@ -5144,6 +5184,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
82
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
Available in
@@ -5348,6 +5400,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
87
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
✅ Yes
@@ -5552,6 +5616,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
109
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
116
@@ -5952,6 +6040,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
130
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
141
@@ -6352,6 +6464,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
155
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
162
@@ -6752,6 +6888,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
174
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
181
@@ -7156,6 +7316,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
111
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
134
@@ -7558,15 +7742,15 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
- 157
+ 145
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
- 157
+ 145
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
- 157
+ 145
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
@@ -7756,6 +7940,34 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
157
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
164
@@ -7956,6 +8168,22 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
164
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
176
@@ -8156,6 +8384,22 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
176
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
183
@@ -8560,6 +8804,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
118
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
Self-Hosting
@@ -8764,6 +9020,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
123
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
Use anonymously
@@ -8968,6 +9236,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
150
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
Free Plan
@@ -9172,6 +9452,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
169
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
Notes
@@ -9376,6 +9668,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
202
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
Effortlessly track, analyze, and visualize your wealth with Ghostfolio.
@@ -9580,6 +9884,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
227
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
Personal Finance Tools
@@ -9784,6 +10100,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
308
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
Guides
@@ -10456,14 +10784,14 @@
faq
haeufig-gestellte-fragen
-
- apps/client/src/app/app-routing.module.ts
- 10
-
apps/client/src/app/app.component.ts
66
+
+ apps/client/src/app/core/paths.ts
+ 3
+
apps/client/src/app/pages/about/overview/about-overview-page.component.ts
19
@@ -10488,10 +10816,6 @@
features
features
-
- apps/client/src/app/app-routing.module.ts
- 11
-
apps/client/src/app/app.component.ts
67
@@ -10504,6 +10828,10 @@
apps/client/src/app/components/header/header.component.ts
83
+
+ apps/client/src/app/core/paths.ts
+ 4
+
apps/client/src/app/pages/about/overview/about-overview-page.component.ts
20
@@ -10672,6 +11000,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
27
@@ -10700,6 +11032,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
27
@@ -10724,6 +11060,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
27
@@ -10748,10 +11088,6 @@
about
ueber-uns
-
- apps/client/src/app/app-routing.module.ts
- 9
-
apps/client/src/app/app.component.ts
59
@@ -10776,6 +11112,10 @@
apps/client/src/app/components/header/header.component.ts
82
+
+ apps/client/src/app/core/paths.ts
+ 2
+
apps/client/src/app/pages/about/about-page.component.ts
45
@@ -10952,6 +11292,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
26
@@ -10980,6 +11324,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
26
@@ -11004,6 +11352,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
26
@@ -11028,14 +11380,14 @@
privacy-policy
datenschutzbestimmungen
-
- apps/client/src/app/app-routing.module.ts
- 15
-
apps/client/src/app/app.component.ts
64
+
+ apps/client/src/app/core/paths.ts
+ 8
+
apps/client/src/app/pages/about/about-page.component.ts
63
@@ -11044,14 +11396,14 @@
license
lizenz
-
- apps/client/src/app/app-routing.module.ts
- 12
-
apps/client/src/app/app.component.ts
61
+
+ apps/client/src/app/core/paths.ts
+ 5
+
apps/client/src/app/pages/about/about-page.component.ts
55
@@ -11060,10 +11412,6 @@
markets
maerkte
-
- apps/client/src/app/app-routing.module.ts
- 13
-
apps/client/src/app/app.component.ts
68
@@ -11076,6 +11424,10 @@
apps/client/src/app/components/header/header.component.ts
84
+
+ apps/client/src/app/core/paths.ts
+ 6
+
apps/client/src/app/pages/blog/2022/08/500-stars-on-github/500-stars-on-github-page.component.ts
13
@@ -11092,10 +11444,6 @@
pricing
preise
-
- apps/client/src/app/app-routing.module.ts
- 14
-
apps/client/src/app/app.component.ts
69
@@ -11124,6 +11472,10 @@
apps/client/src/app/core/http-response.interceptor.ts
83
+
+ apps/client/src/app/core/paths.ts
+ 7
+
apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.component.ts
13
@@ -11164,10 +11516,6 @@
register
registrierung
-
- apps/client/src/app/app-routing.module.ts
- 16
-
apps/client/src/app/app.component.ts
70
@@ -11178,7 +11526,11 @@
apps/client/src/app/core/auth.guard.ts
- 54
+ 55
+
+
+ apps/client/src/app/core/paths.ts
+ 9
apps/client/src/app/pages/faq/saas/saas-page.component.ts
@@ -11186,7 +11538,7 @@
apps/client/src/app/pages/features/features-page.component.ts
- 18
+ 31
apps/client/src/app/pages/landing/landing-page.component.ts
@@ -11200,10 +11552,6 @@
resources
ressourcen
-
- apps/client/src/app/app-routing.module.ts
- 17
-
apps/client/src/app/app.component.ts
71
@@ -11216,6 +11564,10 @@
apps/client/src/app/components/header/header.component.ts
87
+
+ apps/client/src/app/core/paths.ts
+ 10
+
apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.component.ts
14
@@ -11234,7 +11586,7 @@
apps/client/src/app/pages/features/features-page.component.ts
- 19
+ 32
apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.component.ts
@@ -11368,6 +11720,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
29
@@ -11396,6 +11752,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
29
@@ -11420,6 +11780,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
29
@@ -11680,6 +12044,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
8
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
Are you looking for an open source alternative to ? Ghostfolio is a powerful portfolio management tool that provides individuals with a comprehensive platform to track, analyze, and optimize their investments. Whether you are an experienced investor or just starting out, Ghostfolio offers an intuitive user interface and a wide range of functionalities to help you make informed decisions and take control of your financial future.
@@ -11884,6 +12260,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
13
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
Ghostfolio is an open source software (OSS), providing a cost-effective alternative to making it particularly suitable for individuals on a tight budget, such as those pursuing Financial Independence, Retire Early (FIRE). By leveraging the collective efforts of a community of developers and personal finance enthusiasts, Ghostfolio continuously enhances its capabilities, security, and user experience.
@@ -12088,6 +12476,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
Let’s dive deeper into the detailed Ghostfolio vs comparison table below to gain a thorough understanding of how Ghostfolio positions itself relative to . We will explore various aspects such as features, data privacy, pricing, and more, allowing you to make a well-informed choice for your personal requirements.
@@ -12292,6 +12692,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
38
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
open-source-alternative-to
@@ -12508,6 +12920,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
210
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
Ready to take your investments to the next level?
@@ -12712,6 +13136,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
223
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
Get Started
@@ -12916,25 +13352,37 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
232
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
Switzerland
Schweiz
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 72
+ 77
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 102
+ 107
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 530
+ 554
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 580
+ 614
@@ -12942,19 +13390,19 @@
Weltweit
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 73
+ 78
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 341
+ 346
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 462
+ 477
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 581
+ 615
@@ -12962,87 +13410,87 @@
Vereinigte Staaten von Amerika
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 93
+ 98
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 149
+ 154
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 159
+ 164
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 201
+ 206
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 210
+ 215
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 220
+ 225
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 232
+ 237
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 242
+ 247
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 294
+ 299
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 316
+ 321
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 327
+ 332
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 352
+ 357
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 354
+ 359
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 364
+ 369
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 429
+ 444
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 439
+ 454
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 449
+ 464
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 518
+ 542
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 541
+ 565
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 569
+ 603
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 591
+ 625
@@ -13050,7 +13498,7 @@
Belgien
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 179
+ 184
@@ -13058,31 +13506,35 @@
Deutschland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 140
+ 145
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 190
+ 195
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 274
+ 279
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 284
+ 289
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 305
+ 310
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 339
+ 344
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 385
+ 390
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products.ts
+ 507
@@ -13090,7 +13542,7 @@
Österreich
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 262
+ 267
@@ -13098,7 +13550,7 @@
Italien
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 396
+ 401
@@ -13106,7 +13558,7 @@
Niederlande
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 406
+ 411
@@ -13114,7 +13566,7 @@
Thailand
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 418
+ 433
@@ -13122,7 +13574,7 @@
Neuseeland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 460
+ 475
@@ -13130,11 +13582,15 @@
Tschechische Republik
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 471
+ 486
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products.ts
+ 532
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 508
+ 575
@@ -13266,15 +13722,15 @@
Frankreich
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 121
+ 126
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 482
+ 497
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 498
+ 522
@@ -13318,7 +13774,7 @@
Benchmark
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 273
+ 284
@@ -13366,7 +13822,7 @@
Finnland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 490
+ 514
@@ -13672,13 +14128,25 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
49
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
Canada
Kanada
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 561
+ 595
@@ -13710,7 +14178,7 @@
Polen
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 131
+ 136
@@ -13718,7 +14186,7 @@
Südafrika
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 251
+ 256
@@ -13750,7 +14218,7 @@
Ups! Die historischen Daten konnten nicht geparsed werden.
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts
- 236
+ 232
@@ -13988,6 +14456,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
190
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
195
@@ -14392,6 +14884,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
191
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
197
@@ -14598,7 +15114,7 @@
Möchtest du diesen Cash-Bestand wirklich löschen?
libs/ui/src/lib/account-balances/account-balances.component.ts
- 102
+ 101
@@ -14622,7 +15138,7 @@
Der aktuelle Marktpreis ist
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts
- 342
+ 336
@@ -14630,7 +15146,7 @@
Test
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 309
+ 320
@@ -14850,7 +15366,7 @@
Jahre
libs/ui/src/lib/assistant/assistant.component.ts
- 233
+ 250
@@ -14965,7 +15481,7 @@
Activity
Aktivität
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
219
@@ -14973,7 +15489,7 @@
Dividend Yield
Dividendenrendite
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
187
@@ -15013,7 +15529,7 @@
Change with currency effect
Änderung mit Währungseffekt
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
52
@@ -15021,7 +15537,7 @@
Performance with currency effect
Performance mit Währungseffekt
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
79
@@ -15049,6 +15565,14 @@
66
+
+ Internationalization
+ Internationalisierung
+
+ apps/client/src/app/app-routing.module.ts
+ 79
+
+
about
-
- apps/client/src/app/app-routing.module.ts
- 9
-
apps/client/src/app/app.component.ts
59
@@ -32,6 +28,10 @@
apps/client/src/app/components/header/header.component.ts
82
+
+ apps/client/src/app/core/paths.ts
+ 2
+
apps/client/src/app/pages/about/about-page.component.ts
45
@@ -208,6 +208,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
26
@@ -236,6 +240,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
26
@@ -260,6 +268,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
26
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 26
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
26
@@ -283,14 +295,14 @@
faq
-
- apps/client/src/app/app-routing.module.ts
- 10
-
apps/client/src/app/app.component.ts
66
+
+ apps/client/src/app/core/paths.ts
+ 3
+
apps/client/src/app/pages/about/overview/about-overview-page.component.ts
19
@@ -314,10 +326,6 @@
features
-
- apps/client/src/app/app-routing.module.ts
- 11
-
apps/client/src/app/app.component.ts
67
@@ -330,6 +338,10 @@
apps/client/src/app/components/header/header.component.ts
83
+
+ apps/client/src/app/core/paths.ts
+ 4
+
apps/client/src/app/pages/about/overview/about-overview-page.component.ts
20
@@ -498,6 +510,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
27
@@ -526,6 +542,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
27
@@ -550,6 +570,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 27
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
27
@@ -573,14 +597,14 @@
license
-
- apps/client/src/app/app-routing.module.ts
- 12
-
apps/client/src/app/app.component.ts
61
+
+ apps/client/src/app/core/paths.ts
+ 5
+
apps/client/src/app/pages/about/about-page.component.ts
55
@@ -588,10 +612,6 @@
markets
-
- apps/client/src/app/app-routing.module.ts
- 13
-
apps/client/src/app/app.component.ts
68
@@ -604,6 +624,10 @@
apps/client/src/app/components/header/header.component.ts
84
+
+ apps/client/src/app/core/paths.ts
+ 6
+
apps/client/src/app/pages/blog/2022/08/500-stars-on-github/500-stars-on-github-page.component.ts
13
@@ -619,10 +643,6 @@
pricing
-
- apps/client/src/app/app-routing.module.ts
- 14
-
apps/client/src/app/app.component.ts
69
@@ -651,6 +671,10 @@
apps/client/src/app/core/http-response.interceptor.ts
83
+
+ apps/client/src/app/core/paths.ts
+ 7
+
apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.component.ts
13
@@ -690,14 +714,14 @@
privacy-policy
-
- apps/client/src/app/app-routing.module.ts
- 15
-
apps/client/src/app/app.component.ts
64
+
+ apps/client/src/app/core/paths.ts
+ 8
+
apps/client/src/app/pages/about/about-page.component.ts
63
@@ -705,10 +729,6 @@
register
-
- apps/client/src/app/app-routing.module.ts
- 16
-
apps/client/src/app/app.component.ts
70
@@ -719,7 +739,11 @@
apps/client/src/app/core/auth.guard.ts
- 54
+ 55
+
+
+ apps/client/src/app/core/paths.ts
+ 9
apps/client/src/app/pages/faq/saas/saas-page.component.ts
@@ -727,7 +751,7 @@
apps/client/src/app/pages/features/features-page.component.ts
- 18
+ 31
apps/client/src/app/pages/landing/landing-page.component.ts
@@ -740,10 +764,6 @@
resources
-
- apps/client/src/app/app-routing.module.ts
- 17
-
apps/client/src/app/app.component.ts
71
@@ -756,6 +776,10 @@
apps/client/src/app/components/header/header.component.ts
87
+
+ apps/client/src/app/core/paths.ts
+ 10
+
apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.component.ts
14
@@ -774,7 +798,7 @@
apps/client/src/app/pages/features/features-page.component.ts
- 19
+ 32
apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.component.ts
@@ -908,6 +932,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-dividend-tracker-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/portfolio-visualizer-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/portseido-page.component.ts
29
@@ -936,6 +964,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/snowball-analytics-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/stock-events-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/stockle-page.component.ts
29
@@ -960,6 +992,10 @@
apps/client/src/app/pages/resources/personal-finance-tools/products/vyzer-page.component.ts
29
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products/wallmine-page.component.ts
+ 29
+
apps/client/src/app/pages/resources/personal-finance-tools/products/wealthfolio-page.component.ts
29
@@ -1420,6 +1456,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
188
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 188
+
Privacy Policy
@@ -1479,7 +1527,7 @@
The risk of loss in trading can be substantial. It is not advisable to invest money you may need in the short term.
apps/client/src/app/app.component.html
- 184
+ 182
@@ -1578,7 +1626,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 139
+ 150
apps/client/src/app/components/admin-tag/admin-tag.component.html
@@ -1589,11 +1637,11 @@
134
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
221
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
331
@@ -1646,7 +1694,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 215
+ 226
apps/client/src/app/components/admin-platform/admin-platform.component.html
@@ -1696,11 +1744,11 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 120
+ 130
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 222
+ 233
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
@@ -1880,7 +1928,7 @@
34
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
301
@@ -1894,6 +1942,10 @@
apps/client/src/app/components/admin-market-data/admin-market-data.html
51
+
+ apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
+ 125
+
apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html
150
@@ -1988,7 +2040,7 @@
26
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
112
@@ -2000,7 +2052,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 365
+ 376
apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html
@@ -2043,7 +2095,7 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 372
+ 383
apps/client/src/app/components/admin-market-data/create-asset-profile-dialog/create-asset-profile-dialog.html
@@ -2113,14 +2165,14 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 148
+ 159
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 232
+ 243
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
228
@@ -2136,14 +2188,14 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 157
+ 168
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 245
+ 256
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
237
@@ -2159,10 +2211,10 @@
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 130
+ 141
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
209
@@ -2231,7 +2283,7 @@
Oops! Could not parse historical data.
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts
- 236
+ 232
@@ -2267,10 +2319,10 @@
Sector
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 174
+ 185
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
254
@@ -2278,14 +2330,14 @@
Country
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 185
+ 196
apps/client/src/app/components/admin-users/admin-users.html
77
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
264
@@ -2293,14 +2345,14 @@
Sectors
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 191
+ 202
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 316
+ 327
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
270
@@ -2312,14 +2364,14 @@
Countries
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 201
+ 212
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 327
+ 338
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
282
@@ -2327,28 +2379,28 @@
Benchmark
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 273
+ 284
Symbol Mapping
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 279
+ 290
Scraper Configuration
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 291
+ 302
Note
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 352
+ 363
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
@@ -2553,7 +2605,7 @@
Url
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 339
+ 350
apps/client/src/app/components/admin-platform/admin-platform.component.html
@@ -2583,7 +2635,7 @@
262
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
357
@@ -2630,7 +2682,7 @@
10
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
377
@@ -2726,7 +2778,7 @@
6
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
89
@@ -2859,12 +2911,12 @@
Sign in
- apps/client/src/app/components/header/header.component.ts
- 229
+ apps/client/src/app/app-routing.module.ts
+ 141
- apps/client/src/app/pages/webauthn/webauthn-page-routing.module.ts
- 7
+ apps/client/src/app/components/header/header.component.ts
+ 229
@@ -3106,12 +3158,12 @@
Investment
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 58
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 165
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 165
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 58
@@ -3131,12 +3183,12 @@
Fees
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 108
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 199
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 199
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 108
apps/client/src/app/pages/portfolio/fire/fire-page.html
@@ -3249,12 +3301,12 @@
Dividend
- apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
- 330
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
+ 177
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
- 177
+ apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
+ 330
apps/client/src/app/pages/features/features-page.html
@@ -3279,7 +3331,7 @@
Change
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
63
@@ -3290,28 +3342,28 @@
Average Unit Price
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
101
Minimum Price
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
128
Maximum Price
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
144
Quantity
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
154
@@ -3326,7 +3378,7 @@
Report Data Glitch
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
395
@@ -3508,7 +3560,7 @@
libs/ui/src/lib/assistant/assistant.component.ts
- 233
+ 250
@@ -3519,7 +3571,7 @@
libs/ui/src/lib/assistant/assistant.component.ts
- 236
+ 253
@@ -4005,7 +4057,7 @@
As you are already logged in, you cannot access the demo account.
apps/client/src/app/pages/demo/demo-page.component.ts
- 32
+ 35
@@ -4037,8 +4089,8 @@
Features
- apps/client/src/app/pages/features/features-page-routing.module.ts
- 13
+ apps/client/src/app/app-routing.module.ts
+ 65
@@ -5641,6 +5693,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
8
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 8
+
Are you looking for an open source alternative to ? Ghostfolio is a powerful portfolio management tool that provides individuals with a comprehensive platform to track, analyze, and optimize their investments. Whether you are an experienced investor or just starting out, Ghostfolio offers an intuitive user interface and a wide range of functionalities to help you make informed decisions and take control of your financial future.
@@ -5844,6 +5908,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
13
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 13
+
Ghostfolio is an open source software (OSS), providing a cost-effective alternative to making it particularly suitable for individuals on a tight budget, such as those pursuing Financial Independence, Retire Early (FIRE). By leveraging the collective efforts of a community of developers and personal finance enthusiasts, Ghostfolio continuously enhances its capabilities, security, and user experience.
@@ -6047,6 +6123,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
27
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 27
+
Let’s dive deeper into the detailed Ghostfolio vs comparison table below to gain a thorough understanding of how Ghostfolio positions itself relative to . We will explore various aspects such as features, data privacy, pricing, and more, allowing you to make a well-informed choice for your personal requirements.
@@ -6250,6 +6338,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
38
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 38
+
Ghostfolio vs comparison table
@@ -6453,6 +6553,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
49
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 49
+
Founded
@@ -6656,6 +6768,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
72
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 72
+
Origin
@@ -6859,8 +6983,20 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
77
-
-
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 77
+
+
+
Region
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
@@ -7062,6 +7198,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
82
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 82
+
Available in
@@ -7265,6 +7413,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
87
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 87
+
✅ Yes
@@ -7468,6 +7628,26 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
109
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 109
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
116
@@ -7668,6 +7848,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
116
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 116
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
130
@@ -7868,6 +8060,22 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
130
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 130
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 141
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
141
@@ -8268,6 +8476,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
155
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 155
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 162
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
162
@@ -8668,6 +8900,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
174
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 174
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 181
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
181
@@ -9071,6 +9327,26 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
111
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 111
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
134
@@ -9271,6 +9547,14 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
134
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 134
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 145
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
145
@@ -9471,6 +9755,26 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
145
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 145
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 145
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 157
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
157
@@ -9871,6 +10175,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
164
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 164
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
176
@@ -10071,6 +10387,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
176
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 176
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 183
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
183
@@ -10474,6 +10814,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
118
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 118
+
Self-Hosting
@@ -10677,6 +11029,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
123
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 123
+
Use anonymously
@@ -10880,6 +11244,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
150
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 150
+
Free Plan
@@ -11083,6 +11459,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
169
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 169
+
Starting from
@@ -11286,6 +11674,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
190
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 190
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 195
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
195
@@ -11689,6 +12101,30 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
191
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 191
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 197
+
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
197
@@ -12092,6 +12528,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
202
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 202
+
Please note that the information provided in the Ghostfolio vs comparison table is based on our independent research and analysis. This website is not affiliated with or any other product mentioned in the comparison. As the landscape of personal finance tools evolves, it is essential to verify any specific details or changes directly from the respective product page. Data needs a refresh? Help us maintain accurate data on GitHub.
@@ -12295,6 +12743,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
210
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 210
+
Ready to take your investments to the next level?
@@ -12498,6 +12958,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
223
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 223
+
Effortlessly track, analyze, and visualize your wealth with Ghostfolio.
@@ -12701,6 +13173,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
227
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 227
+
Get Started
@@ -12904,6 +13388,18 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
232
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 232
+
Personal Finance Tools
@@ -13107,257 +13603,277 @@
apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
308
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/product-page-template.html
+ 308
+
Switzerland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 72
+ 77
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 102
+ 107
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 530
+ 554
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 580
+ 614
Global
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 73
+ 78
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 341
+ 346
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 462
+ 477
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 581
+ 615
United States
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 93
+ 98
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 149
+ 154
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 159
+ 164
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 201
+ 206
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 210
+ 215
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 220
+ 225
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 232
+ 237
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 242
+ 247
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 294
+ 299
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 316
+ 321
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 327
+ 332
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 352
+ 357
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 354
+ 359
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 364
+ 369
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 429
+ 444
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 439
+ 454
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 449
+ 464
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 518
+ 542
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 541
+ 565
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 569
+ 603
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 591
+ 625
France
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 121
+ 126
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 482
+ 497
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 498
+ 522
Poland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 131
+ 136
Germany
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 140
+ 145
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 190
+ 195
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 274
+ 279
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 284
+ 289
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 305
+ 310
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products.ts
+ 344
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 339
+ 390
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 385
+ 507
Belgium
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 179
+ 184
South Africa
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 251
+ 256
Austria
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 262
+ 267
Italy
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 396
+ 401
Netherlands
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 406
+ 411
Thailand
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 418
+ 433
New Zealand
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 460
+ 475
Czech Republic
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 471
+ 486
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 508
+ 532
+
+
+ apps/client/src/app/pages/resources/personal-finance-tools/products.ts
+ 575
Finland
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 490
+ 514
Canada
apps/client/src/app/pages/resources/personal-finance-tools/products.ts
- 561
+ 595
@@ -13435,7 +13951,7 @@
Do you really want to delete this account balance?
libs/ui/src/lib/account-balances/account-balances.component.ts
- 102
+ 101
@@ -14048,14 +14564,14 @@
The current market price is
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts
- 342
+ 336
Test
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
- 309
+ 320
@@ -14243,7 +14759,7 @@
years
libs/ui/src/lib/assistant/assistant.component.ts
- 233
+ 250
@@ -14345,14 +14861,14 @@
Activity
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
219
Dividend Yield
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
187
@@ -14387,14 +14903,14 @@
Change with currency effect
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
52
Performance with currency effect
- apps/client/src/app/components/position-detail-dialog/position-detail-dialog.html
+ apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
79
@@ -14419,6 +14935,13 @@
66
+
+ Internationalization
+
+ apps/client/src/app/app-routing.module.ts
+ 79
+
+