Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs/lk exploration [SLT-170] #3141

Merged
merged 46 commits into from
Oct 2, 2024
Merged
Show file tree
Hide file tree
Changes from 39 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
244e77f
update for eslint
lawsonkight Sep 17, 2024
eebb57c
eslint fix
lawsonkight Sep 17, 2024
1218b20
top-level content
lawsonkight Sep 17, 2024
32a85ac
bugfix: remove descriptions from Community links
lawsonkight Sep 17, 2024
8a6eb0d
eslint fix
lawsonkight Sep 18, 2024
866ebaa
folder organization
lawsonkight Sep 18, 2024
b9f11b6
wip: sidebar organization
lawsonkight Sep 18, 2024
6cb652a
cctp router docs refactor
lawsonkight Sep 20, 2024
81ea30d
WIP: RFQ Relayer doc
lawsonkight Sep 20, 2024
2330146
refactor of CCTP and RFQ docs pages
lawsonkight Sep 23, 2024
22855ca
fix build errors
lawsonkight Sep 23, 2024
e3a65c5
bugfix: css dark mode specificity
lawsonkight Sep 23, 2024
cb1118d
bugfix: wrong Redirect import
lawsonkight Sep 23, 2024
ab4a354
Fixes build issue
abtestingalpha Sep 24, 2024
186f0a9
Bridge SDK and Synapse Router
lawsonkight Sep 24, 2024
68ec346
fix broken links
lawsonkight Sep 24, 2024
56bd9c6
rename Bridge SDK Examples page
lawsonkight Sep 25, 2024
fe24140
rebuild yarn.lock
lawsonkight Sep 25, 2024
9eea390
Merge branch 'master' into docs/lk-exploration
abtestingalpha Sep 25, 2024
3d12d5a
Upgrades deps
abtestingalpha Sep 25, 2024
ef6e18a
bridge sdk animation
lawsonkight Sep 25, 2024
b03684b
move sdk animation to bridge page
lawsonkight Sep 25, 2024
32ac668
bugfix: svg initial values
lawsonkight Sep 26, 2024
a18c6b6
bugfix: remove css nesting
lawsonkight Sep 26, 2024
8a66ffd
intermediate token style
lawsonkight Sep 26, 2024
4c09296
wip: image buildout
lawsonkight Sep 26, 2024
4ebe307
additional router graphics
lawsonkight Sep 26, 2024
d07bf03
faux bridge svg
lawsonkight Sep 26, 2024
ecb3221
widget page
lawsonkight Sep 27, 2024
1f2553a
brand assets page
lawsonkight Sep 27, 2024
42629e9
move Bridge pages to Developers folder
lawsonkight Sep 27, 2024
e7b0e70
animated logo v1
lawsonkight Sep 27, 2024
8eca8ec
interactive animated logo
lawsonkight Sep 27, 2024
dae67c1
Supported routes
lawsonkight Sep 28, 2024
a4674eb
bugfix: React attribute names
lawsonkight Sep 28, 2024
33d8f99
move Supported Routes page
lawsonkight Sep 28, 2024
00d103b
bugfix: svg animation id collision
lawsonkight Sep 28, 2024
3b0da49
better css variable overrides
lawsonkight Sep 28, 2024
ceb8923
fix build errors
lawsonkight Sep 28, 2024
2993189
footer color
lawsonkight Sep 28, 2024
e23965e
small nits
Defi-Moses Sep 30, 2024
9d159ba
respond to feedback
lawsonkight Oct 1, 2024
d7b693c
Update CCTP Relayer description
lawsonkight Oct 2, 2024
bc0bf4c
cctp-typo
Defi-Moses Oct 2, 2024
9e9b993
Merge branch 'master' into docs/lk-exploration
abtestingalpha Oct 2, 2024
b3b7082
Fix constants v
abtestingalpha Oct 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions docs/bridge/docs/01-About/01-DAO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: Synapse DAO
---

# Synapse DAO

Since launch of the Synapse Protocol, a number of governance initiatives have been put forward and voted on by the Synapse DAO.

## Governance Model

SYN holders with more than 100,000 SYN tokens can put forward proposals to be be voted on by the DAO. SYN holders can vote using SYN on multiple chains, or delegate their votes to other token holders.

In order to be adopted by the DAO, a proposal must gather at least `50% + 1` of all votes and reach the minimum quorum of 5 million SYN tokens.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Improve clarity and fix typo in the Governance Model section

  1. There's a typo in the first sentence:
