This project is a [NextJS](https://nextjs.org/). React application.
The project utilises [React hooks](https://reactjs.org/docs/hooks-intro.html), functional components, [Zustand](https://github.com/pmndrs/zustand) for state management, and [useSWR](https://swr.vercel.app/) for general data fetching and management.
Styles are handled with [Tailwind](https://tailwindcss.com/).
Typescript is added and utilised (but optional if you want to create .jsx or .tsx files).
Copy `.env.example` to `.env` and modify the values to suit your needs.
#### 2.2.1 TradingView library
The Outpost UI has a [TradingView](https://www.tradingview.com/) implementation, to display charts for the listed assets.
**TradingView only works on non-docker deployments (e.g. via [vercel](https://vercel.com)). As the docker image already has a fallback installed and can not be updated on `docker run`**
If you are running the UI on a node based server, add the following environment variables to install TradingView.
_NOTE: You'll also need to have an active TradingView license to obtain those credentials_
## 4. Development practices
### 4.1 Data orchestration
Data is handled with a combination of container components, useSWR and a caching mechanism. API hooks are responsible for syncing the application state.
We welcome and encourage contributions! Please create a pull request with as much information about the work you did and what your motivation/intention was.