What problem does it solve? Writing Algorand smart contracts requires knowing modern Puya-based languages, correct storage and transaction patterns, and avoiding deprecated tools like PyTEAL and Beaker. This Skill guides contract creation by searching official documentation, retrieving canonical examples, and generating tested, compilable code. ## Core Features & Use Cases - Contract Generation: Create new Algorand smart contracts in Algorand TypeScript (PuyaTs) by default, or Algorand Python (PuyaPy) when explicitly requested. - Pattern Guidance: Provides reference material for ARC-4 methods, decorators, GlobalState/LocalState/Box storage, inner transactions, and AVM types. - Build and Test Workflow: Integrates with AlgoKit commands to compile contracts and run integration tests using generated clients. - Use Case: Ask for a voting contract or an NFT contract, and receive code adapted from official Algorand Foundation example repositories with corresponding tests, ready to build with algokit project run build. ## Quick Start Create an Algorand smart contract for a voting application with methods to register voters and cast votes, then build and test it with AlgoKit.