From b921574a32414dd53c11acc8da80cd0c46482ef2 Mon Sep 17 00:00:00 2001 From: Thomas <4159106+dtslvr@users.noreply.github.com> Date: Sun, 13 Feb 2022 17:42:57 +0100 Subject: [PATCH] Add feature page --- apps/client/src/app/app-routing.module.ts | 7 + .../components/header/header.component.html | 11 + .../home-holdings/home-holdings.html | 2 +- .../positions-table.component.html | 2 +- apps/client/src/app/core/auth.guard.ts | 1 + .../src/app/pages/about/about-page.html | 3 +- .../features/features-page-routing.module.ts | 15 ++ .../pages/features/features-page.component.ts | 44 ++++ .../src/app/pages/features/features-page.html | 220 ++++++++++++++++++ .../pages/features/features-page.module.ts | 19 ++ .../src/app/pages/features/features-page.scss | 17 ++ apps/client/src/assets/sitemap.xml | 24 +- 12 files changed, 352 insertions(+), 13 deletions(-) create mode 100644 apps/client/src/app/pages/features/features-page-routing.module.ts create mode 100644 apps/client/src/app/pages/features/features-page.component.ts create mode 100644 apps/client/src/app/pages/features/features-page.html create mode 100644 apps/client/src/app/pages/features/features-page.module.ts create mode 100644 apps/client/src/app/pages/features/features-page.scss diff --git a/apps/client/src/app/app-routing.module.ts b/apps/client/src/app/app-routing.module.ts index 8fde79cd7..0c6e7c2ab 100644 --- a/apps/client/src/app/app-routing.module.ts +++ b/apps/client/src/app/app-routing.module.ts @@ -66,6 +66,13 @@ const routes: Routes = [ './pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.module' ).then((m) => m.FirstMonthsInOpenSourcePageModule) }, + { + path: 'features', + loadChildren: () => + import('./pages/features/features-page.module').then( + (m) => m.FeaturesPageModule + ) + }, { path: 'home', loadChildren: () => diff --git a/apps/client/src/app/components/header/header.component.html b/apps/client/src/app/components/header/header.component.html index 4aeab5574..493e719f3 100644 --- a/apps/client/src/app/components/header/header.component.html +++ b/apps/client/src/app/components/header/header.component.html @@ -238,6 +238,17 @@ > + Features Manage Activities...Manage Activities diff --git a/apps/client/src/app/components/positions-table/positions-table.component.html b/apps/client/src/app/components/positions-table/positions-table.component.html index f6529f55c..38f5110b6 100644 --- a/apps/client/src/app/components/positions-table/positions-table.component.html +++ b/apps/client/src/app/components/positions-table/positions-table.component.html @@ -139,7 +139,7 @@ class="my-3 text-center" > diff --git a/apps/client/src/app/core/auth.guard.ts b/apps/client/src/app/core/auth.guard.ts index b8c629a7c..b6b95e8a6 100644 --- a/apps/client/src/app/core/auth.guard.ts +++ b/apps/client/src/app/core/auth.guard.ts @@ -20,6 +20,7 @@ export class AuthGuard implements CanActivate { '/blog', '/de/blog', '/en/blog', + '/features', '/p', '/pricing', '/register', diff --git a/apps/client/src/app/pages/about/about-page.html b/apps/client/src/app/pages/about/about-page.html index ca3375652..90c1632a6 100644 --- a/apps/client/src/app/pages/about/about-page.html +++ b/apps/client/src/app/pages/about/about-page.html @@ -32,7 +32,8 @@
If you encounter a bug or would like to suggest an improvement or a
- new feature, please join the Ghostfolio
+ new feature, please join the
+ Ghostfolio
();
+
+ /**
+ * @constructor
+ */
+ public constructor(
+ private changeDetectorRef: ChangeDetectorRef,
+ private userService: UserService
+ ) {}
+
+ /**
+ * Initializes the controller
+ */
+ public ngOnInit() {
+ this.userService.stateChanged
+ .pipe(takeUntil(this.unsubscribeSubject))
+ .subscribe((state) => {
+ if (state?.user) {
+ this.user = state.user;
+
+ this.changeDetectorRef.markForCheck();
+ }
+ });
+ }
+
+ public ngOnDestroy() {
+ this.unsubscribeSubject.next();
+ this.unsubscribeSubject.complete();
+ }
+}
diff --git a/apps/client/src/app/pages/features/features-page.html b/apps/client/src/app/pages/features/features-page.html
new file mode 100644
index 000000000..baa2aa844
--- /dev/null
+++ b/apps/client/src/app/pages/features/features-page.html
@@ -0,0 +1,220 @@
+
+ Check out the numerous features of Ghostfolio to
+ manage your wealth.
+ Keep track of your stock purchases and sales.
+ Are you into ETFs (Exchange Traded Funds)? Track your ETF
+ investments.
+
+ Keep track of your Bitcoin and Altcoin holdings.
+
+ Are you building a dividend portfolio? Track your dividend in
+ Ghostfolio.
+
+ Track all your treasuries, be it your luxury watch or rare
+ trading cards.
+ Import and export your investment activities.
+ Keep an eye on all your accounts across multiple platforms
+ (multi-banking).
+
+ Check the rate of return of your portfolio for
+
+ Check the allocations of your portfolio by account, asset class,
+ currency, region, and sector.
+
+ Ghostfolio automatically switches to a dark color theme based on
+ your operating system's preferences.
+
+ Keep calm and activate Zen Mode if the markets are going crazy.
+
+ Check the current market mood (Fear & Greed Index) within the app.
+
+ Identify potential risks in your portfolio with Ghostfolio
+ X-ray, the static portfolio analysis.
+
+ Join the Ghostfolio
+ Slack channel
+ full of enthusiastic investors and discuss the latest market
+ trends.
+
+ The source code is fully available as
+ open source software
+ (OSS) and licensed under the AGPLv3 License.
+
+ Features
+
+ Stocks
+ ETFs
+ Cryptocurrencies
+ Dividend
+ Wealth Items
+ Import and Export
+ Multi-Accounts
+
+ Portfolio Calculations
+
+ Today
, YTD
, 1Y
,
+ 5Y
, and Max
.
+
+ Portfolio Allocations
+
+ Dark Mode
+ Zen Mode
+
+ Market Mood
+
+
+ Static Analysis
+
+ Community
+ Open Source Software
+