[HN Gopher] I made a virtual bookshelf
       ___________________________________________________________________
        
       I made a virtual bookshelf
        
       Author : petargyurov
       Score  : 257 points
       Date   : 2022-05-07 11:35 UTC (11 hours ago)
        
 (HTM) web link (petargyurov.com)
 (TXT) w3m dump (petargyurov.com)
        
       | mellosouls wrote:
       | Would be a nice coding project for somebody to add a pull from
       | GoodReads etc to populate the books for people with accounts.
        
         | mmetcalfe wrote:
         | I have an old project where I tried rendering books as a shelf
         | and pulled the data from GoodReads. Petar's book design is much
         | nicer
         | 
         | e.g. https://bookshelf-maxmetcalfe.vercel.app/?author=7 (books
         | authored by Bill Bryson)
        
       | compressedgas wrote:
       | Perhaps related: https://github.com/andysylvester/federated-
       | bookshelves
        
       | esclear wrote:
       | A nice virtual bookshelf that also has reviews / notes for all of
       | the books is https://books.rixx.de/. It also has categories and a
       | graph of relations between books. The code is open source as
       | well: https://github.com/rixx/books.rixx.de
        
         | petargyurov wrote:
         | Oh I really like that. Thanks for sharing!
        
       | Brajeshwar wrote:
       | This is nice. I didn't try but to get a pseudo-random variation
       | of the book height, will it be possible to do a pre-defined
       | Cicada Principle[1] method, say, pick 20-30 heights and keep
       | picking them up.
       | 
       | There seem to be quite a lot of people who have their own book
       | collection. I'm still looking for something simple that can spit
       | out a HTML front; and yet to find something I like.
       | 
       | On another note, recently I was looking for a Library Management
       | System for a small community, with a current book collection of
       | over 25,000. I looked a bunch of Open Source Solutions (most are
       | too complex). I also do not want to do build anything from
       | scratch.
       | 
       | I settled on Libib[2] and the subscription is economical enough
       | for what we are looking for.
       | 
       | 1. https://lea.verou.me/2020/07/the-cicada-principle-
       | revisited-...
       | 
       | 2. https://www.libib.com
        
       | lawgimenez wrote:
       | Curious Incident of the Dog in the night time was the last
       | physical book I bought. Such a good read. I really enjoyed that
       | book.
        
       | justhw wrote:
       | Very cool. Are you getting the images manually? I built something
       | similar a while back but never took off.
       | 
       | https://bookshulf.com/
        
         | petargyurov wrote:
         | Nice! Yeah, the images are manually added in; in fact, all of
         | the book's metadata is.
        
       | alephnan wrote:
       | https://en.m.wikipedia.org/wiki/Shelfari
        
       | vibbix wrote:
       | I love this!!! I was hoping one day to getting around and making
       | a virtual bookshelf myself to outline ideas in books I liked.
        
       | TheGoodBarn wrote:
       | I did the same in 2020! I haven't updated the site in a few years
       | and track on Notion now, but it's fun!
       | https://spaghet.me/bookshelf
        
       | tzury wrote:
        
         | micromacrofoot wrote:
         | do you really need to belittle someone here
        
           | doovd wrote:
           | Or anywhere really tbf
        
           | aaron695 wrote:
        
         | gus_massa wrote:
         | I have no clue about the personal life of the OP, but I can
         | share my case.
         | 
         | I have two small children (and an old one). During 2020 we had
         | no kindergarten, no visits to grandma and no babysitter,
         | because the lockdown was very strict here.
         | 
         | Also I teach in the first year of the university, and we had
         | everything ready for the presencial clases as usual. We had to
         | switch to virtual clases with a head-up of one month [1] [2].
         | 
         | So I had to drop my hobbies and reduce my research time and
         | other not urgent activities.
         | 
         | [Note: A fixed weekly Zoom/Meet/Teams meeting with your friends
         | helps a lot to keep your mental sanity.]
         | 
         | [1] How do you replace a blackboard? A real blackboard is very
         | difficult to read in a Zoom/Meet/Teams meeting. A few of my
         | coworker bought one, but had to switch to other methods.
         | 
         | [2] Moodle has like a thousand of options and it takes a lot of
         | time to find the combination that is more similar to what you
         | want and coordinate with your coworkers to find the best one.
        
         | petargyurov wrote:
         | I get your point, but like I said, I didn't have the habit.
        
           | tintedfireglass wrote:
           | Maybe this project gave you the motivation to read I guess?
        
           | tzury wrote:
           | Obviously I wrote this with humor. Seeing it was not welcomed
           | by the super serious members.
        
         | sronors wrote:
         | To provide more anecdata, I consistently read more than in the
         | original post. But I found myself reading less during 2020 even
         | though I had more time to read.
         | 
         | I guess 2020 just sucked.
        
       | anandchowdhary wrote:
       | Looks super nice! I myself use GitHub Issues to track my reading
       | here: https://github.com/AnandChowdhary/books. It has a GitHub
       | Action that tracks reading and generates a summary and API:
       | https://github.com/AnandChowdhary/bookshelf-action
        
         | cjlm wrote:
         | Your repo gave me the inspiration to do the same with Eleventy
         | [0] Thank you!
         | 
         | [0] https://cjlm.ca/reading/
        
         | rohithkp wrote:
         | This is very cool! I just setup an instance for myself!
        
         | petargyurov wrote:
         | Very cool! I like that you can use labels on issues as tags.
         | Neat project.
        
       | nathias wrote:
       | very cool
        
       | offbyewon wrote:
       | This is a cool idea. It motivated me to stash a list of the books
       | I've listened to on Audible. I wrote a blog post that has a JS
       | snippet you can run against the Audible webapp, which makes it
       | easier to get the list of titles (it just parses the DOM and
       | gives you a plain text version).
       | 
       | https://blog.techotom.com/post/2022-05-07-get-your-audible-b...
        
       | mahastore wrote:
       | Does not work in Safari
        
         | jws wrote:
         | More specifically, in desktop Safari the books curtsey but are
         | behind the unmoved books and you can't really see their covers.
        
       | soheil wrote:
       | I was hoping it to be divided into two bookshelves one for "books
       | read" and much much more importantly one for "books have not
       | read".
       | 
       | You don't learn much from what you already know.
        
       | avinassh wrote:
       | This looks so cool! Thanks for making it open source and sharing.
       | 
       | This instantly reminded me of Shelfari, I had lots of fun adding
       | and cataloging books on it.
        
       | rland wrote:
       | > While the Linux open source operating spans 15 million lines of
       | code across 40,000 software files, Google engineers modify 15
       | million lines of code across 250,000 files each week.
       | 
       | Depressing. Can you imagine the utility to the world if all of
       | this activity weren't being focused on selling ads?
        
         | fnordpiglet wrote:
         | To be fair they primarily offer services that attract people to
         | their ads and a lot of those services are highly useful and
         | generally beneficial. That said, yes, I wish they had found
         | some other way to monetize and support their services that
         | wasn't so useless, annoying, and privacy invasive
        
       | nmstoker wrote:
       | Just a little thing: it's nice that it works on mobile too (many
       | hover activities don't but here it's fine). And the text of the
       | titles is selectable even though it's vertical (thanks to CSS)
        
       | CyanDeparture wrote:
       | Looks great! Two things you could do to make it super smooth is
       | speed up the animation by about two thirds, and make it so one
       | book is put back before the second one gets animated outwards.
        
       | mysterioushat wrote:
       | I've tried similar myself but I love the visual simplicity of
       | this. Much nicer than a list. If you're interested I came across
       | this year's ago ... some nice inspirations and ways of finding
       | new stuff.
       | 
       | https://tomcritchlow.com/wiki/books/bookshelves/
       | 
       | My favourite is this one with the little toggle for reviews or
       | comments:
       | 
       | https://daverupert.com/bookshelf/
        
       | robertlf wrote:
       | Nice idea but the vertical titles are too hard to read. Why not
       | just stack the books one on top of the other for the sake of
       | usability?
        
         | Xeronate wrote:
         | I think the vertical tiles could be okay, but color contrast
         | needs to be improved.
        
       | dilippkumar wrote:
       | I see a lot of Demon Cycle books. Are they good?
       | 
       | I'm finishing up on the last few Malazan books, looking for
       | recommendations on what to read next.
        
         | petargyurov wrote:
         | I fell in love with the first book and wholeheartedly recommend
         | the entire series. It's great.
        
       | twodave wrote:
       | I read the title as "VR bookshelf" and imagined someone scanning
       | in an entire book and representing it in the 'verse in some way.
       | Not to derail from the content here too much, but I think this
       | other idea could actually be pulled off pretty elegantly.
        
       | drBonkers wrote:
       | I'd love this in the style of Stripe Press's page [1].
       | 
       | [1] https://press.stripe.com/
        
         | petargyurov wrote:
         | Holy crap, that's beautiful and way better than mine! Any idea
         | how they made it?
        
           | TheRealNGenius wrote:
           | I agree with codazoda, stripe page is borked on safari, but
           | yours works
        
           | codazoda wrote:
           | I disagree that it's better than yours. Looks like crap on my
           | phone and is significant overkill for this. Yours is better.
        
       | ReenD wrote:
       | This is really nice
        
       | janvdberg wrote:
       | Fun! I also did a similar thing [1] which is or more or less a
       | GoodReads clone.
       | 
       | Still looking for a syndicated/federated booklist share tool, so
       | I can track friend's books/reading lists.
       | 
       | [1] https://j11g.com/2019/11/16/foster-how-to-build-your-own-
       | boo...
        
       | ananthakumaran wrote:
       | self-plug: https://ananthakumaran.in/books
        
         | petargyurov wrote:
         | I really like the vertical timeline. Lots of stats and charts,
         | great stuff :)
        
         | FR10 wrote:
         | This is really nice, I like the graphs and the layout overall.
         | How do you manage adding new books, JS?
        
           | ananthakumaran wrote:
           | All the information comes from the Goodreads CSV export.
           | After I complete any book, I export the CSV file and run make
           | task[1]
           | 
           | 1: https://github.com/ananthakumaran/ananthakumaran.github.co
           | m/...
        
       | ibudiallo wrote:
       | I had done a similar one, just without the images. My intention
       | was to add a blurb for each of the books, but friction is the
       | enemy of reading.
       | 
       | https://idiallo.com/library
        
       | 867-5309 wrote:
       | very nice!
       | 
       | looks similar tech to some virtual birthday cards which didn't
       | have enough time to be physically sent halfway across the planet
       | 
       | https://abbey-decorators.co.uk/cards/hoj.html
       | 
       | https://abbey-decorators.co.uk/cards/mij.html
        
       | cheeko1234 wrote:
       | Wow, that's amazing. Can you imagine if this was added to
       | lazylibrarian?
        
         | petargyurov wrote:
         | Haven't heard of LazyLibrarian, but I've licensed this with
         | "Unlicense" so it's effectively free to use for all purposes.
         | Perhaps the authors of LazyLibrarian can use it in some way?
        
       | ChrisMarshallNY wrote:
       | That's cool.
       | 
       | The one thing that would be nice, is if the book that you are
       | examining, appeared _over_ the book to the right of it. The other
       | book 's spine gets in the way.
        
       | Dachande663 wrote:
       | Love this. Reminds of when I spent countless hours using a webcam
       | to scan in all books, movies, and games to Delicious Library[0].
       | 
       | [0] https://delicious-monster.com/
        
         | bredren wrote:
         | What happened to all the data? Did you end up using it?
        
           | Dachande663 wrote:
           | Lost to the sands of time. It had a feature where you could
           | export as HTML and I did used to put it online (with all the
           | thousands of small thumbnails and covers). It's loss is
           | what's making me better at preserving history.
        
       | auggierose wrote:
       | Great idea!
       | 
       | By the way, on the newest safari it doesn't work properly. I
       | tried it then out with Chrome, and no problems there.
        
         | chromejs10 wrote:
         | Came here to say this... The book animates behind all the other
         | ones. I was like "...shouldn't the book be in front of the
         | others so I can see the title? you know... I bet it's because
         | it's Safari". Sure enough Chrome works as expected
        
       | guico wrote:
       | So cool! Would be nice to make the color of the edge match the
       | dominant color of the cover, somehow
        
         | guico wrote:
         | You could use this: https://www.geeksforgeeks.org/extract-
         | dominant-colors-of-an-...
        
       | MaggieL wrote:
       | I just use Librarything
        
       | edmundo wrote:
       | Very cool! I might borrow some of your ideas and implement them
       | on my own reading log (https://edmundo.is/reading). Right now
       | it's just a list of all books I have read, but I'm working on
       | implementing filters for genre and year (year only shows on hover
       | for now, or by tapping the book on mobile), and maybe breaking
       | the grid by year like you have!
        
       | benibela wrote:
       | I wrote an app to track all my read books in a table:
       | https://videlibri.de/
       | 
       | The main feature is to import the books from a library account.
       | At that time I was getting all my books from a library, so I
       | never had to add any book manually, they just appear in my table.
       | 
       | But it is in German, because I only have Germany library cards. I
       | cannot get any more library cards because the libraries refuse to
       | talk to me
        
       | karaterobot wrote:
       | This is cool. It would be neat if I could click the book to view
       | the Librarything page for it.
        
       | mat_jack1 wrote:
       | I'm very interested in visual ways to explore ebooks, papers,
       | articles.
       | 
       | A physical library helps discovering new stuff or occasionally
       | bumping in something. With files you need to be much more
       | deliberate and I feel like you can accumulate a lot without
       | really knowing what you have.
       | 
       | Even if this is a simple visualization it already gives ideas on
       | how much more information you could convey with something
       | similar. Like number of pages, color of the cover, to remind you
       | of the book, different font, etc. A set of cues that can help you
       | navigate in the list of books, at least I suspect :)
        
         | aheilbut wrote:
         | I would love a way to flexibly view and move around lots of
         | PDFs at different scales, to simulate piles on a desk or the
         | floor. For some purposes, something is lost by constraining
         | organization to a regular grid or table.
        
         | WalterBright wrote:
         | When you've got thousands of books, you lose track of what
         | you've got, just like with files.
         | 
         | It's not necessary to ask how I know this :-)
        
           | mat_jack1 wrote:
           | Sure you lose track, but it's so much easier with physical
           | things to bump into already seen items and recognize them. Or
           | also casually being interested by a cover or by the size of
           | the books.
           | 
           | I feel like there could be a better way to handle lots of
           | digital books/articles/songs/films/photos/etc
        
             | WalterBright wrote:
             | Have your lock screen show a random book cover from your
             | collection!
        
       | f0e4c2f7 wrote:
       | I've thought about this before as a physical item. Like maybe a
       | breadbox size ePaper screen that looks like a tiny bookcase with
       | a API back to Goodreads or something to get the book spine
       | images.
       | 
       | You could also have a section that displays random quotes from
       | books in your library.
       | 
       | Unfortunately for now the licensing on color ePaper is still
       | prohibitive and doing it with an lcd seems somehow tacky to me.
        
         | user_7832 wrote:
         | I've also had a similar, but slightly different idea for a
         | practical desktop display - get it to show nice tidbits like a
         | wallpaper. For example, a Newton's cradle, or a spinning top,
         | or a lava lamp or whatever folks put on their desks. Though
         | coding it would be a bit of a challenge for a non-CS guy like
         | me.
        
         | petargyurov wrote:
         | I've been thinking about something very similar too but given
         | the challenges I opted for this approach... for now.
        
           | teleforce wrote:
           | The physical display of the virtual bookshelf is one of my
           | wishlists and this is my comments when ArtFrame was discussed
           | in HN last month [1].
           | 
           | Perhaps if you can make the book width in proportion of the
           | book's number of pages it will be great. Well done for the
           | software, will try this soon.
           | 
           | [1]ArtFrame: E-paper wireless artwork for your living room:
           | 
           | https://news.ycombinator.com/item?id=30839762
        
       | 300bps wrote:
       | Nice job! Reminded me a bit of the e-reader Calibre.
        
       | mftb wrote:
       | That is a lot of fun, great job!
       | 
       | You might think of adding a link or two for each book. Say to the
       | Wikipedia entry for the author, or a review of the book. I was
       | curious about the, "Demon Cycle" for instance, and would have
       | liked to read more about it.
        
         | egypturnash wrote:
         | https://www.goodreads.com/series/46817-the-demon-cycle
        
       | 2OEH8eoCRo0 wrote:
       | Very cool! I wanted to try to make something like this so that I
       | can make my own bookshelf background for zoom calls. I got as far
       | as finding no book spine artwork data sources.
        
       | zeristor wrote:
       | Interesting there's cover art for books, but it would be handy to
       | have spine art too.
       | 
       | I used to buy lots of books and now have them stacked up, I've
       | bought lots of eBooks and whilst I don't trip up on them I don't
       | get into the habit of progressing them. From Physics I've set up
       | collections for books I've got to 1%, 2%, 5%, 10%, 20%, 50% which
       | roughly works out as equal, and I have the little triumph of
       | moving a book forward.
        
       | dyldev wrote:
       | I like the 2d idea! Throwing my reading page out here like
       | others: https://www.dyl.dev/reading
        
       | rsolva wrote:
       | Nice! Simple and effective. For those looking for something more
       | goodreads-looking, I can recommend BookWyrm.
        
       | WHA8m wrote:
       | Well done! Looks very charming :)
       | 
       | Like the other commenter, I've thought about something related
       | before. But I thought about it more like on a platform. If I
       | may... You could make an account and digitalize your bookshelf
       | for you and others to see. You might pin notes, quotes, ratings,
       | open a discussion thread (about paragraphs or the whole book),
       | etc. to a book. The cover art that is displayed could be changed
       | (like a book that was published multiple times under various
       | publishers), but not only to original covers but also community
       | made cover art (pixel art, collages from movie screenshots and so
       | on). You could tag your books and rearrange them accordingly. And
       | so much more...
        
         | petargyurov wrote:
         | Thank you!
         | 
         | I suppose Goodreads or Oku fill that space?
         | 
         | I wanted something a little... visual, hence why I made this
         | instead of using those services myself (also I wanted to learn
         | about CSS transforms).
         | 
         | Since this plugs easily into Jekyll, I have structured it such
         | that each book entry is kind of like an empty blog post. The
         | plan is to enter my notes or review in the .md file for each
         | book and display that somehow.
        
           | jagged-chisel wrote:
           | Perhaps using one of those services as the data source for a
           | library
        
       ___________________________________________________________________
       (page generated 2022-05-07 23:00 UTC)