Aiken
Aiken is a modern smart contract platform for Cardano, a pure functional programming language that's small, easy to learn, and built for robustness. This means that most of the time, the compiler is smart enough to determine the type of something without requiring user annotation. Writing smart contracts should be easy and safe. With Aiken, you can get started in minutes, not days, and rapidly build confidence that your on-chain code does what's intended.

A Language Built for Smart Contracts
Aiken brings strong static typing with inference, first-class functions, custom types, and modules. The language compiles directly to Untyped Plutus Core (UPLC), Cardano's native smart contract execution format, giving you full access to the blockchain's capabilities. Its syntax resembles other modern languages like Rust, Elm and Gleam, but Aiken is specifically designed for smart contract development and natively supports the mental model required on Cardano.
Unlike many other languages adapted for blockchain use, Aiken was designed from the ground up for smart contract development. This focused approach means every feature serves the goal of writing secure, auditable on-chain code.
Modern Development Experience
The platform provides a single toolchain with minimal configuration that handles everything from compilation to testing. You get quick, friendly feedback with helpful error diagnostics that actually make sense, plus Language Server Protocol support for autocompletion and real-time error checking in VS Code, Zed, Vim/Neovim, and Emacs.
The built-in testing framework supports both unit tests and property-based testing. Execution cost evaluation and trace reporting help you optimize your contracts before deployment.
Understanding the Architecture
A common misconception is that Cardano smart contracts must be written in Haskell. The reality is that Cardano's virtual machine executes Untyped Plutus Core (UPLC), and Aiken compiles straight to UPLC, just like Plinth or Plutarch which are written in Haskell. Haskell is just one of several ways to "generate" UPLC, not a requirement.
Aiken focuses exclusively on on-chain validator scripts. These define the logic that validates Cardano transactions. For off-chain stuff like building transactions, wallet integration, and UIs, you'll use other tools from the Cardano ecosystem.
Getting Started
Install Aiken using aikup, the official installer and version manager:
- npm
- Homebrew
- Manual
npm install -g @aiken-lang/aikup
brew install aiken-lang/tap/aikup
# Download and run the installer script
curl -sSfL https://install.aiken-lang.org | bash

Next Steps
Visit aiken-lang.org for the complete language guide, tutorials, and extensive documentation. The GitHub repository contains examples and a highly active community.
Continue the journey and join the developer community on TxPipe's Discord for further support and guidance.
Educational Resources
Aiken Smart Contract Development Course
| Course | Name | Video |
|---|---|---|
| 1/15 | Intro Orientation | Watch Video → |
| 2/15 | Installation and Setup | Watch Video → |
| 3/15 | First Validator | Watch Video → |
| 4/15 | Marketplace Setup | Watch Video → |
| 5/15 | Datums and Redeemers | Watch Video → |
| 6/15 | Delist Redeemer | Watch Video → |
| 7/15 | Buy Redeemer | Watch Video → |
| 8/15 | Edit Redeemer | Watch Video → |
| 9/15 | Unit Tests | Watch Video → |
| 10/15 | Testing - Buy | Watch Video → |
| 11/15 | Testing Library | Watch Video → |
| 12/15 | Testing - Edit | Watch Video → |
| 13/15 | Testing - Testing Tracing | Watch Video → |
| 14/15 | Project - Transaction Counter | Watch Video → |
| 15/15 | Project - Fractionalized NFT | Watch Video → |
Project Based Learning with Andamio
Continue with Aiken Project Based Learning that takes you from beginner to advanced Cardano smart contract development concepts.
| Course | Name | Video |
|---|---|---|
| 101 | Getting Started with Aiken | Watch Video → |
| 102 | Writing Your First Smart Contract | Watch Video → |
| 103 | Running Tests with Mock Transaction | Watch Video → |
| 201 | Writing Smart Contracts with Validation Logic | Watch Video → |
| 202 | Writing Smart Contracts with Validation Logic on Inputs | Watch Video → |
| 300 | Blueprint - Compile Scripts for DApp | Watch Video → |
| 301 | Architecture for your Decentralized Application | Watch Video → |
| 302 | Bad Contract Examples | Watch Video → |
I Can Aiken (Book)
I Can Aiken is an open-source developer’s guide to writing secure, modern blockchain scripts on Cardano using the Aiken language.
Written by John Greene, the book is designed to be approachable for new developers while still offering depth for advanced readers.
The book covers essential topics like:
- Fundamentals of Aiken
- Writing secure validator scripts
- Common smart contract patterns
- Vulnerabilities and design pitfalls to avoid
- Practical examples you can reuse and adapt
The project is open source and available in the Cardano Academy GitHub repository.
This makes it easy for the community to contribute improvements and for educators to integrate it into courses and workshops.
Danolearn
Visit Danolearn for an interactive learning experience.
Blogs
Examples
- Visit Awesome Aiken repository to find a curated list of open-source projects using Aiken.
- For advanced design patterns, check out the Aiken Design Patterns repository.
Development Workflow
- Write your validator: Define types and validation logic in
.akfiles - Build: Run
aiken buildto generateplutus.jsonwith compiled scripts - Use off-chain: Import the compiled scripts in your off-chain application
- Parameterize if needed: Apply parameters to scripts before deployment
Common Utilities/Helpers
These functions create reusable validation logic for common operations. These utility functions eliminate repetitive code and provide safe, tested implementations for common validator operations:
- To discover a list of utility libraries providing functions to streamline common operations, visit Aiken Package Registry.
- A great library of reusable functions to simplify your dev workflows which gives you a access to common use cases to be imported into your Aiken project. Definitely check out Vodka.
Testing in Aiken
Aiken provides first-class support for both unit tests and property-based tests. Tests run on the same virtual machine as your on-chain code and report CPU/memory costs, making them effective benchmarks. Tests must return True to pass.
Debugging
- Gastronomy, is an advanced tool that lets you step through Cardano smart contract code, line-by-line.
- Aiken Playground is an online environment where developers can test and experiment with Aiken functions and smart contracts without needing to install software on their local device.