Welder's front end built in React
- Install Node
- Clone this repo to your local device.
cd
into the project root.- Install yarn:
npm install -g yarn
- Install the dependencies:
yarn
- Run
yarn start
to build, run and watch for code changes.
-
Change the development values in
./src/constants/api.js
to match your local setup for Api-V2, Wevolve (Api-V1) and Welder. -
Google analytics can be used by filling in the initializer located in
index.js
-
To use Heap analytics do a project wide search for
heap.load()
and fill in your key where necessary. -
A google maps key must be added to its tag in
public/index.html
-
Configuration for auth is found in
/modules/auth.js
. You must first have a properly configured app in Auth0. Start there if you haven't already.
- Build Wevolver for staging
yarn build:staging
or productionyarn build
. - Upload the
./build
folder into the corresponding S3 bucket: staging.wevolver.com for staging or www.wevolver.com for production. - Alternatively, install the AWS CLI, input your AWS credentials and sync the build folder to the bucket:
aws s3 sync ./build s3://<bucket name>
All of the files are in the ./src
folder. To modify how something looks, you most likely have to edit a file in the ./components
folder.
./src/actions
: actions that trigger reducer functions and sagas../src/components
: presentational components. Exclusively receives data via props. Essentially concerned with how things look../src/constants
: constants for action names and API endpoints../src/containers
: wrappers for the components that fetch data from the Redux store../src/loaders
: helper function to load different file formats in the three.js viewer../src/modules
: helper functions for authentication, network calls, heap, toast notifications and util functions../src/reducers
: specify how the application's state changes in response to actions sent to the store../src/sagas
: sagas fetch data from the APIs and create actions with the received data../src/store
: holds the application state and allows access to it using connect().
We use Linear Icons for this project. More info can be found here: https://linearicons.com