# flutter_ethiopian_date_picker
A customizable Material 3 Ethiopian (Ge'ez) date picker for Flutter with accurate Gregorian conversion, date-range selection, localization, theming, calendar events, and `.ics` import/export.
## Why flutter_ethiopian_date_picker?
- Native Ethiopian (Ge'ez) calendar support
- Accurate Gregorian ⇄ Ethiopian conversion
- Material 3–styled date picker
- Embeddable calendar widget with month, week, and agenda views
- Date range selection
- Form integration
- Full localization support
- Customizable theming
- Keyboard and screen-reader accessible
- Ethiopian Orthodox, Islamic, national, and cultural calendar events
- `.ics` calendar export and import, RFC 5545–compliant
## Examples
Example app — home
Date picker — default theme
Range picker — selected range
Date picker — custom theme (deep orange)
Week view — Orthodox events
Agenda view — all event categories
.ics export & import
More examples (dark theme, Amharic, Afaan Oromo, Tigrinya)
Example app — dark theme
Localized — Amharic (አማርኛ)
Localized — Afaan Oromo, with keyboard-focus tooltip
Localized — Tigrinya (ትግርኛ)
## Installation
```yaml
dependencies:
flutter_ethiopian_date_picker: ^1.2.2
```
```sh
flutter pub get
```
```dart
import 'package:flutter_ethiopian_date_picker/flutter_ethiopian_date_picker.dart';
```
## Quick start
Show a date picker with the default configuration:
```dart
final date = await showEthiopianDatePicker(context: context);
```
## Customization
```dart
final date = await showEthiopianDatePicker(
context: context,
initialDate: EthiopianDate.today(),
firstDate: EthiopianDate(2010, 1, 1),
lastDate: EthiopianDate(2020, 13, 5),
locale: EthiopianLocale.amharic.code,
theme: EthiopianDatePickerTheme.material3(context).copyWith(
primaryColor: Colors.deepOrange,
selectedColor: Colors.deepOrange,
backgroundColor: Colors.white,
),
);
```
> `EthiopianDatePickerTheme` has no lightweight constructor — every field
> (including `onSelectedCo …