User:Alexander Roidl/flask

From Media Design: Networked & Lens-Based wiki
Jump to navigation Jump to search

Development

TO DO

  • Make distributed character visible (how much is this book part of xpub / varia .... )
    • How much XPUB is this book |-x----------------------|
    • How much is this book VARIA |------------------x-----|
  • EX / IMPORT CSV
  • PDF to Text
  • Chat more interactive with search? with Tash?


Software

Flask

http://flask.pocoo.org

RQLite

https://github.com/rqlite/rqlite

SQLAlchemy

https://www.sqlalchemy.org/

Further Development

Screen Shot 2018-06-01 at 10.19.48.png
  • Added chat with integration of socket io
  • added »Newsticker« to top of page
  • make main table sortable

First Prototype

Screen Shot 2018-05-25 at 00.18.56.png

first version of lib (super super prototype)

http://37.139.6.124:8080/


with first API setup:

http://37.139.6.124:8080/api/books

{
  "books": [
    {
      "author": "Jan Tschichold", 
      "file": "The_Form_of_the_Book___Essays_on_the_Moral_-_Jan_Tschichold.pdf", 
      "id": 1, 
      "title": "The Form of the Book"
    }
  ]
}

Code on the git:

https://git.xpub.nl/xpub-lib/log.html

Long To Do List (obviously)

  • much more properties for books
    • multiple authors?
    • description
    • date uploaded?
    • ISBN
    • MD5 to link books (more stable than db ID)
    • Filetype (PDf, mobi, epub)
    • Publisher
    • Tags
    • Categories? (also important for infrastructure)
  • Keep SQLite or python shelve? -> RQLITE
  • function to make stacks
  • delete books from DB?
  • Coverimage from PDF / ebooks
    • extract_cover.py <PDF file path> already done, but need to connect
  • access to python scripts
    • like: python add_book.py <path to file> <name> <properties …>
  • do we need users? (→ also conceptional question) -> NO USERS
  • Interface, Interface, Interface
    • search, links, categories, shelfs/stacks
  • API
    • make all that above accessible via RESTful API
    • add POST / PUT / DELETE (not sure how it works yet)

  • Make Files only accessible via local network, but catalog online