Förderjahr 2017 / Project Call #12 / ProjektID: 2387 / Projekt: SmartRaise
Frontends
Das Frontend einer DApp ist eine statische Javascript-Website. Sie wird über IPFS und Github zur Verfügung gestellt, könnte aber zum Beispiel auch einfach per E-Mail verschickt werden. Eine Besonderheit besteht darin, dass sie statisch ist, das heißt, ohne Web-Server funktioniert. Daten, die für den Betrieb gebraucht werden, werden von der Blockchain geladen. Programmlogik wird im Javascript Frontend und in Smart Contracts der Blockchain abgewickelt.
Zur Nutzung gibt es mehrere "Frontends":
-
Benutzer-Seite: Das ist die Seite, die die meisten Benutzer sehen. Sie zeigt eine Übersicht über die laufenden Projekte, erlaubt das senden von Spenden, und zeigt sonstige Informationen (Rechtliches, FAQs, usw) an.
-
Admin-Seite: Um Projekte anzulegen und zu verwalten, wird ein Admin-Frontend verwendet. Das Design dieser Seiten ist auf Verwaltung optimiert, und erlaubt das Anlegen und Editiren von Informationen.
-
Auditor-Seite: Diese Seiten erlauben es den Prüfern, ihre Projekte zu betreuen. Sie können Berichte hochladen, Zahlungen freigeben und andere Funktionen durchführen.
Smart Contracts
Wenn ein Projekt angelegt wird, erhält sie ein eigenes Smart Contract, die auf die Blockchain geladen wird. Das Smart Contract erfüllt mehrere Funktionen:
-
Basis-Daten: Es werden Basisdaten zum Projekt abgespeichert, und auch IPFS-Verbidungen für die Beschreibungen, Bilder usw.
-
Finanzdaten: Es werden die Finanzierungsziele, Projektdeadlines und so weiter abgespeichert. Das ist besonders wichtig, weil der Smart Contract die korrekte Abwicklung garantiert, und die Daten auch historisch unverändlich gespeichert werden und nachverfolgbar sind.
-
Abwicklungslogik: Der Smart Contract sperrt die eingezahlten Beträge, und erlaubt Auszahlungen nur nach Freigabe des Prüfers. Außerdem werden Berechtigungen und andere Logik verwaltet, zum Beispiel, wer welche Daten ändern darf, ob neu eingegebene Daten korrekt sind, in welcher Phase ein Projekt ist, und so weiter.
Discovery
Discovery ist ein Verzeichnis, in dem aktive Projekte gelistet werden. Projekte können unabhängig davon finanziert und verwendet werden, es hilft aber beim Auffinden von interessanten Projekten.
IPFS
Auf IPFS werden Projektbeschreibungen, Bilder und Dokumente (PDF) abgelegt. Dort können sie dezentral gehostet werden. Bei besonders wichtigen Dokumenten (zb Prüfberichte) werden die IPFS Prüfsummen zusätzlich in den Smart Contract des Projekts gespeichert. Damit ist sicher gestellt, dass Unterstützer nachverfolgen können, warum eine Auszahlung oder Änderung des Projekts erfolgt ist.