2020-12-31 11:31:15 +11:00
2020-12-30 23:12:36 +11:00
2020-12-30 23:12:36 +11:00
2020-12-31 11:25:18 +11:00
2020-12-31 11:51:59 +11:00
2020-12-05 19:24:03 +11:00

### TODO: get all this inside a docker container and use compose to do the whole set (pg, flask, ?)
	see this for postgresal: 
		https://hub.docker.com/_/postgres (has several env vars that should work out)
	and probably this:
		https://docs.docker.com/compose/gettingstarted/ (for flask and maybe redis)


# flask -> python web server
# sqlalchemy -> provides db-agnostic python objects of db content (and more)
# flask-sqlachemy combines/wraps this to provide a db.* set of objects based on the 'app' that flask creates
# marshmallow-sqlachemy provides a way to create a 'schema' of your class, then serialize an object to it 
# flask-wtf -> 'what the form' allows form consistency/validation based on defining attributes in a class for each form
# flask-bootstrap -> allows me to format that wtf form with boostrap markup - yet to test if it also means I don't need to include it exlicitly in head, etc.

# install needed binaries (maybe I could have done this instead of pip below too -- when I docker this shit, sort it out?)
sudo apt install python3-pip python3-psycopg2 libpq-dev

### LEARN: supposedly could use virtualenv instead of pip3 install --user? OR even apt to install direct?
# --user sticks python libs in ~/.local/[bin|lib|share]
pip3 install --user flask sqlalchemy flask-sqlalchemy flask-marshmallow SQLAlchemy-serializer flask-wtf flask-bootstrap marshmallow-sqlalchemy


# run the web server by:
python3 main.py

### Remember:
	MUST use form.errors when we have a validator that is fancier than not empty (year_published in book and num_books in series SO FAR)


#### MAYBEs:
MAYBE-1: when moving a book in a series (which is part of 2 series), do we pop-up offer to move parent/child series orders as well to match (think Thomas Covenant)

#### TODOS (next 22):
TODO-5:		should deleting really just ask if want to mark it as SOLD?
TODO-21:	allow a way to add a book as a child of another existing book (opposite of rem_sub_book)
TODO-22:	adding a sub-book when the parent book is in a series, need to add a bsl for it and make it the next (probably)

TODO-8:		show books on shelf list
TODO-9:		show books to buy view / printable
TODO-11:	show unrated books  (with toggle to exclude those with missing in a series)
TODO-12:	show books missing from a series (I own only some of them)
TODO-13:	show books on wish list
TODO-14:	show books that need replacing
TODO-15:	show books I have sold
TODO-16:	show books with poor rating
TODO-17:	view list of possible duplicate books by title
TODO-18:	consider which of the 'books maybe not valid' reports make sense still
	 	 	- can you even have an N/A publisher now for example?
			- but the genre one is interesting
TODO-19:	icons on wish list, etc.?  (not sure I really want them, but if so)
			- wishlist: search-dollar OR https://www.flaticon.com/free-icon/wishlist_868517
		 	- save: https://www.flaticon.com/free-icon/sold_463255?term=sold&page=1&position=6&related_item_id=463255

TODO-20:	ORM all books load is slow
			- should I lazy load all books (ajax the 2nd->last pages in, or not use ORM, and do a quick db.execute()....)
Description
No description provided
Readme 602 KiB
Languages
Python 67.4%
HTML 31.7%
Dockerfile 0.6%
Shell 0.3%