Giter Club home page Giter Club logo

bookdb's People

Contributors

barrucadu avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

codygman

bookdb's Issues

Drop Seacat

I don't really have any intention on doing any further work on it, so I should migrate to a more updated framework. Something with digestive-functors support would be nice, as then I can simplify all the form processing.

Optional sorting key field

There should be an optional sorting key, to allow authors with different display names and sorting. The motivation for this is Lord Dunsany:

Dunsany, Lord

The display name should be "Lord Dunsany", but for sorting purposes, the name is just "Dunsany".

Keep a history of book locations and reading states

I just read a blog post about history tables, and it reminded me that I've wanted that sort of feature for a long time in bookdb. If there was a log of changes to the reading flag and location, the system would be much more flexible.

I've never got around to implementing it because I won't have any history before that point, which feels like a waste. But putting it off is just increasing the waste!

Forgetting cover images

If a book already has a cover image and the description is updated without a new cover image provided, the old one will be lost (the file is still there, but the database entry doesn't reference it).

Solution 1: Don't overwrite the path to cover image if it's already set, and a new one isn't provided.
Solution 2: Don't store the path to cover image in the database, just use the ISBN (requires normalising file extension, which is currently the only reason it's in the db)

Solution 2 is probably better, although it would require hitting the filesystem to check if books have cover images. Maybe a combined approach is optimal, where the db has a "has cover" flag (which can be set once, and is then never unset), and normalised filenames.

Sort volume numbers correctly

Volume numbers are currently sorted lexicographically rather than numerically.

To work around non-numeric volume numbers (eg, "4a") sorting can attempt to split into a numeric prefix and a textual suffix.

Restrict book suggestion

When looking at some search results, or a filtered book list, the suggestion in the top-right corner should be drawn from books in the list.

Add time stats

I have timestamps going back to 2012 or so, it shouldn't be too hard to produce a few graphs and tables. Things which might be interesting:

  • Number of books read per month, overlaid with last year and average over all years
  • Books read this year (with books read this month or week highlighted)
  • Least recently read books

wrap the book tittles a bit better

Because of one really long book tittle, there is a lot of wasted space in the Title column, so I end up having to scroll left and right a lot for no real reason
2015-11-21-200605_803x331_escrotum

Allow arbitrary static files.

  1. Drop the Stylesheet :: Sitemap and Javascript :: Sitemap routes.
  2. Add a Static :: String -> Sitemap route, which renders as "/static/[string]"
  3. Use wai-middleware-static or something to serve static files, or just put it into the nginx config.
  4. Stop relying on externally-hosted jquery and chart.js

application does not run

I've run this in my local docker using the python:3.8 image.

When I run the app, i get this page: The search server is unavailable. Try again in a minute or two.
I did pip install -y requirements-freeze.txt
basically everything that was in the Dockerfile.

This is after editing serve.py because the redirect breaks the site completely.
from : BASE_URI = os.getenv("BASE_URI", "http://bookdb.nyarlathotep")
to: BASE_URI = os.getenv("BASE_URI", "http://192.168.1.76:8888")

After that I gave up. I dont think this is a repeatable install inside or outside docker.
You also have a port variabl 9200 that is on localhost but not open or called to be open. so i opened that on my container.

I like the project idea... hopefully you can make it so that it works correctly.
I cant spend more time trying to get it to work :(

Reading list view

Would be nice to have a view containing a list of books chosen to be read, with the ability to cross off books and see completion progress. Maybe even have deadlines.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.