Skip to content

InView ist eine Webapp, mit der eine Privatperson sein Investitionsportfolio an einem zentralen Ort überwachen kann.

Notifications You must be signed in to change notification settings

IDPA-2024b/Nr.7_Investitionsrechner

Repository files navigation

Portfolio Dashboard

Ziel ist es, eine Webapp zu entwickeln, mit der eine Privatperson sein Investitionsportfolio an einem zentralen Ort überwachen kann. Die App soll die Möglichkeit bieten, Aktien, Immobilien, Fahrzeuge, Kryptowährungen und andere Investitionen einzutragen und deren Performance zu überwachen.

Umfang

Core

  1. Aktien im Portfolio eintragen / löschen
  2. Aktien API anbinden um echt Zeit Preise anzuzeigen
  3. Andere Investitionen eintragen / löschen / bearbeiten (Immobilien, Fahrzeuge, Kryptowährungen, etc.)
  4. Statistiken über die Performance der Investitionen anzeigen (Gewinn oder Verlust, Kursdiagramm)
  5. Dashboard mit Gesamtperformance des Portfolios anzeigen (Gewinn oder Verlust, Kursdiagramm)

Additional

  1. Preis Benachrichtigung (bei Aktienpreis x E-Mail versenden)

Use Cases

Use Case Diagramm

Use Case Diagram

Core

UC01: Als Benutzer möchte die Startseite sehen, um mich über die App zu informieren.
UC02: Als Benutzer möchte ich die Datenschutzerklärung sehen, um mich über die Verarbeitung meiner Daten zu informieren.
UC03: Als Benutzer möchte ich eine Seite sehen, welche die Betreiber der App vorstellt, um mich über die App zu informieren.
UC04: Als Benutzer möchte ich Kontakt zu den Betreibern der App aufnehmen können, um Fragen zu stellen.
UC05: Als Benutzer möchte ich mich über Google anmelden können, um die App zu nutzen.
UC06: Als Benutzer möchte ich mein Portfolio einsehen können, um meine Investitionen zu überwachen.
UC07: Als Benutzer möchte ich mein Portfolio filtern können, um nur bestimmte Investitionen anzuzeigen.
UC08: Als Benutzer möchte ein neues Investment hinzufügen können, um dieses zu überwachen.
UC09: Als Benutzer möchte ich auf ein Investment klicken können, um die Performance des Investments zu sehen.
UC10: Als Benutzer möchte ich ein Investment bearbeiten können, um die Daten zu aktualisieren.
UC11: Als Benutzer möchte ich ein Investment als verkauft markieren können, um den Verkauf zu dokumentieren.
UC12: Als Benutzer möchte ich ein Investment löschen können, um es aus meinem Portfolio zu entfernen.
UC13: Als Benutzer möchte ich mich ausloggen können, um die App zu verlassen.

Additional

Noch keine Use Cases vorhanden.

Tech Stack

Frontend: Typescript, React, Chakra UI, Firebase SDK
Datenbank: Firestore
Hosting: Firebase Hosting

Sketches

Landing Page

Landing Page

Bei der Landing Page haben wir uns für eine einfache und übersichtliche Darstellung entschieden.

Login

Login

Auch die Login Page soll einfach und übersichtlich sein.

Dashboard

Dashboard

Über das Dashboard haben wir lange diskutiert, wie wir es gestalten und welche Informationen wir darstellen sollten. Hier sieht man alle Investments und deren gesamt Performance. Um die Performance eines einzelnen Investments zu sehen, kann man auf das Investment klicken und gelangt zur Seite Single Investment.

New Investment

New Investment

Hier soll es möglich sein, sein neues Investment so gut wie möglich zu beschreiben und hinzuzufügen. Wenn man diesen Prozess durchgeht gelangt man zur Single Investment Seite.

Single Investment

Single Investment

Hier sollen alle Informationen zu einem Investment dargestellt werden. Dabei ist es möglich das Investment zu bearbeiten oder als verkauft zu markieren.

Prototype

Den Prototyp haben wir mit Figma erstellt.

Landing Page

Für die Landing/ Welcome Page haben wir eine Auswahl an verschiedenen Komponenten erstellt, welche belibig verwedet werden können, um eine Interesante Landing Seite zu erstellen.

Landing Page

Landing Page

Über unser Design

Sleek Design

Bewertung

Testimonial

Job Angebot

Job Offer

Account erstellen

Create Account

FAQ

FAQ

Dashboard

Dashboard

Hier haben wir uns bereits mit den Farben auseinander gesetzt und ausprobiert, schlussendlich kamen wir zu diesen grünlichem Farbthmeme. Beim Dashboard war es uns ausserdem wichtig relevante Infos so anschaulich wie möglich darzustellen.

New Investment

New Investment

New Investment

Beim New Investment geht man ein Forms durch, bei dem man seine Investition eintragen kann. Auch hier war es uns wichtig es so anschaulich wie möglich zu machen.

Single Investment

Single Investment

Auch wenn sich das Single Investment nicht sehr unterscheidet vom Dashboard, sind einige Details anderst gestaltet. Man sieht Infos wie Marketvalue oder auch die Haltedauer der Investition.

Datenstruktur

Dieser Schritt ist essenziell, damit unsere Datenstruktur einheitlich und konsistent bleibt. Hiermit können wir sicherstellen, dass alle den User oder auch das Investment gleich "Interpretieren".

Aufbau eines Users

interface User {
  uid: string;
  email: string;
  displayName?: string;
  photoURL?: string;
}

Aufbau einer einzelnen Investition

interface Investment {
  id: string;
  name: string;
  symbol: string;
  type: string;
  purchase: Transaction;
  sale?: Transaction;
  historicalData: PriceRecord[];
}

interface Transaction {
  pricePerUnit: number;
  date: string;
  units: number;
}

interface PriceRecord {
  date: string;
  pricePerUnit: number;
}

About

InView ist eine Webapp, mit der eine Privatperson sein Investitionsportfolio an einem zentralen Ort überwachen kann.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages