This is the front-end app for Passiv. We're big proponents of open source software and would love for people to audit our code for security reasons so we've made this fully available on Github. Follow along with us as we try to change the face of investing.
This app was developed using quite a few libraries which we're incredibly thankful for.
- React
- Create React App
- Redux
- React Router
- Formik
- Font Awesome
- Emotion
- Storybook
- date-fns
- Downshift
- Cypress
- Enzyme
- Jest
You'll need a bunch of environment setup done before getting started with our application.
- NodeJS
- Package Manager either NPM which comes with Node or Yarn
- Text Editor like VS Code
- Git Client (some editors have them already, or you can install it for the command line)
You'll want to clone the repo and then in your terminal run:
yarn
or npm install
This will take a bit and will install all of our libraries. When it's done run:
yarn start
or npm start
This will build and launch the app in your browser.
If you're using Visual Studio Code, here are some tips for getting it setup perfectly for our code.
You'll want the following extensions:
- EditorConfig for VS Code - uses our built-in config file to setup VS Code for line endings, tab size, etc.
- ESLint - shows you any problems with your code in real-time
- Jest - runs our unit tests while you code, giving you great feedback
- GitLens - enables nice Git integration
- VS Live Share - so you can pair program with ease
At Passiv we stand on the shoulders of giants to provide you with a reliable, world-class product.
We build our app using Travis.
We deploy our app on Netlify.
We monitor our dependencies using David.
We monitor exceptions using Sentry.
We track usage with Google Analytics.
We host our code on GitHub.
We process payments with Stripe.
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
We believe in well tested code and as such have a rigorous suite of both unit and system tests.
We use Jest/Enzyme for our unit tests. They are located in a /tests
folder inside each component folder.
We use Cypress for our system tests. They are located in the /cypress/fixtures
folder.