- The Aptos Blockchain
- Introduction
- 1. Getting Started
❱
- 1.1. Installation
- 1.2. Hello Blockchain!
- 1.3. Hello Aptos CLI!
- 2. Programming a Guessing Game
❱
- 2.1. Guessing Game Contract
- 2.2. Testing the Contract
- 2.3. Deploying the Contract
- 2.4. Interacting with the Contract
- 2.5. Extending the Contract
- 2.6. Conclusion
- 3. Common Programming Concepts
❱
- 3.1. Variables
- 3.2. Data Types
- 3.3. Functions
- 3.4. Comments
- 3.5. Control Flow
- 4. Understanding Ownership
❱
- 4.1. Ownership Basics
- 4.2. Move Types and Ownership
- 4.3. Transfer and Borrowing
- 4.4. Reference Restrictions
- 5. Using Structs to Structure Related Data
❱
- 5.1. Defining and Instantiating Structs
- 5.2. Structs and How They Become Resources
- 5.3. Structs and Abilities
- 5.4. Example Program Using Structs
- 5.5. Struct Method Syntax
- 6. Enums and Pattern Matching
❱
- 6.1. Defining Enums
- 6.2. The match Control Flow Concept
- 7. Managing Modules and Packages
❱
- 7.1. Module Basics
- 7.2. Module Imports
- 7.3. Function Scopes
- 7.4. Package Basics
- 7.5. Package Dependencies
- 7.6. Package Publishing
- 8. Common Collections
❱
- 8.1. Vectors
- 8.2. Maps
- 8.3. Tables
- 9. Error Handling
❱
- 9.1. Aborting Unrecoverable Errors
- 9.2. Handling Recoverable Errors
- 9.3. When to Use Aborts vs. Recoverable Errors
- 10. Generics Types
❱
- 10.1. Generic Data Types
- 10.2. Considerations using GEnerics
- 11. How to Write Tests
❱
- 11.1. Writing Unit Tests
- 11.2. Running Unit Tests
- 11.3. Coverage
- 11.4. Formal Verification
- 12. Lambda Closures
❱
- 12.1. Defining and Using Closures
- 13. Events
❱
- 13.1. Defining and Emitting Events
- 13.2. Listening to Events
- 13.3. Indexing Events
- 14. Concurrency
❱
- 14.1. Concurrency Basics
- 14.2. Concurrency and Move Types
- 15. Design Patterns
❱
- 15.1. Account Authorization by Signer
- 15.2. Event Emission
- 16. Data Models
❱
- 16.1. Account Model
- 16.2. Object Model
- 16.3. Model Tradeoffs
- 17. Advanced Topics
❱
- 17.1. Binary Canonical Serialization (BCS)
❱
- 17.1.1. Primitives
- 17.1.2. Sequences
- 17.1.3. Structs
- 17.1.4. Enums
- 17.1.5. Strings
- 17.1.6. Options
- 17.2. Storage
❱
- 17.2.1. On-Chain Storage
- 17.2.2. Off-Chain Storage
- 17.3. Gas
❱
- 17.3.1. Execution
- 17.3.2. IO
- 17.3.3. Storage
- 17.3.4. Configuration
- 18. Standard Libraries
❱
- 18.1. Coin (legacy)
- 18.2. Fungible Asset
- 18.3. Digital Asset
- 18.4. MoveStdLib
- 18.5. AptosStdLib
- 18.6. AptosFramework
- 19. Aptos By Example
❱
- 19.1. Hello Blockchain
- 19.2. Errors
- 20. Learning Resources
- 21. Appendix
❱
- 21.1. CLI Installation Methods