Skip to content

React Native Calendar Kit is a powerful and flexible calendar component for React Native applications. It provides a customizable and feature-rich calendar view with support for various functionalities

License

Notifications You must be signed in to change notification settings

howljs/react-native-calendar-kit

Repository files navigation

πŸ“… React Native Calendar Kit

The ultimate React Native calendar solution

React Native Calendar Kit is a modern, feature-rich calendar component. Whether you're building a scheduling app, event manager, or any time-based interface.

πŸš€ Production-ready β€’ 🎨 Highly customizable β€’ 🌍 Timezone aware

Version

Demo:

Calendar Demo

iOS:

ios_demo.mp4

Android:

android_demo.mp4

✨ Features

πŸ“… View Modes

  • πŸŒ… Multiple view types - Day, 3-days, week views with smooth transitions
  • 🌍 All-day events - Perfect for holidays, meetings, and multi-day events
  • πŸ‘₯ Resource calendar - Display multiple resources (rooms, employees, equipment) side by side

🎯 Interactions

  • βœ‹ Drag & drop - Intuitive event creation and editing
  • πŸ” Pinch to zoom - Smooth gesture-based zoom controls
  • πŸ“² Haptic feedback - Premium tactile responses for user actions
  • ↔️ Horizontal scrolling - Swipe between different calendar views

βš™οΈ Customization

  • 🎨 Theming system - Complete visual customization
  • πŸ“† Flexible day view - Hide/show specific days of the week
  • ⏰ Unavailable hours - Mark blocked time slots
  • πŸ”„ Recurring events - Full support for repeating events

πŸš€ Performance

  • ⚑ Optimized scrolling - Smooth day-by-day navigation
  • 🌐 Timezone aware - Handle multiple timezones effortlessly
  • πŸ“Š Overlap handling - Smart event positioning and spacing

πŸš€ Quick Start

Get up and running in under 2 minutes:

import { CalendarBody, CalendarContainer, CalendarHeader } from '@howljs/calendar-kit';

const MyCalendar = () => (
  <CalendarContainer>
    <CalendarHeader />
    <CalendarBody />
  </CalendarContainer>
);

That's it! Your calendar is ready with all the features enabled.

πŸ“š Resources

  • πŸ“– Documentation - Complete guides and API reference
  • πŸ”§ Example App - Live examples and implementation demos
  • πŸ’¬ Discussions - Community support and feature requests

πŸ“¦ Installation

Step 1: Install the package

npm install @howljs/calendar-kit

Step 2: Install peer dependencies

The calendar requires react-native-gesture-handler and react-native-reanimated for smooth interactions and animations.

βœ… Already installed? You can skip this step if you have the latest versions.

πŸ”Έ For Expo projects

npx expo install react-native-gesture-handler react-native-reanimated

πŸ”Έ For bare React Native projects

npm install react-native-gesture-handler react-native-reanimated

πŸ“‹ Follow setup guides: Reanimated β€’ Gesture Handler

Step 3: Optional - Haptic Feedback

Enhance user experience with tactile feedback during drag operations.

πŸ”Έ For Expo projects

npx expo install expo-haptics

πŸ”Έ For bare React Native projects

npm install react-native-haptic-feedback

Then enable it in your calendar:

<CalendarContainer useHaptic={true}>
  {/* Your calendar content */}
</CalendarContainer>

Show your support ⭐

If this library helped you, please consider giving it a star on GitHub!

About

React Native Calendar Kit is a powerful and flexible calendar component for React Native applications. It provides a customizable and feature-rich calendar view with support for various functionalities

Topics

Resources

License

Stars

Watchers

Forks

Contributors 9