cairo-contract-events

star 3

Explain Starknet contract events, event enums, and emitting events; use when a request involves defining or emitting events in Cairo.

teddyjfpender By teddyjfpender schedule Updated 1/22/2026

name: cairo-contract-events description: Explain Starknet contract events, event enums, and emitting events; use when a request involves defining or emitting events in Cairo.

Cairo Contract Events

Overview

Explain how to define events and emit them from Cairo contracts.

Quick Use

  • Read references/contract-events.md before answering.
  • Define an Event enum with #[event] and #[derive(starknet::Event)].
  • Mark indexed fields with #[key].

Response Checklist

  • Emit events with self.emit(Event::Variant(...)).
  • Use struct variants to keep event fields clear and typed.
  • Use #[key] for fields that should be indexed.

Example Requests

  • "How do I emit an event from a contract?"
  • "What does #[key] do on an event field?"
  • "How do I define multiple event types?"
Install via CLI
npx skills add https://github.com/teddyjfpender/skill-issues --skill cairo-contract-events
Repository Details
star Stars 3
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator
teddyjfpender
teddyjfpender Explore all skills →