opatry / my-bookshelf

πŸ“š Les lectures d'Olivier

Home Page:https://lecture.opatry.net/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

πŸ“š Les lectures d'Olivier

https://lecture.opatry.net/


Languages

Language:Kotlin 72.3%Language:HTML 11.6%Language:Ruby 8.2%Language:CSS 4.7%Language:JavaScript 2.5%Language:Shell 0.8%