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

Add glossary page #286

Closed
wants to merge 49 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
f71a7b1
Update SUMMARY.md (#251)
tanay1337 Oct 17, 2023
866bcaf
Add GH action for readability (#254)
tanay1337 Oct 20, 2023
c42e78e
Add workflow for style check on PRs (#255)
tanay1337 Oct 20, 2023
dc399b3
Update workflow setting
Oct 23, 2023
f665bf1
Add link check workflow (#257)
tanay1337 Oct 23, 2023
ac4df31
Remove link check GH action
Oct 23, 2023
457a4a5
Link check workflow (#259)
tanay1337 Oct 23, 2023
d743b34
Add weekly link checker (#260)
tanay1337 Oct 23, 2023
425dbb8
Add manual trigger for testing
Oct 24, 2023
6071df8
Fix conditional for issue creation
Oct 24, 2023
942de0c
Update conditional for workflow
Oct 24, 2023
4e9e445
Minor updates to the workflow
Oct 24, 2023
0f562ae
Update information architecture (#265)
tanay1337 Oct 27, 2023
bbbd890
Update Safe Apps section (#267)
tanay1337 Oct 27, 2023
78e743d
Update IA for reference (#268)
tanay1337 Oct 27, 2023
e3dc95b
docs: fix typos (#271)
xiaolou86 Nov 13, 2023
b2a2ad0
fix: update `@web3auth/*` versions (#270)
iamacook Nov 14, 2023
6fbe44a
Update README.md (#276)
tanay1337 Nov 16, 2023
5e561b1
Add script to generate Supported Networks pages from safe-deployments…
louis-md Nov 23, 2023
ba3e227
Link checks (#275)
louis-md Nov 23, 2023
0e7c0e7
Add Pimlico to Safe Modules (#279)
tanay1337 Nov 24, 2023
4d2f19d
Update weekly-link-check.yml (#281)
tanay1337 Nov 24, 2023
e5becc9
Revert "Update weekly-link-check.yml (#281)" (#283)
tanay1337 Nov 24, 2023
c32fcf9
Link fixes (#284)
tanay1337 Nov 24, 2023
ee0962d
Link checks (#285)
louis-md Nov 24, 2023
72c6f9b
Add glossary page
louis-md Nov 24, 2023
1c9fe73
Fox dead link in glossary
louis-md Nov 24, 2023
c9df891
protocol-kit v2.0 (#266)
DaniSomoza Nov 27, 2023
558747a
Reorder sidebar (#292)
tanay1337 Nov 29, 2023
d393a62
Add legacy `safe-core-sdk` migration guide (#291)
dasanra Nov 30, 2023
a175bad
Add middleware information for Safe Apps (#293)
tanay1337 Nov 30, 2023
e6db49c
Fix error in code snippet (#295)
dasanra Dec 1, 2023
f660d7b
docs(auth-kit): Update docs for the new `SafeAuthPack` (#289)
dasanra Dec 4, 2023
2ff1ae0
fix broken links (#296)
heypran Dec 4, 2023
da1a510
Minor fixes
Dec 4, 2023
01bbe4f
chore: Improve auth-kit docs (#298)
yagopv Dec 4, 2023
6afed64
Fix generate supported networks (#299)
louis-md Dec 5, 2023
b999977
Merge branch 'main' of https://github.com/safe-global/safe-docs into …
louis-md Dec 6, 2023
52df0f7
Implement requested changes (wording, vale, grammarly, some interlink…
louis-md Dec 6, 2023
1d49be0
Edit glossary wording
louis-md Dec 6, 2023
be7711f
Fix typos, vale errors and wording in glossary
louis-md Dec 6, 2023
c49abe7
Fix link checker error in glossary
louis-md Dec 6, 2023
9c58e84
Implement requested changes in glossary (wording, new words, more int…
louis-md Dec 7, 2023
9b412d0
Fix link checker & vale errors; add EIP 712, 1271 & ERC 4337
louis-md Dec 8, 2023
4673172
Implement requested changes in glossary (wording, new words, more int…
louis-md Dec 15, 2023
34d8126
Fix vale errors
louis-md Dec 19, 2023
6f74b67
Alphabetize and make some vocab words case insensitive
louis-md Dec 20, 2023
bc68ce7
Edit vocab and move it to new vale config folder
louis-md Jan 18, 2024
a5232f3
Fix typo
louis-md Jan 18, 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
6 changes: 6 additions & 0 deletions .gitbook.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,9 @@ redirects:
safe-core-protocol/security/security-audits: safe-smart-account/security/security-audits.md
safe-core-protocol/signatures: safe-smart-account/signatures/README.md
safe-core-protocol/signatures/eip-1271: safe-smart-account/signatures/eip-1271.md
safe-smart-account/security/security-audits: safe-smart-account/security-audits.md
safe-smart-account/security/bug-bounty-program: miscellaneous/bug-bounty-program.md
safe-smart-account/security/past-paid-bounties: miscellaneous/past-paid-bounties.md
safe-apps-sdk/safe-apps: safe-apps/README.md
safe-apps-sdk/overview: safe-apps/README.md
safe-apps-sdk/example-safe-app: safe-apps/get-started.md
146 changes: 146 additions & 0 deletions .github/scripts/generateSupportedNetworks.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
// This script generates the supported networks page from the safe-deployments repo.
// It clones the repo, reads the JSON files, and generates the markdown files as well as a _meta.json file for nextra.

const shell = require('shelljs')
const fs = require('fs')
const path = require('path')

// Explore a given directory recursively and return all the file paths
const walkPath = dir => {
let results = []
const list = fs.readdirSync(dir)
list.forEach(function (file) {
const filePath = path.join(dir, file)
const stat = fs.statSync(filePath)
if (stat?.isDirectory()) {
results = results.concat(walkPath(filePath))
} else {
results.push(filePath)
}
})

return results
}

// Reduce function to deduplicate an array
const deduplicate = (acc, curr) => {
if (acc.includes(curr)) {
return acc
}

return [...acc, curr]
}

const supportedNetworksPath = './safe-smart-account/supported-networks'

const generateSupportedNetworks = async () => {
const deploymentRepoUrl = 'https://github.com/safe-global/safe-deployments/'
shell.exec(`git clone ${deploymentRepoUrl} ./deployments`)
shell.rm('-rf', supportedNetworksPath)

const fetch = await import('node-fetch')
const paths = walkPath('deployments/src/assets').map(p =>
p.replace('deployments/src/assets/', '')
)

const allNetworks = await fetch
.default('https://chainid.network/chains.json')
.then(res => res.json())

const contracts = paths.map(p => {
const file = fs.readFileSync(`deployments/src/assets/${p}`, 'utf8')
const json = JSON.parse(file)

return Object.entries(json.networkAddresses).map(([chainId, address]) => ({
name: p.split('/')[1].split('.')[0],
version: p.split('/')[0],
address,
chainId,
chainName: allNetworks.find(n => n.chainId === parseInt(chainId))?.name,
blockExplorerUrl: allNetworks.find(n => n.chainId === parseInt(chainId))
?.explorers?.[0]?.url
}))
})

const versions = contracts
.flat()
.map(c => c.version)
.reduce(deduplicate, [])
.reverse()

shell.mkdir(supportedNetworksPath)

versions.forEach(version => {
const _contracts = contracts.flat().filter(c => c.version === version)

const networks = Object.entries(
_contracts.reduce((acc, curr) => {
const { chainId, chainName } = curr
if (acc[chainId]) {
return acc
}

return {
...acc,
[chainId]: chainName
}
}, {})
)

const content = `# ${version}

This page lists the addresses of all the Safe contracts \`${version}\` grouped by chain.

## Networks
${networks
.map(([chainId, network]) => {
return `
### ${network}

This network's chain ID is ${chainId}.

${_contracts
.filter(c => c.chainId === chainId)
.map(
c =>
`- \`${c.name}.sol\`: ${
c.blockExplorerUrl == null ||
deprecatedBlockExplorers.includes(c.blockExplorerUrl)
? c.address
: `[${c.address}](${c.blockExplorerUrl}/address/${c.address})`
}`
)
.join('\n')}
`
})
.join('\n')}

`
fs.writeFileSync(`${supportedNetworksPath}/${version}.md`, content)
})

shell.rm('-rf', './deployments')
}

generateSupportedNetworks()

const deprecatedBlockExplorers = [
'https://ropsten.etherscan.io',
'https://rinkeby.etherscan.io',
'https://kovan-optimistic.etherscan.io',
'https://stardust-explorer.metis.io',
'https://blockexplorer.rinkeby.boba.network',
'https://blockexplorer.bobabeam.boba.network',
'https://blockexplorer.avax.boba.network',
'https://rabbit.analogscan.com',
'https://explorer.eurus.network',
'https://testnetexplorer.eurus.network',
'https://explorer.tst.publicmint.io',
'https://evm-testnet.venidiumexplorer.com',
'https://evm.venidiumexplorer.com',
'https://evm.explorer.canto.io',
'https://explorer.autobahn.network',
'https://explorer.cascadia.foundation',
'https://testnet.torusscan.com',
'https://testnet.toruscan.com'
]
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
206 changes: 206 additions & 0 deletions .github/styles/config/vocabularies/default/accept.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
(?i)cra
(?i)eth
(?i)http
(?i)https
(?i)sdk
(?i)zkevm
(?i)zksync
(?i)wagmi
[Aa]urora
[Aa]rbitrum
[Bb]ackend
[Bb]inance
[Bb]lockchain
[Bb]lockchains
[Cc]elo
[Cc]omposable
[Cc]onfig
[Cc]rypto
[Cc]ryptocurrencies
[Dd]app
[Dd]apps
[Dd]elist
[Ee]ndhint
[Ee]rigon
[Gg]asless
[Gg]oerli
[Gg]nosis
[Ll]ogics
[Mm]ainnet
[Mm]iddleware
[Mm]ultisig
[Nn]extra
[Oo]ffchain
[Oo]nboarding
[Oo]nchain
[Pp]olygon
[Pp]luggable
[Rr]eact
[Rr]eauthenticate
[Rr]elayer
[Rr]elayers
[Ss]epolia
[Tt]estnet
[Vv]alidator
A1
AA
ABI
ABIs
API
API Kit
Acala
Alfajores
Andromeda
Apothem
Arianee
Astar
Auth Kit
Autobahn
Avax
BNB
Blocknative
Blockscout
Boba
Bobabeam
Bundlers
C-Chain
C1
CORS
Canto
Callout
Cascadia
Chainlist
Chiado
Client Gateway
CloudWalk
Crab
Cronos
Crossbell
DAO
Darwinia
Devnet
EIP
EOA
EOAs
ERC
EURe
EVM
EdgeEVM
Edgeware
EtherLite
Ethereum
Etherscan
Eurus
Evmos
Fantom
Foesenek
Fuji
Fuse
GC
Gelato
Godwoken
Gunicorn
Haqq
Holesky
IPFS
Infura
IoTeX
KCC
Kanazawa
Karura
Kava
Klaytn
Kovan
LUKSO
Lightlink
Linea
Mandala
Mantle
Meld
Metadium
Metamask
Metis
Milkomeda
Monerium
Moonbase
Moonbeam
Moonriver
Mordor
Nova
OAuth
OP
Onramp
Onramp Kit
PGN
Pimlico
Polis
Protocol Kit
PublicMint
README
REI
RPC
Relay Kit
Renan
Rethereum
Rinkeby
Rollux
Rootstock
Ropsten
Safe App
Safe Apps
Safe Apps SDK
Safe Client Gateway
Safe Config Service
Safe Guards
Safe Module
Safe Modules
Safe Smart Account
Safe Transaction Service
Safe{Core} Account Abstraction SDK
Safe{Core} Protocol
Safe{DAO}
Shiden
ShimmerEVM
Shyft
Solaris
Sourcify
Souza
Sparknet
Stardust
Supernet
Syscoin
TC9
Tanenbaum
Telos
Tenet
ThunderCore
Transaction Service
U2U
UI Kit
Ultron
Velas
Venidium
Vite
Vue
WEMIX3.0
WSGI
WebSocket
XDC
YouTube
ZetaChain
Zoltu
Zora
address_full_match
auth_code
boolean
checksummed
monorepo
npm
onboarding
onchain
pluggable
trace_block
trace_filter
trace_transaction
undefined
v1
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
25 changes: 25 additions & 0 deletions .github/workflows/generate-supported-networks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Weekly update for supported networks

on:
schedule:
- cron: "0 9 * * 1"
workflow_dispatch:

jobs:
generate-supported-networks:
runs-on: ubuntu-latest
steps:
- name: Use Node.js 20.x
uses: actions/setup-node@v2
with:
node-version: '20.x'
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Install dependencies
run: pnpm install
- name: Generate supported networks
run: pnpm generate-supported-networks
- uses: actions/checkout@v4
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
Loading
Loading