Skip to content

opatry/my-bookshelf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Build and deploy Status

Reading

The content is, most of the time, written using [Mโ†“] Markdown and served by nanoc.

This website is available at https://lecture.opatry.net/ using ๐Ÿ”ฅ Firebase hosting.

๐Ÿ›  Requirements & Initial setup

$ gem install bundler
$ bundle install
$ bundle exec nanoc compile

Firebase Hosting

Firebase CLI Reference

Install CLI Tools

$ npm install

Deploy

$ ./node_modules/.bin/firebase deploy --only hosting

TODO

  • export data from SC/Babelio instead of scrapping
  • clean JS (use const & let instead of var, normalize quotes, colon etc)
  • book release date
  • og:title improvement & prez in WhatsApp & Slack demo (test with https://www.opengraph.xyz/ or https://opengraph.dev/ or https://toolsaday.com/seo/open-graph)
    • desc Recommended length: 150 - 160 characters
    • image Recommended dimension: 1200 x 630 pixels (+ not simple cover, ideally fancy rendering (with cover) and text for attractiveness)
    • emoji book redundant with favicon, only keep it in index/home page title
  • no index etc. (see https://toolsaday.com/seo/noindex-checker)
  • image multi res & responsive (, for avatar in particular)
  • clean CSS
  • stars themed with CSS and value tweak, maybe custom star formatter to make it styleable or submit a feature request or a PR to tabulator
  • avatar picture with real photo
  • Add span for serie prefix "(.+), tome \d+:" + In responsive compact mode, hide it.

Scrapping

Scraps Sens Critique and Babelio readings to generate a static site with fetch & consolidated data.

Tech stack

Google Books API Auth

Authentication with OAuth 2.0. Alternatively, use an API Key

See https://developers.google.com/books/docs/v1/using

Add credentials (Web, to allow customizing redirect URI and in particular port)

Enable Google Books API Library

API reference