The objective of the {mycomicslibrary} package is to manage your comics library.
The app can be seen there : https://connect.thinkr.fr/mycomicslibrary/
You can install the development version of mycomicslibrary from GitHub with:
# install.packages("devtools")
devtools::install_github("ymansiaux/mycomicslibrary", dependencies = TRUE)
This app has been developed using R 4.4.0 and Python 3.12.4.
You should install Python.
# install.packages("reticulate")
reticulate::install_python("3.12.4")
The dependencies, both R and Python dependencies, can be installed using
{renv}
:
# install.packages("renv")
renv::restore()
It is advised to set the following environment variables in your .Renviron file:
COVERS_PATH = "path_to_app_storage/covers"
COMICS_SQL_PATH = "path_to_app_storage/db/db.sqlite"
COVERS_PATH
will be used to store your books covers and
COMICS_SQL_PATH
will be used to store your comics library.
If theses environment variables are not set, the app will use temporary directories, which implies that your library and covers will be lost when you close the app.
To run the app, you can use the following command:
mycomicslibrary::run_app()
The app has been developed using the {shiny} package and the following ressources:
-
books characteristics are retrieved from the Open Library API : https://openlibrary.org/dev/docs/api/search
-
html template : https://startbootstrap.com/template/scrolling-nav
-
Python code to extract ISBN from images : https://stackoverflow.com/questions/67423405/is-there-an-r-package-to-read-a-barcode-from-an-image
-
JS libraries
- sweetalert2: https://sweetalert2.github.io/
- gridjs : https://gridjs.io/
- chartjs : https://www.chartjs.org/
-
html template to take pictures with the webcam : https://usefulangle.com/post/352/javascript-capture-image-from-camera