contribution_heatmap 0.0.4 copy "contribution_heatmap: ^0.0.4" to clipboard
contribution_heatmap: ^0.0.4 copied to clipboard

A high-performance, GitHub-like contribution heatmap calendar widget for Flutter. Built with a custom RenderBox for maximum efficiency, full customization, and interactive tap support.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:contribution_heatmap/contribution_heatmap.dart';

void main() {
  runApp(const HeatmapExampleApp());
}

class HeatmapExampleApp extends StatelessWidget {
  const HeatmapExampleApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: const ExampleHomePage(),
    );
  }
}

class ExampleHomePage extends StatelessWidget {
  const ExampleHomePage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        centerTitle: true,
        title: const Text('Contribution Heatmap Example'),
      ),
      body: SingleChildScrollView(
        scrollDirection: Axis.horizontal,
        child: ContributionHeatmap(
          minDate: DateTime(2025, 4, 1), // Start date: March 1, 2025
          maxDate: DateTime.now(),
          entries: [
            ContributionEntry(DateTime(2025, 4, 23), 5),
            ContributionEntry(DateTime(2025, 4, 24), 7),
            ContributionEntry(DateTime(2025, 4, 25), 6),
            ContributionEntry(DateTime(2025, 4, 29), 5),
            ContributionEntry(DateTime(2025, 5, 3), 5),
            ContributionEntry(DateTime(2025, 5, 5), 5),
            ContributionEntry(DateTime(2025, 5, 11), 5),
            ContributionEntry(DateTime(2025, 5, 12), 5),
            ContributionEntry(DateTime(2025, 5, 18), 7),
            ContributionEntry(DateTime(2025, 5, 20), 7),
            ContributionEntry(DateTime(2025, 5, 24), 6),
            ContributionEntry(DateTime(2025, 6, 9), 8),
            ContributionEntry(DateTime(2025, 6, 10), 9),
            ContributionEntry(DateTime(2025, 6, 11), 6),
            ContributionEntry(DateTime(2025, 6, 12), 8),
            ContributionEntry(DateTime(2025, 6, 13), 7),
            ContributionEntry(DateTime(2025, 6, 14), 8),
            ContributionEntry(DateTime(2025, 6, 15), 6),
            ContributionEntry(DateTime(2025, 6, 19), 8),
            ContributionEntry(DateTime(2025, 6, 26), 5),
            ContributionEntry(DateTime(2025, 7, 3), 7),
            ContributionEntry(DateTime(2025, 7, 7), 7),
            ContributionEntry(DateTime(2025, 7, 8), 3),
            ContributionEntry(DateTime(2025, 7, 9), 4),
            ContributionEntry(DateTime(2025, 7, 10), 5),
            ContributionEntry(DateTime(2025, 7, 11), 5),
            ContributionEntry(DateTime(2025, 7, 12), 6),
            ContributionEntry(DateTime(2025, 7, 13), 7),
            ContributionEntry(DateTime(2025, 7, 28), 5),
            ContributionEntry(DateTime(2025, 7, 29), 4),
            ContributionEntry(DateTime(2025, 7, 30), 3),
            ContributionEntry(DateTime(2025, 7, 31), 6),
            ContributionEntry(DateTime(2025, 8, 1), 7),
            ContributionEntry(DateTime(2025, 8, 2), 4),
            ContributionEntry(DateTime(2025, 8, 3), 3),
            ContributionEntry(DateTime(2025, 8, 5), 5),
            ContributionEntry(DateTime(2025, 8, 13), 5),
            ContributionEntry(DateTime(2025, 8, 19), 5),
            ContributionEntry(DateTime(2025, 8, 25), 5),
            ContributionEntry(DateTime(2025, 8, 26), 4),
            ContributionEntry(DateTime(2025, 8, 27), 3),
            ContributionEntry(DateTime(2025, 8, 28), 2),
            ContributionEntry(DateTime(2025, 8, 29), 7),
            ContributionEntry(DateTime(2025, 8, 30), 4),
            ContributionEntry(DateTime(2025, 8, 31), 3),

            // You can add more entries...
          ],
          onCellTap: (date, value) {
            print('Tapped: $date with $value contributions');
          },
        ),
      ),
    );
  }
}
6
likes
150
points
149
downloads

Publisher

verified publisherabdullah.com.bd

Weekly Downloads

A high-performance, GitHub-like contribution heatmap calendar widget for Flutter. Built with a custom RenderBox for maximum efficiency, full customization, and interactive tap support.

Repository (GitHub)
View/report issues

Topics

#heatmap #heatmap-calendar #contribution-chart #contribution-heatmap

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter

More

Packages that depend on contribution_heatmap