# Book Shelf Home book library tracker. Rebuilt using Symfony 8.1, it runs on SQLite, MySQL and PostgreSQL. ## Setup Requires PHP 8.4 or newer with the GD, Exif and PDO extensions. ```bash composer install php bin/console doctrine:migrations:migrate php -S 127.0.0.1:8080 -t public ``` Defaults to using SQLite in var directory. To use another database, set `DATABASE_URL` in `.env.local`. See `.env` for database URL fomats. ## LibraryThing covers With a [LibraryThing developer key](https://www.librarything.com/services/keys.php) in `.env.local`, a book added with an ISBN gets its cover from LibraryThing: ```bash LIBRARYTHING_API_KEY=your-key ``` ## Upgrading the old system `app:import-legacy` copies the data from legacy tables into the current schema. Additionally covers can be imported from the `covers_big` directory. Data is read from MySQL at `LEGACY_DATABASE_URL` set in `.env.local`. ```bash php bin/console doctrine:migrations:migrate php bin/console app:import-legacy --dry-run php bin/console app:import-legacy --covers=/path/to/covers_big --dry-run php bin/console app:import-legacy php bin/console app:import-legacy --covers=/path/to/covers_big ```