Skip to content

Commit fd715ea

Browse files
committed
Re-add README
1 parent ad83259 commit fd715ea

File tree

2 files changed

+43
-0
lines changed

2 files changed

+43
-0
lines changed

README.md

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Building Secure Smart Contracts
2+
3+
![](https://github.com/crytic/building-secure-contracts/actions/workflows/slither.yml/badge.svg) ![](https://github.com/crytic/building-secure-contracts/actions/workflows/echidna.yml/badge.svg) ![](https://github.com/crytic/building-secure-contracts/actions/workflows/medusa.yml/badge.svg)
4+
5+
Brought to you by [Trail of Bits](https://www.trailofbits.com/), this repository offers guidelines and best practices for developing secure smart contracts. Contributions are welcome, you can contribute by following our [contributing guidelines](https://github.com/crytic/building-secure-contracts/blob/master/CONTRIBUTING.md).
6+
7+
**Table of Contents:**
8+
9+
- [Development Guidelines](./src/development-guidelines)
10+
- [Code Maturity](./src/development-guidelines/code_maturity.md): Criteria for developers and security engineers to use when evaluating a codebase’s maturity
11+
- [High-Level Best Practices](./src/development-guidelines/guidelines.md): Best practices for all smart contracts
12+
- [Incident Response Recommendations](./src/development-guidelines/incident_response.md): Guidelines for creating an incident response plan
13+
- [Secure Development Workflow](./src/development-guidelines/workflow.md): A high-level process to follow during code development
14+
- [Token Integration Checklist](./src/development-guidelines/token_integration.md): What to check when interacting with arbitrary tokens
15+
- [Learn EVM](./src/learn_evm): Technical knowledge about the EVM
16+
- [EVM Opcodes](./src/learn_evm/evm_opcodes.md): Information on all EVM opcodes
17+
- [Transaction Tracing](./src/learn_evm/tracing.md): Helper scripts and guidance for generating and navigating transaction traces
18+
- [Arithmetic Checks](./src/learn_evm/arithmetic-checks.md): A guide to performing arithmetic checks in the EVM
19+
- [Yellow Paper Guidance](./src/learn_evm/yellow-paper.md): Symbol reference for easier reading of the Ethereum yellow paper
20+
- [Forks <> EIPs](./src/learn_evm/eips_forks.md): Summaries of the EIPs included in each Ethereum fork
21+
- [Forks <> CIPs](./src/learn_evm/cips_forks.md): Summaries of the CIPs and EIPs included in each Celo fork _(EVM-compatible chain)_
22+
- [Upgrades <> TIPs](./src/learn_evm/tips_upgrades.md): Summaries of the TIPs included in each TRON upgrade _(EVM-compatible chain)_
23+
- [Forks <> BEPs](./src/learn_evm/beps_forks.md): Summaries of the BEPs included in each BSC fork _(EVM-compatible chain)_
24+
- [Not So Smart Contracts](./src/not-so-smart-contracts): Examples of common smart contract issues, complete with descriptions, examples, and recommendations
25+
- [Algorand](./src/not-so-smart-contracts/algorand)
26+
- [Cairo](./src/not-so-smart-contracts/cairo)
27+
- [Cosmos](./src/not-so-smart-contracts/cosmos)
28+
- [Substrate](./src/not-so-smart-contracts/substrate)
29+
- [Solana](./src/not-so-smart-contracts/solana)
30+
- [Program Analysis](./src/program-analysis): Using automated tools to secure contracts
31+
- [Echidna](./src/program-analysis/echidna): A fuzzer that checks your contract's properties
32+
- [Slither](./src/program-analysis/slither): A static analyzer with both CLI and scriptable interfaces
33+
- [Manticore](./src/program-analysis/manticore): A symbolic execution engine that proves the correctness of properties
34+
- For each tool, this training material provides:
35+
- A theoretical introduction, an API walkthrough, and a set of exercises
36+
- Exercises that take approximately two hours to gain practical understanding
37+
- [Resources](./src/resources): Assorted online resources
38+
- [Trail of Bits Blog Posts](./src/resources/tob_blogposts.md): A list of blockchain-related blog posts created by Trail of Bits
39+
40+
# License
41+
42+
secure-contracts and building-secure-contracts are licensed and distributed under the [AGPLv3 license](https://github.com/crytic/building-secure-contracts/blob/master/LICENSE). Contact us if you're looking for an exception to the terms.

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"prettier-plugin-solidity": "^1.1.3"
1010
},
1111
"scripts": {
12+
"update-readme": "cat src/README.md | sed 's#](./#](./src/#' > README.md",
1213
"format": "prettier --write . && npm run format:embedded",
1314
"format:embedded": "prettier --write \"**/*.md\" --embedded-language-formatting=auto --plugin prettier-plugin-solidity --tab-width 4 --print-width 120 && prettier --write \"**/*.md\"",
1415
"lint": "npm run lint:format && npm run lint:links",

0 commit comments

Comments
 (0)