- SYN holders with more than 100,000 SYN tokens can put forward proposals to be be voted on by the DAO.
+ SYN holders with more than 100,000 SYN tokens can put forward proposals to be voted on by the DAO.
  1. Consider rephrasing the second paragraph for conciseness:
- In order to be adopted by the DAO, a proposal must gather at least `50% + 1` of all votes and reach the minimum quorum of 5 million SYN tokens.
+ For a proposal to be adopted, it must receive a majority (at least 50% + 1) of all votes and reach a minimum quorum of 5 million SYN tokens.
  1. Consider adding clarification on the following points:
    • How are proposals submitted?
    • Is there a time limit for voting?
    • How is the quorum calculated across multiple chains?

These additions would provide a more comprehensive understanding of the governance process.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## Governance Model
SYN holders with more than 100,000 SYN tokens can put forward proposals to be be voted on by the DAO. SYN holders can vote using SYN on multiple chains, or delegate their votes to other token holders.
In order to be adopted by the DAO, a proposal must gather at least `50% + 1` of all votes and reach the minimum quorum of 5 million SYN tokens.
## Governance Model
SYN holders with more than 100,000 SYN tokens can put forward proposals to be voted on by the DAO. SYN holders can vote using SYN on multiple chains, or delegate their votes to other token holders.
For a proposal to be adopted, it must receive a majority (at least 50% + 1) of all votes and reach a minimum quorum of 5 million SYN tokens.
🧰 Tools
🪛 LanguageTool

[duplication] ~11-~11: Possible typo: you repeated a word
Context: ...SYN tokens can put forward proposals to be be voted on by the DAO. SYN holders can vo...

(ENGLISH_WORD_REPEAT_RULE)


[style] ~12-~12: Consider a shorter alternative to avoid wordiness.
Context: ...e their votes to other token holders. In order to be adopted by the DAO, a proposal must ...

(IN_ORDER_TO_PREMIUM)


## Governance Components

