This project was bootstrapped with Create React App.
- Clone this repository.
$ npm install
- You'll also want the following installed on your machine:
- Elasticsearch:
brew install elasticsearch
- Kibana:
brew install kibana
git-crypt
:brew install git-crypt
- Copy
.env-example
to a new file.env
in the root directory. You will need to define each of the environment variables included in the sample file. You can alternatively find a completed.env
file in the copy of this project repo on the Barnes admin server. $ npm run build
to build the app.$ npm start
to run the app.
- Clone this repository
$ npm install
- Create a
.env
file as above - Create a
.htpasswd
file with a username and encrypted password in the root of this directory, usinghtpasswd
$ npm run build
$ npm install -g pm2
$ pm2 start ecosystem.json
This project uses everything included with create-react-app, plus Redux, React Router, and other smaller dependencies.
This project assumes you have a separate Elasticsearch instance with the collection data and an S3 bucket with the images, following the Flickr convention.
This project wraps all calls to Elasticsearch in its own API. It uses the elasticsearch
npm module and has the following routes:
GET /api/objects/:object_id
returns the art object matching the :object_id
GET /api/search
returns 10 art objects matching a query q
, which is formatting according to this documentation
POST /api/objects/:object_invno/download
returns a signed object url upon submitting the Wufoo form with the necessary fields.