This repository includes the frontend of my simple and open source book and movie organizer project bkndmvrgnzr (inofficially also BAMO), which I started building during my work placement at CEWE. It has the following features:
- Keep track of all your books and movies
- Import information from reputable online providers
- Find movies and books by genres, contributors, year of publication and more
- Allow different users to selectively interact with the database via permissions
I generally try to minimize dependencies, but I'm a one man crew and can therefore only support Debian-based Linux distributions as I'm running one myself. Anyway, you need to have the following packages installed for everything to work properly:
- NodeJS as the development base. Install it via the installation guide.
First install the needed packages via npm install
. Then build the program via npm run build
and run it via npm run preview
.
- Login / signup: /
- Welcome: /welcome ROLE_USER
- Book search: /book ROLE_USER
- Book library: /book/library ROLE_USER
- Create a book: /book/create ROLE_EDITOR
- Get a book: /book/[isbn] ROLE_USER
- Update a book: /book/update/[isbn] ROLE_EDITOR
- Book role search: /book-role ROLE_USER
- Create a book role: /book-role/create ROLE_EDITOR
- Get a book role: /book-role/[bookRoleId] ROLE_USER
- Update a book role: /book-role/update/[bookRoleId] ROLE_EDITOR
- Contributor search: /contributor ROLE_USER
- Create a contributor: /contributor/create ROLE_EDITOR
- Get a contributor: /contributor/[contributorId] ROLE_USER
- Update a contributor: /contributor/update/[contributorId] ROLE_EDITOR
- Genre search: /genre ROLE_USER
- Create a genre: /genre/create ROLE_EDITOR
- Get a genre: /genre/[genreId] ROLE_USER
- Update a genre: /genre/update/[genreId] ROLE_EDITOR
- Movie search: /movie ROLE_USER
- Movie library: /movie/library ROLE_USER
- Create a movie: /movie/create ROLE_EDITOR
- Get a movie: /movie/[isan] ROLE_USER
- Update a movie: /movie/update/[isan] ROLE_EDITOR
- Movie role search: /movie-role ROLE_USER
- Create a movie role: /movie-role/create ROLE_EDITOR
- Get a movie role: /movie-role/[movieRoleId] ROLE_USER
- Update a movie role: /movie-role/update/[movieRoleId] ROLE_EDITOR
- Publishing house search: /publishing-house ROLE_USER
- Create a publishing house: /publishing-house/create ROLE_EDITOR
- Get a publishing house: /publishing-house/[publishingHouseId] ROLE_USER
- Update a publishing house: /publishing-house/update/[publishingHouseId] ROLE_EDITOR
- Get user: /user ROLE_USER
- Update user: /user/update ROLE_USER
- User search: /user/search ROLE_ADMIN
- Get a specific user: /user/[userId] ROLE_ADMIN
- Update a specific user: /user/update/[userId] ROLE_ADMIN