diff --git a/CHANGELOG.md b/CHANGELOG.md index 8cd460960..37d2d1204 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ 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 a blog post: _Ghostfolio meets Internet Identity_ + ## 1.171.0 - 22.07.2022 ### Added diff --git a/apps/client/src/app/app-routing.module.ts b/apps/client/src/app/app-routing.module.ts index ceeb44b54..aeade7b57 100644 --- a/apps/client/src/app/app-routing.module.ts +++ b/apps/client/src/app/app-routing.module.ts @@ -78,6 +78,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: 'en/blog/2022/07/ghostfolio-meets-internet-identity', + loadChildren: () => + import( + './pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.module' + ).then((m) => m.GhostfolioMeetsInternetIdentityPageModule) + }, { path: 'en/blog/2022/07/how-do-i-get-my-finances-in-order', loadChildren: () => diff --git a/apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.html b/apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.html index f2239ccd3..ae3aa358b 100644 --- a/apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.html +++ b/apps/client/src/app/pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.html @@ -4,7 +4,7 @@

Hallo Ghostfolio 👋

-
31.07.2021
+
2021-07-31

diff --git a/apps/client/src/app/pages/blog/2021/07/hello-ghostfolio/hello-ghostfolio-page.html b/apps/client/src/app/pages/blog/2021/07/hello-ghostfolio/hello-ghostfolio-page.html index 684a53246..47c2819fb 100644 --- a/apps/client/src/app/pages/blog/2021/07/hello-ghostfolio/hello-ghostfolio-page.html +++ b/apps/client/src/app/pages/blog/2021/07/hello-ghostfolio/hello-ghostfolio-page.html @@ -4,7 +4,7 @@

Hello Ghostfolio 👋

-
31.07.2021
+
2021-07-31

diff --git a/apps/client/src/app/pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.html b/apps/client/src/app/pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.html index 36863b9fa..7e40176d3 100644 --- a/apps/client/src/app/pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.html +++ b/apps/client/src/app/pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.html @@ -7,7 +7,7 @@ 👻 Ghostfolio – First months in Open Source -

05.01.2022
+
2022-01-05

