Jurnalib is a web application featuring fast searching of journal rank information by Scimago.
You can go to https://jurnalib.hasim.cloud and start searching, or deploy your own self-managed app. Instruction for deployment can be seen here
System architecture of Jurnalib is detailed in diagram below.
To deploy this application, you can use Docker or install directly on your system.
For deployment with docker, first install required dependencies:
docker run --rm \
-u "$(id -u):$(id -g)" \
-v "$(pwd):/var/www/html" \
-w /var/www/html \
laravelsail/php82-composer:latest \
composer install --ignore-platform-reqs
Run container with Laravel Sail:
./vendor/bin/sail up
Build frontend assets:
./vendor/bin/sail npm install
./vendor/bin/sail npm run build
For the server to work properly, you need to configure environment.
- Copy
.env.example
to.env
. - Setup Google Service Account and set the path to credential in this environment variable:
GOOGLE_SERVICE_ACCOUNT=
- Create new folder in Google Drive for storing journal excel files. Currently Jurnalib only support format exported from Scimago.
- Upload file exported from Scimago, to the folder.
- Add Folder ID to this environment variable:
GOOGLE_FOLDER_ID=
- Setup cron for periodic tasks with this script:
./script/setup_cron.sh
- (optional) Set Polling schedule with cron expression:
SCHEDULE_DOWNLOAD_DRIVE=