The Brooklyn Museum Collections Browser
A user interface to be built around the Brooklyn Museum's database of collections objects. The interface allows users to browse the collection data across broad categories, as well as perform more fine-grained search queries. Users are be able to mark objects as "favorites" for later viewing, and to view object recommendations based on their favorites.
- Java Spring Boot, Netflix Eureka, and Netflix Zuul for microservices architecture.
- Java Persistence API, Flyway, and Postgres for data management.
- Firebase for user sign-up and login authorization.
- React.js for front-end UI/UX.
Install and Testdrive
- Clone this repo to your machine.
- In a terminal window, from the top-level project directory run
- In a separate terminal window, navigate to the
client-uidirectory and run
- Once npm is finished installing, run
- Once all of the containers are up and running (wait a minute or two, especially if this is the first time you've docker'd up), navigate to http://localhost:3000 in your browser and enjoy the app!
- When you are finished testdriving the app, in the terminal
ctrl + Cto stop the docker images, and then run
docker-compose downto remove the mounted docker images.
- Secure sign-up and login with Firebase (although only truly secure if served over HTTPS).
- Options for browsing and searching the collection's objects.
- Options to add and remove objects from a persistent list of "user favorites".
- Detailed views on selected objects, along with high-resolution images.