A DeFi Trading Platform utilizing Orderbook-based Rates, facilitating the lending and borrowing of digital assets for constructing yield curves within the DeFi ecosystem.
- Clone this repository
- Login on the GitHub npm package repository with
npm login --registry=https://npm.pkg.github.com
- Create a file
.env.local
at the root of the project. Please refer to.env.local.sample
for the list of environment variables - Set your personal access token issued on your Github account by calling the following command:
export NPM_AUTH_TOKEN=<your access token>
- Run
nvm use
to ensure you are using the correct node version - Install all required dependencies by running
npm install
- Run
npm run start
to start development mode
This repository provides a .vscode/settings.json
which assumes you have the following extensions installed in your code editor:
- ESLint
- Prettier
- TailwindCSS Intellisense
- Code Spell Checker
Those extensions helps streamline the development process by creating a standard way of formatting the code.
The web application is tested in multiple ways:
- Run
npm run test
You can find more information about the test runner here
- Create a file
cypress.env.json
at the root of the project. Please refer tocypress.env.json.sample
for the list of environment variables needed - Start the development server with
npm run start
- Start the cypress interactive runner with
npm run cypress:open
- Click on the spec to run it or all the specs
This headless runner is a command line runner used for our continuous integration.
- Create a file
cypress.env.json
at the root of the project. Please refer tocypress.env.json.sample
for the list of environment variables needed - Start the development server with
npm run start
- Start the cypress headless runner with
npm run cypress:run
Here's a brief high-level overview of the tech stack the Secured Finance App uses:
- Next.js: A React framework that enables server-side rendering and simplifies the creation of performant web applications
- Jest: Delightful JavaScript testing framework with a focus on simplicity and effectiveness, commonly used for unit and integration testing in React applications
- React Testing Library: Facilitates user-centric testing in React applications by providing intuitive utilities for querying and interacting with components
- Storybook: Development environment for UI components, providing a sandboxed environment to visually develop and test components in isolation.
- Tailwind CSS: Utility-first CSS framework that allows for rapid UI development by providing pre-defined utility classes for styling elements
- TanStack Query: Powerful library for managing server-state and caching in React applications, providing a straightforward way to fetch, cache, and update asynchronous data in components
- Redux: Predictable state container for JavaScript applications, commonly used with React to manage application state in a centralized manner
- Wagmi: A useful library of React Hooks for Ethereum
This project is licensed under the MIT license, Copyright (c) 2024 Secured Finance. For more information see LICENSE.md
.