api/Featurecreep.md
2018-06-13 13:49:19 +02:00

2.4 KiB

Featurecreep

  • Listen erstellen, ändern, löschen
  • Todopunkte zu Listen hinzufügen, bearbeiten, löschen
  • Listen teilen (Email/Benutzername angeben, oder öffentlicher link (+einstellbar ob mit registrierung oder nicht, oder passwortgeschützt)
  • Rechtemanagement

Todopunkte

  • ID
  • Text
  • Description
  • Status (done, not done)
  • Fälligkeitsdatum
  • Erinnerungsdatum (und zeit)
  • Zuständig (später, mit teilen)
  • Liste wo der Punkt drauf ist
  • Timestamps

Websockets

Das ganze soll als Websocket zur verfg gestellt werden, der dann automatisch bescheidsagt wenn sich was ändert. Benachrichtigungen machen clients.

API-Roadmap

Ab v0.3 können wir mit clients anfangen.

v0.1

  • Listen erstellen/bearbeiten/löschen

    • Ansehen
      • Übersicht
      • Einzelne liste mit allen todopunkten
    • Erstellen
    • Bearbeiten
    • Löschen
  • Todopunkte hinzufügen/abhaken/löschen

    • Erstellen
    • Bearbeiten (abhaken)
    • Löschen
  • Überall nochmal überprüfen dass der Nutzer auch das Recht hat die Liste zu löschen

  • "Apiformat" Methoden, damit in der Ausgabe zb kein Passwort drin ist..., oder created/updated von Nutzern... oder ownerID nicht drin ist sondern nur das ownerobject

  • Swaggerdocs !!!!

  • Rechte überprüfen (in extra Funktion auslagern, dann wird das einfacher später):

    • Listen erstellen
    • Listen bearbeiten (nur eigene im Moment)
    • Listenpunkte hinzufügen
    • Listenpunkte bearbeiten

v0.2

  • Listen teilbar
    • Mit anderen Nutzern
    • Mit Link
      • Offen
      • Passwortgeschützt

v0.3

  • Rechtemanagement (Und damit Unterscheidung zwischen Ownern und Mitgleidern)

v0.4

  • Websocket?

Clients

  • Webapp (vue.js) + Bulma
  • "Native" Clients (auf dem Rechner installiert (mit elektron oder so? Oder native?)
  • Android (Flutter)
  • iOS (mit Framework???? (Ging das nich auch mit Flutter?))

Anderes

  • CI aufsetzen

  • Tests schreiben

  • Ne Instanz mit den docs aufsetzen

  • Namen finden

  • Alle Packages umziehen

  • Swagger UI aufsetzen

  • mgl. zum Emailmaskieren haben (in den Nutzereinstellungen, wenn man seine Email nicht an alle Welt rausposaunen will)

  • Mgl. zum Accountlöschen haben (so richtig krass mit emailverifiezierung und dass alle Privaten Listen gelöscht werden und man alle geteilten entweder wem übertragen muss oder auf provat stellen)