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
ios_demo.mp4
android_demo.mp4
- 🌅 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
- ✋ 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
- 🎨 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
- ⚡ Optimized scrolling - Smooth day-by-day navigation
- 🌐 Timezone aware - Handle multiple timezones effortlessly
- 📊 Overlap handling - Smart event positioning and spacing
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.
- 📖 Documentation - Complete guides and API reference
- 🔧 Example App - Live examples and implementation demos
- 💬 Discussions - Community support and feature requests
npm install @howljs/calendar-kitThe 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.
npx expo install react-native-gesture-handler react-native-reanimatednpm install react-native-gesture-handler react-native-reanimated📋 Follow setup guides: Reanimated • Gesture Handler
Enhance user experience with tactile feedback during drag operations.
npx expo install expo-hapticsnpm install react-native-haptic-feedbackThen 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!
