Near Learn

Build a real project · Beginner

Guided course: build a crowdfunding dApp

This is a guided course: instead of separate topics, you build one project — a Kickstarter-style crowdfunding dApp — from cargo near new to a verified mainnet deploy. Creators open campaigns with a goal and a deadline, backers pledge NEAR or a NEP-141 token, and when time is up the creator claims the funds or every backer pulls a refund.

Each lesson is a milestone. It states the goal, shows the code you add (full files where it matters, the exact delta otherwise), explains why it works on NEAR — with Solidity side by side where there is a real analog — and ends with a checklist of what should now work. Names, methods and storage prefixes stay the same from lesson to lesson, so the pieces add up to one contract, printed in full in the final lesson.

It assumes you know Rust basics and the NEAR fundamentals from NEAR by Example. Along the way you meet the things that trip up EVM developers in real projects: storage that someone must pay for, transfers that complete after your method returns, callbacks that must repair state, tokens that arrive by ft_on_transfer, and views that must stay bounded.

12 lessons~150 min36 quiz questionsFree · no sign-up

What you’ll learn

  • Scaffold, build and test a NEAR contract with cargo near and near-workspaces
  • Model state with near_sdk::store collections and make callers pay for the storage they add
  • Accept NEAR with #[payable] methods and enforce deadlines with block timestamps
  • Pay out safely: deduct first, transfer, and restore state in #[private] callbacks
  • Receive NEP-141 tokens through ft_on_transfer and pay them out with 1 yoctoNEAR ft_transfer
  • Emit NEP-297 events and design paginated, JavaScript-safe views
  • Deploy to testnet and mainnet with near-cli-rs, and connect a wallet-selector frontend
  • Ship verifiable builds (NEP-330) and upgrade a live contract with a state migration

Lessons