The Firefly Festival of Majuli
LEDs, Circuits & Bioluminescence

The Firefly Festival of Majuli

On the world's largest river island, a boy discovers that even the smallest lights can turn darkness into magic.

LEDs, Circuits & Bioluminescence12-Month Curriculum 12h

Duration

3 sessions × 2 hours (6 hours total)

Track

12-Month Curriculum

Prerequisites

None

Materials

8 items needed

Learning Objectives

  • Explain how bioluminescence works at a chemical level (luciferin + luciferase + oxygen)
  • Build a working LED circuit on a breadboard — series and parallel configurations
  • Program an Arduino to produce PWM-controlled fading effects that mimic organic light
  • Understand how fireflies synchronize their flashing and relate it to coupled oscillator theory

Materials List

  • Arduino Uno or Nano
  • Breadboard and jumper wires
  • 10× green LEDs (5mm)
  • 10× 220Ω resistors
  • USB cable for Arduino
  • Computer with Arduino IDE installed
  • Optional: clear glass jar for final enclosure
  • Optional: soldering iron + solder for permanent build

Prerequisites

No prior electronics experience required • Basic math (multiplication, simple fractions) • Curiosity about how living things produce light

The Story

The Dark Island

Every year, when the monsoon clouds swallowed the moon and the power lines sagged under the weight of rain, Majuli became the darkest place in the world — or so it seemed to Joon, a boy of nine who was afraid of the dark.

"It's just darkness," said his grandmother, stirring rice over a wood fire. "It can't bite."

"But it can swallow you," said Joon. "It swallowed the whole island tonight."

The First Light

That evening, Joon sat on the bamboo veranda, hugging his knees, when he saw it — a tiny green light, blinking on and off near the banana trees. Then another. Then ten. Then a hundred.

Fireflies.

They came from everywhere — from the reeds by the river, from the paddy fields, from the mango groves. Thousands of them, each one no bigger than a grain of rice, each one carrying its own small lamp.

"Aita!" Joon called to his grandmother. "Come look!"

His grandmother came to the veranda and smiled. "Ah," she said. "The firefly festival has begun."

The Grandmother's Story

"Long ago," said Aita, "when Majuli was young and the Brahmaputra was still deciding where to flow, the island had no lights at all. No lamps, no candles, no fire. The people lived in darkness every night."

"How did they see?" asked Joon.

"They didn't. They learned to listen instead. They could hear a snake in the grass from fifty steps away. They could tell the time by the sound of birds. But still, they wished for light."

"One night, a little girl named Junbiri caught a fallen star in her hands. But the star was too hot to hold, and it shattered into a million tiny pieces. Each piece became a firefly — a living spark, cool enough to touch, bright enough to see by."

"Junbiri didn't get one big light. She got a million small ones. And that," said Aita, "was even better."

The Boy's Discovery

Joon stepped off the veranda and walked into the cloud of fireflies. They landed on his arms, his hair, his shoulders. Each one pulsed with a light so gentle it felt like a heartbeat.

He held out his palm and a single firefly landed on it. Its glow was barely enough to see his own fingers. But when he looked up, the whole field was alive — a galaxy of green lights floating in the warm, wet air.

One firefly is almost nothing, Joon thought. But together, they've turned the whole island into a sky.

The Lesson

From that night on, Joon was never afraid of the dark again. Not because the darkness went away — but because he understood that you don't need to be a big light to matter. You just need to glow. And if enough small lights glow together, even the darkest island becomes beautiful.

Every monsoon, when the power goes out on Majuli, the fireflies still come. The children still run into the fields to watch. And somewhere, an old grandmother still tells the story of Junbiri and the shattered star.

The end.

Try It Yourself

Choose your level. Everyone starts with the story — the code gets deeper as you go.

Story Progress

0%

Ready to Start Coding?

Here is a taste of what Level 1 looks like for this lesson:

Level 1: Explorer — Python
# Simulating firefly synchronization
# Watch random flashers gradually sync up!

import random

fireflies = [random.uniform(0, 1) for _ in range(6)]
nudge = 0.05   # how much each adjusts toward neighbours

for step in range(20):
    # Each firefly nudges toward the average
    avg = sum(fireflies) / len(fireflies)
    fireflies = [f + nudge * (avg - f) for f in fireflies]

    spread = max(fireflies) - min(fireflies)
    bar = "#" * int(spread * 50)
    print(f"Step {step+1:2d}: spread={spread:.3f} {bar}")

# After 20 steps, spread → 0 = perfectly synced!

This is just the first of 6 coding exercises in Level 1. By Level 4, you will build: Build a Firefly Jar.

By Level 4, enrolled students build: Build a Firefly Jar

Free

Level 0: Listener

Stories, science concepts, diagrams, quizzes. No coding.

You are here

Enrolled

Levels 1-4

Python, NumPy, Matplotlib, real projects, mentorship.

Sign Up Free

Stay Updated

Join Waitlist

Get notified when enrollment opens for your area.

Notify Me

Level 0 is always free. Coding levels (1-4) are part of our 12-Month Curriculum.