- Create single page app with thumbnails of the first page of PDF document. There should be 4 x 5 thumbnails per page.
- When clicking on thumbnail, full document should be shown in full screen modal window.
- On top of the list page there is "add new document" button with document upload window.
- Once document is uploaded, it is shown at the end of the thumbnails list.
- All communication from the front to backend should be through REST API.
- Use any database of your choice (MySQL, PostgreSQL, SQLite, Redis, NoSQL, ....)
- For backend/front please use Laravel or Lumen.
- For frontend you are free to use any framework of your choice.
- Code should be delivered using gitlab, github, or bitbucket
- Code should be PSR-2 valid
- Code should be covered with functional tests
Partially done. Pls see todo section
- Pagination
- Write more functional tests
- Add seeds
- ReactJs
- Laravel 5.7
- Some helpful packages
- Clone repo
git clone https://github.com/yoshkin/reactjs-laravel-pdf-gallery-example.git pdf-gallery-example
- Change dir
cd pdf-gallery-example
composer install
npm install
php artisan storage:link
- Create your database
- Change your ENV setting (for example):
APP_URL=http://pdf-gallery-example.local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=pdf_gallery
DB_USERNAME=root
DB_PASSWORD=
And in the end:
php artisan migrate
npm run development
ornpm run production
PS: you can also use php artisan serve
. But you need to change $baseUrl property in MyTestCase class.
- phpunit
Need to write more tests
The Laravel framework is open-sourced software licensed under the MIT license.