* [Forum](https://forum.synapseprotocol.com/): A Platform to post proposals for discussion before an official vote
* [Snapshot](https://snapshot.org/#/synapseprotocol.eth): A decentralized governance platform for conducting official votes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We want to link to either discord or telegram here as well as discussion forums, or are these too informal @Defi-Moses

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can link to discord here too

21 changes: 21 additions & 0 deletions docs/bridge/docs/01-About/02-Brand-Assets.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Brand Assets

### [synapse-brand-assets.zip](/brand-assets/synapse-brand-assets.zip)
Comment on lines +1 to +3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Adjust heading level for consistency

The file structure looks good, but there's a minor issue with the heading levels. The download link is currently an h3, which doesn't follow the logical hierarchy.

Consider changing the heading level for the download link. Here's a suggested fix:

 # Brand Assets

-### [synapse-brand-assets.zip](/brand-assets/synapse-brand-assets.zip)
+## [Download All Assets](/brand-assets/synapse-brand-assets.zip)

This change maintains a logical heading structure and provides a clear call-to-action for users who want to download all assets at once.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
# Brand Assets
### [synapse-brand-assets.zip](/brand-assets/synapse-brand-assets.zip)
# Brand Assets
## [Download All Assets](/brand-assets/synapse-brand-assets.zip)
🧰 Tools
🪛 Markdownlint

3-3: Expected: h2; Actual: h3
Heading levels should only increment by one level at a time

(MD001, heading-increment)


## Logo

| Name | Image |
|----------------------------------------------------------------------|-
| [`synapse-logo-onLight.svg`](/brand-assets/synapse-logo-onLight.svg) | ![Synapse logo](/brand-assets/synapse-logo-onLight.svg)
| [`synapse-logo-onDark.svg`](/brand-assets/synapse-logo-onDark.svg) | ![Synapse logo](/brand-assets/synapse-logo-onDark.svg)
| [`synapse-logo-black.svg`](/brand-assets/synapse-logo-black.svg) | ![Synapse logo](/brand-assets/synapse-logo-black.svg)
| [`synapse-logo-white.svg`](/brand-assets/synapse-logo-white.svg) | ![Synapse logo](/brand-assets/synapse-logo-white.svg)

## Mark

| Name | Image |
|--------------------------------------------------------------------|-
| [`synapse-mark.svg`](/brand-assets/synapse-mark.svg) | ![Synapse logo](/brand-assets/synapse-mark.svg)
| [`synapse-mark-white.svg`](/brand-assets/synapse-mark-white.svg) | ![Synapse logo](/brand-assets/synapse-mark-white.svg)
| [`synapse-mark-black.svg`](/brand-assets/synapse-mark-black.svg) | ![Synapse logo](/brand-assets/synapse-mark-black.svg)
| [`synapse-border-mark.svg`](/brand-assets/synapse-border-mark.svg) | ![Synapse logo](/brand-assets/synapse-border-mark.svg)
7 changes: 7 additions & 0 deletions docs/bridge/docs/01-About/03-Routes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import Routes from '@site/src/components/Routes'

# Chains & Tokens

This page contains a list of supported tokens, listed per-chain. For a given pair, use the [Synapse Bridge](https://synapseprotocol.com) to see if a route between them exists.

<Routes />
84 changes: 84 additions & 0 deletions docs/bridge/docs/01-About/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
---
title: About
---

import AnimatedLogo from '@site/src/components/AnimatedLogo'
import SVGBridge from '@site/src/components/SVGBridge'
import { BridgeFlow } from '@site/src/components/BridgeFlow'
import { CCTPFlow } from '@site/src/components/CCTPFlow'
import { RFQFlow } from '@site/src/components/RFQFlow'

<AnimatedLogo />

# Use Synapse

Synapse is an Interchain Programming Interface. Developers read and write interchain data with Synapse, which has settled $50B in transactions between 2M+ users, and generated $30M+ in fees [[Explorer](https://explorer.synapseprotocol.com)].
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Explorer should not be double bracketed here. It looks awkward image


## Interchain Bridge

<figure>
<SVGBridge />
<figcaption>Synapse Bridge</figcaption>
</figure>

* [Overview](/docs/Bridge)
* [Bridge guide](/docs/Bridge#how-to-bridge)
<!-- * [Supported routes](/docs/Bridge#how-to-bridge) -->

## Developers

Embed or build a custom Bridge application.

* **[SDK](/docs/Developers/Bridge-SDK)** – Call Synapse Router functions from your frontend or backend application.
* **[REST API](/docs/Developers/REST-API)** – Endpoints and example code
* **[Widget](/docs/Developers/Widget)** – Embed a customized Synapse Bridge in your application.

## Synapse Routers

Synapse Router automatically determines the appropriate router type to use for each Bridge transaction.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need a tad more copy here to explain that these are examples of two different types of routing.

Could also add "Example of" here image


<figure id="flowGroup">
<figure>
<BridgeFlow />
<figcaption>Synapse Router</figcaption>
</figure>
<figure>
<CCTPFlow />
<figcaption>Synapse CCTP</figcaption>
</figure>
<figure>
<RFQFlow />
<figcaption>Synapse RFQ</figcaption>
</figure>
</figure>

* **[Synapse Router](/docs/Routers/Synapse-Router)** – Executable quotes for arbitrary blockchain transactions.
* **[CCTP](/docs/Routers/CCTP)** – Native router for USDC transactions.
* **[RFQ](/docs/Routers/RFQ)** – Fast router that allows on-chain agents to bid on interchain delivery.

## Essential Services

Bolt-on services for reliability and ease-of-use:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this belongs in this section of the docs, these aren't really user/"customer" facing and while we definitely want to document them in a public way I wouldn't consider understanding scribe essential to understanding the protocol.

Lmk if this makes sense @Defi-Moses

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, these are not user facing nor are important to someone interfacing with the protocol.


* **[Scribe](/docs/Services/Scribe)** – Index logs, receipts and transactions across multiple chains
* **[OmniRPC](/docs/Services/Omnirpc)** – Interchain RPC load balancer and verifier
* **[Signer](/docs/Services/Signer)** – Support for the AWS Key Management System (KMS)
* **[Submitter](/docs/Services/Submitter)** – Gas management service to ensure transaction confirmation
* **[Observability](/docs/Services/Observability)** – Open telemetry system for Synapse SDK


## Community & Support

Connect with other developers and the Synapse team

* **[Discord](https://discord.gg/synapseprotocol)**
* **[Twitter](https://twitter.com/SynapseProtocol)**
* **[Telegram](https://t.me/synapseprotocol)**
* **[Forum](https://forum.synapseprotocol.com/)**

## Additional Links

Synapse transactions can be observed confirmed via the following methods:

* **[Synapse Bridge](https://synapseprotocol.com)** – Bridge, Swap, and Stake via Synapse's cross-chain pools.
* **[Synapse Explorer](https://explorer.synapseprotocol.com)** – Public explorer for Synapse Bridge transactions.
58 changes: 58 additions & 0 deletions docs/bridge/docs/02-Bridge/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title: Bridge
---

import { BridgeFlow } from '@site/src/components/BridgeFlow'
import SVGBridge from '@site/src/components/SVGBridge'

# Synapse Bridge

The [Synapse Bridge](https://synapseprotocol.com) and [Solana Bridge](https://solana.synapseprotocol.com/) seamlessly swap on-chain assets between [20+ EVM and non-EVM blockchains](/docs/About/Routes) in a safe and secure manner.

<br />

<figure>
<BridgeFlow />
<figcaption>User assets are sent to a bridge contract, moved to the `destChain`, and returned to the user.</figcaption>
</figure>

## Developers

Add the [Custom Widget](#) to your DeFi application, or build your own DeFi applications using the [Synapse SDK](#).
Comment on lines +19 to +21
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Add missing links for Custom Widget and Synapse SDK

The Developers section mentions two important resources, but the links are currently empty. Please add the correct URLs for the Custom Widget and Synapse SDK. This will greatly improve the usefulness of this section for developers looking to integrate Synapse Bridge into their applications.

Consider updating the line as follows:

Add the [Custom Widget](URL_TO_CUSTOM_WIDGET) to your DeFi application, or build your own DeFi applications using the [Synapse SDK](URL_TO_SYNAPSE_SDK).

Replace URL_TO_CUSTOM_WIDGET and URL_TO_SYNAPSE_SDK with the actual URLs for these resources.

Tools
Markdownlint

11-11: null
No empty links

(MD042, no-empty-links)


11-11: null
No empty links

(MD042, no-empty-links)


## Bridge Functions

The [Synapse Router](#) will return an appropriate bridge function based on the chains and tokens involved.

* **Canonical** – Assets are wrapped and then bridged.
* **[Liquidity Pools](#)** – Assets are swapped via Synapse liquidity pools.
* **[CCTP](#)** – Native router for USDC
Comment on lines +23 to +29
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Add missing links and clarify CCTP

  1. The Synapse Router link is empty. Please add the correct URL for the Synapse Router documentation.

  2. The Liquidity Pools link is also empty. Add the appropriate URL for more information on Liquidity Pools.

  3. Consider expanding on the CCTP (Cross-Chain Transfer Protocol) function by briefly explaining what it stands for and its significance in the context of USDC bridging.

Update the section as follows:

The [Synapse Router](URL_TO_SYNAPSE_ROUTER) will return an appropriate bridge function based on the chains and tokens involved.

* **Canonical** – Assets are wrapped and then bridged.
* **[Liquidity Pools](URL_TO_LIQUIDITY_POOLS)** – Assets are swapped via Synapse liquidity pools.
* **CCTP (Cross-Chain Transfer Protocol)** – Native router for USDC, enabling seamless transfers across supported blockchains.

Replace URL_TO_SYNAPSE_ROUTER and URL_TO_LIQUIDITY_POOLS with the actual URLs for these resources.

Tools
Markdownlint

15-15: null
No empty links

(MD042, no-empty-links)


18-18: null
No empty links

(MD042, no-empty-links)


19-19: null
No empty links

(MD042, no-empty-links)


## Pool Liquidity

![liquidity pool tokens](lp-tokens.svg)\
Synapse liquidity pools use the nexus USD (nUSD) and nexus ETH (nETH) interchain stablecoins. nUSD and nETH are fully backed by the nexus USD and nexus ETH liquidity pools on Ethereum.

When a token is bridged using a Synapse Liquidity Pool, it is converted to a nexus token on the source chain, which is then bridged to the destination chain, before being converted back into a native token.

## How to Bridge

<figure>
<SVGBridge />
<figcaption>Synapse Bridge</figcaption>
</figure>

### Instructions

1. Connect your wallet
2. Select your origin and destination chains from the dropdown menus
3. Select your origin token from the portfolio view, or dropdown menu
4. Enter the amount you wish to send
5. If you wish to send assets to a different wallet address, enable `Show withdrawal address` from the Settings menu (optional).
5. Connect your wallet to the origin chain, if necessary
6. Click `Bridge` to send a quote to your wallet for confirmation
7. Sign and Confirm the Bridge action from your wallet

## Bridge Contracts

Synapse Bridge contracts are available [here](https://docs.synapseprotocol.com/synapse-bridge/contract-addresses).
61 changes: 61 additions & 0 deletions docs/bridge/docs/02-Bridge/lp-tokens.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading