Hauptsächlich ist es ein mediakit; d.h. imagekit erweitert auf alle arten von dateien (letztendlich inkl. document), das eine grundsätzliche struktur bietet 1. für automatische konvertierung in jeweils andere formate denkbar eben auch bild -> pdf, film -> bild etc., pdf -> epub conversion-quere mit celery klarer state "noch nicht konvertiert" 2. klare dateisystemverwaltung der originaldateien + automatische / manuelle konvertierungen manuelle konvertierung heißt: die automatische konvertierung kann jederzeit überschrieben werden 3. zugriffskontrolle: grundsätzlich ist keine datei öffentlich zugänglich, specs können mit zugriffskontrolle (anonym etc.) zugänglich gemacht werden, dazu wird x-sendfile u.ä. verwendet 4. benennung: öffentlich zugänglich sollten alle dateien über generierte namen sein, also slug + konvertierungstyp, so dass heruntergeladene dateien sinnvoll benannt sind 5. umgang mit mehrseitigen dokumenten, also mehrseitige PDF-dokument in bilder zu verwandeln über spezial-descriptor, der page_count und page[index] zurückgeben kann? dann auch jeweils alle seiten im cache ablegen? 6. jeder asset bekommt eine eindeutige globale uuid, für interoperabilität mit z.b. iiif 7. chunk upload 8. batch upload imagekit processors pilkit-processors neue processors: movie pdf assure conversion processors: assure_image schaut, wie die ursprungsdatei (z.b. film, pdf) in ein bild konvertiert werden muss brauche async-processors die also zwangsläufig die konvertierung an einen anderen prozess auslagern (ffmpeg), und darüber aber bescheid wissen; vermutlich ist es richtig, ein lock-file zu schreiben mit z.b. eine pid; oder evtl. einem celery-task-id cachefiles Cachefile ist gleich konvertierte Datei; Cachefile sollte auch immer das manual-pedant verwalten/checken; s.a. CacheFileState: MANUAL_OVERRIDE cachefile backend schreiben, dass unsere dateisystemlayout implementiert zugriffskontrolle möglichst über extra modul realisieren; permissions als zusätzl. config, nicht integriert in specs zugriffspfad über urls.py/views d.h. mediakit selbst liefert alles direkt aus dem filesystem aus außer: originaldateien; diese sollten immer abseits gespeichert werden, damit alles öffentlich mindestens durch specs kontrollierbar ist brauche eigene ImageKitConf SourceGroup? MovieSpec PDFSpec TextDocumentSpec better: MarkupSpec? TextFormatSpec? html doc docx odt epub markdown rst Admin/Upload per Rest-Interface, aufwendigem Widget d.h. in Django-Struktur ist nur das original_file-Feld