DeFi Scan, everything one-stop location for DeFi Blockchain. Powered by DeFi Jellyfish & ocean network.
Thanks for contributing, appreciate all the help we can get. Feel free to make a pull-request, we will guide you along the way to make it mergeable. Here are some of our documented contributing guidelines.
We use npm 7
for this project, it's required to set
up npm workspaces.
npm install
First, run the development server:
pnpm run dev
Open http://localhost:3000 with your browser to see the result.
Next.js
To learn more about Next.js, take a look at the following resources:
scan/
├─ .github/
├─ content/
├─ public/
├─ src/
│ ├─ components/
│ ├─ layouts/
│ ├─ pages/
│ │ ├─ slugs/*.tsx
│ │ └─ index.tsx
│ ├─ store/
│ └─ styles/
└─ cypress/
DeFi Scan project is structured with 2 core directories. Each pull request will likely carry significant changes into those directories.
Directory | Description |
---|---|
/.github |
workflow for shift left automation |
/content |
static code based content management system with type safety |
/public |
static resources |
/src/components |
top level components for a shared design language |
/src/layouts |
top level layouts for shared page layout & components |
/src/pages |
each page is associated with a route based on its file name |
/src/store |
global state that is used in at least more than once |
/app/styles |
tailwind css style configuration |
/cypress |
E2E testing |
End-to-end testing; tests the entire lifecycle of DeFi Scan. All components and screen are integrated together as
expected for real use cases. As such test are written for real usage narrative as a normal consumer would. They are
placed in the /cypress
directory, and we use Cypress to facilitate the
testing.
Cypress is a modern end-to-end testing framework for web. It uses a sequential jest like approach for testing with automatic wait and retrofitted with many utilities for great testing quality of life. Utilities are further customized for DeFi Scan with our own construct. We set up a web environment to run end-to-end testing together with a local playground.
To facilitate fast and ephemeral testing culture, we use DeFi Playground. DeFi
Playground is a specialized testing blockchain isolated from MainNet for testing DeFi applications. It uses regtest
under the hood, you can npm run playground
for the local playground environment or let it default to remote. Assets
are not real, it can be minted by anyone. Blocks are generated every 3 seconds, the chain resets daily on remote
playground.
IntelliJ IDEA is the IDE of choice for writing and maintaining this library. IntelliJ's files are included for convenience with basic toolchain setup but use of IntelliJ is totally optional.
If you discover a security vulnerability in
DeFi Scan
, please see submit it privately.
By using DeFi Scan
(this repo), you (the user) agree to be bound by the terms of this license.