diff --git a/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page-routing.module.ts b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page-routing.module.ts new file mode 100644 index 000000000..6d2d1d49c --- /dev/null +++ b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page-routing.module.ts @@ -0,0 +1,19 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { AuthGuard } from '@ghostfolio/client/core/auth.guard'; + +import { GhostfolioMeetsInternetIdentityPageComponent } from './ghostfolio-meets-internet-identity-page.component'; + +const routes: Routes = [ + { + path: '', + component: GhostfolioMeetsInternetIdentityPageComponent, + canActivate: [AuthGuard] + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class GhostfolioMeetsInternetIdentityRoutingModule {} diff --git a/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.component.ts b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.component.ts new file mode 100644 index 000000000..6a83a8f4b --- /dev/null +++ b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.component.ts @@ -0,0 +1,9 @@ +import { Component } from '@angular/core'; + +@Component({ + host: { class: 'page' }, + selector: 'gf-ghostfolio-meets-internet-identity-page', + styleUrls: ['./ghostfolio-meets-internet-identity-page.scss'], + templateUrl: './ghostfolio-meets-internet-identity-page.html' +}) +export class GhostfolioMeetsInternetIdentityPageComponent {} diff --git a/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.html b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.html new file mode 100644 index 000000000..c75d2a101 --- /dev/null +++ b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.html @@ -0,0 +1,183 @@ +

+
+
+
+
+

Ghostfolio meets Internet Identity

+
2022-07-23
+ Ghostfolio meets Internet Identity Teaser +
+
+

+ Ghostfolio, the web-based personal + finance management software, supports passwordless authentication as + of now thanks to the integration of + Internet Identity. This + blockchain authentication system enables you to sign in securely and + anonymously to Ghostfolio. With this latest update, Ghostfolio is + ready for Web3. +

+
+
+
+
+

Track your portfolio without being tracked

+
+
+
+
+

+ To avoid the security issues that arise with password authentication + on the traditional web, the + Internet Computer + blockchain by dfinity has + introduced a new cryptographic authentication system. It is called + Internet Identity and is as convenient to use as Web2 + OAuth ("Open + Authorization") providers like Google Sign-In or + Facebook Login. +

+
+
+

How to use Internet Identity?

+

+ Internet Identity is based on the + WebAuthn protocol + and uses secure cryptographic authentication. It provides three + options to authenticate yourself: +

+
    +
  • + The built-in biometric authentication methods of your smartphone + or laptop (fingerprint sensor, Face ID, Touch ID) +
  • +
  • The password or pin to unlock your computer or mobile phone
  • +
  • A security key plugged into the USB port of your computer
  • +
+

+ When you authenticate with Internet Identity, the service + only gets a dedicated pseudonym rather than sensitive user data like + the email address or phone number. This preserves your anonymity and + prevents you being tracked on the Internet. +

+
+
+

The key benefits in a nutshell

+
    +
  • + Authenticate yourself securely without the need of an email + address, username, or a password: all you need is your device to + log in. +
  • +
  • + Built-in recovery mechanisms to ensure you are not locked out of + any service that requires the Internet Identity. +
  • +
  • + Log in to various Internet services without being tracked by big + tech companies. +
  • +
+
+
+

+ If you would like to provide feedback or get involved in further + development of Ghostfolio, please get in touch by email via + hi@ghostfol.io or on Twitter + @ghostfolio_. +

+

+ I look forward to hearing from you.
+ Thomas from Ghostfolio +

+
+
+
    +
  • + Anonymity +
  • +
  • + App +
  • +
  • + Auth Provider +
  • +
  • + Authentication +
  • +
  • + Blockchain +
  • +
  • + Cryptography +
  • +
  • + dfinity +
  • +
  • + Face ID +
  • +
  • + Fingerprint +
  • +
  • + Ghostfolio +
  • +
  • + Internet Computer +
  • +
  • + Internet Identity +
  • +
  • + OAuth +
  • +
  • + Open Source +
  • +
  • + OSS +
  • +
  • + Password +
  • +
  • + passwordless +
  • +
  • + Portfolio +
  • +
  • + Security +
  • +
  • + Software +
  • +
  • + Technology +
  • +
  • + Touch ID +
  • +
  • + Wealth Management +
  • +
  • + Web3 +
  • +
  • + WebAuthn +
  • +
+
+
+
+
+
diff --git a/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.module.ts b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.module.ts new file mode 100644 index 000000000..acdeb9f4a --- /dev/null +++ b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.module.ts @@ -0,0 +1,17 @@ +import { CommonModule } from '@angular/common'; +import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; + +import { GhostfolioMeetsInternetIdentityRoutingModule } from './ghostfolio-meets-internet-identity-page-routing.module'; +import { GhostfolioMeetsInternetIdentityPageComponent } from './ghostfolio-meets-internet-identity-page.component'; + +@NgModule({ + declarations: [GhostfolioMeetsInternetIdentityPageComponent], + imports: [ + CommonModule, + GhostfolioMeetsInternetIdentityRoutingModule, + RouterModule + ], + schemas: [CUSTOM_ELEMENTS_SCHEMA] +}) +export class GhostfolioMeetsInternetIdentityPageModule {} diff --git a/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.scss b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.scss new file mode 100644 index 000000000..5d4e87f30 --- /dev/null +++ b/apps/client/src/app/pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.scss @@ -0,0 +1,3 @@ +:host { + display: block; +} diff --git a/apps/client/src/app/pages/blog/2022/07/how-do-i-get-my-finances-in-order/how-do-i-get-my-finances-in-order-page.html b/apps/client/src/app/pages/blog/2022/07/how-do-i-get-my-finances-in-order/how-do-i-get-my-finances-in-order-page.html index abe47b04b..63f475380 100644 --- a/apps/client/src/app/pages/blog/2022/07/how-do-i-get-my-finances-in-order/how-do-i-get-my-finances-in-order-page.html +++ b/apps/client/src/app/pages/blog/2022/07/how-do-i-get-my-finances-in-order/how-do-i-get-my-finances-in-order-page.html @@ -4,7 +4,7 @@

How do I get my finances in order?

-
14.07.2022
+
2022-07-14

diff --git a/apps/client/src/app/pages/blog/blog-page.html b/apps/client/src/app/pages/blog/blog-page.html index 17153fd52..12f16b654 100644 --- a/apps/client/src/app/pages/blog/blog-page.html +++ b/apps/client/src/app/pages/blog/blog-page.html @@ -2,6 +2,32 @@

Blog

+ + + + +
@@ -14,7 +40,7 @@
How do I get my finances in order?
-
14.07.2022
+
2022-07-14
First months in Open Source
-
05.01.2022
+
2022-01-05
Hello Ghostfolio
-
31.07.2021
+
2021-07-31
Hallo Ghostfolio
-
31.07.2021
+
2021-07-31
https://ghostfol.io - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/about - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/about/changelog - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/blog - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/de/blog/2021/07/hallo-ghostfolio - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/demo - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/en/blog/2021/07/hello-ghostfolio - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/en/blog/2022/01/ghostfolio-first-months-in-open-source - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 + + + https://ghostfol.io/en/blog/2022/07/ghostfolio-meets-internet-identity + 2022-07-23T00:00:00+00:00 https://ghostfol.io/en/blog/2022/07/how-do-i-get-my-finances-in-order - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/features - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/markets - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/pricing - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/register - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00 https://ghostfol.io/resources - 2022-07-14T00:00:00+00:00 + 2022-07-23T00:00:00+00:00