<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: blimyp</title>
    <description>The latest articles on DEV Community by blimyp (@blimyp).</description>
    <link>https://dev.to/blimyp</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4215211%2F25b2f072-5317-4465-b37e-97d65ae43bd5.png</url>
      <title>DEV Community: blimyp</title>
      <link>https://dev.to/blimyp</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/blimyp"/>
    <language>en</language>
    <item>
      <title>A Hebrew &amp; Gregorian date picker for Flutter</title>
      <dc:creator>blimyp</dc:creator>
      <pubDate>Thu, 29 Oct 2026 12:10:38 +0000</pubDate>
      <link>https://dev.to/blimyp/a-hebrew-gregorian-date-picker-for-flutter-4a4b</link>
      <guid>https://dev.to/blimyp/a-hebrew-gregorian-date-picker-for-flutter-4a4b</guid>
      <description>&lt;p&gt;If you've ever built a Flutter app for a Hebrew-speaking or Jewish audience, you've probably needed users to pick a date — and see the Hebrew date along with the Gregorian one.&lt;/p&gt;

&lt;p&gt;Flutter's built-in &lt;code&gt;showDatePicker&lt;/code&gt; only knows the Gregorian calendar, so I built &lt;strong&gt;hebrew_date_picker&lt;/strong&gt;: a Material-style date picker that shows both calendars side by side.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0qj520h1u49dk83ine6p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0qj520h1u49dk83ine6p.png" alt=" " width="315" height="493"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Every day cell shows the Gregorian day and the Hebrew day in letters (&lt;code&gt;12 / א׳&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;The month title shows the Hebrew months it covers (&lt;code&gt;September 2026 / אלול–תשרי תשפ״ז&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;The header shows the full Hebrew date of the selected day&lt;/li&gt;
&lt;li&gt;Tapping the month title opens a year grid with both Gregorian and Hebrew years&lt;/li&gt;
&lt;li&gt;A range picker for selecting start and end dates&lt;/li&gt;
&lt;li&gt;Optional marking of Yamim Tovim&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;dependencies&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;hebrew_date_picker&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;^0.5.0&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Usage
&lt;/h2&gt;

&lt;p&gt;The simplest way is a ready-made form field:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="n"&gt;HebrewDateFormField&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="nl"&gt;firstDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2020&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;lastDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2030&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;decoration:&lt;/span&gt; &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="n"&gt;InputDecoration&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="nl"&gt;labelText:&lt;/span&gt; &lt;span class="s"&gt;'Date'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="nl"&gt;suffixIcon:&lt;/span&gt; &lt;span class="n"&gt;Icon&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Icons&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;calendar_today&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;validator:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;date&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;date&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt; &lt;span class="o"&gt;?&lt;/span&gt; &lt;span class="s"&gt;'Pick a date'&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nl"&gt;onChanged:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;date&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;date&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Or open it as a dialog:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="o"&gt;?&lt;/span&gt; &lt;span class="n"&gt;date&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;showHebrewDatePicker&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="nl"&gt;context:&lt;/span&gt; &lt;span class="n"&gt;context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nl"&gt;initialDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;now&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
  &lt;span class="nl"&gt;firstDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2020&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;lastDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2030&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Hebrew-only mode
&lt;/h2&gt;

&lt;p&gt;With &lt;code&gt;CalendarMode.hebrew&lt;/code&gt;, each page is a whole Hebrew month:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="n"&gt;showHebrewDatePicker&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="nl"&gt;context:&lt;/span&gt; &lt;span class="n"&gt;context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nl"&gt;initialDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;now&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
  &lt;span class="nl"&gt;firstDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2020&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;lastDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2030&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;calendarMode:&lt;/span&gt; &lt;span class="n"&gt;CalendarMode&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;hebrew&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgc5sd793ag933vpbwwft.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgc5sd793ag933vpbwwft.png" alt=" " width="317" height="497"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Picking a birth date
&lt;/h2&gt;

&lt;p&gt;For dates far from today, open the picker on the year grid:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="n"&gt;showHebrewDatePicker&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="nl"&gt;context:&lt;/span&gt; &lt;span class="n"&gt;context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nl"&gt;initialDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1990&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;firstDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1900&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="nl"&gt;lastDate:&lt;/span&gt; &lt;span class="n"&gt;DateTime&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;now&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
  &lt;span class="nl"&gt;initialDatePickerMode:&lt;/span&gt; &lt;span class="n"&gt;DatePickerMode&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;year&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Under the hood
&lt;/h2&gt;

&lt;p&gt;Hebrew dates are calculated with &lt;a href="https://pub.dev/packages/kosher_dart" rel="noopener noreferrer"&gt;kosher_dart&lt;/a&gt;, and the calendar grid is built on &lt;a href="https://pub.dev/packages/table_calendar" rel="noopener noreferrer"&gt;table_calendar&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;📦 &lt;a href="https://pub.dev/packages/hebrew_date_picker" rel="noopener noreferrer"&gt;pub.dev&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;▶️ &lt;a href="https://blimyp.github.io/hebrew_date_picker/" rel="noopener noreferrer"&gt;Live demo&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;💻 &lt;a href="https://github.com/blimyp/hebrew_date_picker" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/blimyp" rel="noopener noreferrer"&gt;
        blimyp
      &lt;/a&gt; / &lt;a href="https://github.com/blimyp/hebrew_date_picker" rel="noopener noreferrer"&gt;
        hebrew_date_picker
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Flutter date picker that shows the Hebrew (Jewish) date in every day cell
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;hebrew_date_picker&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;A Material-style Flutter date picker that shows the &lt;strong&gt;Hebrew (Jewish) date&lt;/strong&gt; alongside the
Gregorian one:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;every day cell shows the Gregorian day and the Hebrew day in letters (e.g. &lt;code&gt;12&lt;/code&gt; / &lt;code&gt;א׳&lt;/code&gt;),&lt;/li&gt;
&lt;li&gt;the month title shows the Gregorian month and the Hebrew months it covers
(e.g. &lt;code&gt;September 2026&lt;/code&gt; / &lt;code&gt;אלול–תשרי תשפ״ז&lt;/code&gt;),&lt;/li&gt;
&lt;li&gt;the header shows the full Hebrew date of the selected day (e.g. &lt;code&gt;א׳ תשרי תשפ״ז&lt;/code&gt;),&lt;/li&gt;
&lt;li&gt;tapping the month title opens a year grid with the Gregorian and the Hebrew years
(e.g. &lt;code&gt;1990&lt;/code&gt; / &lt;code&gt;תש״נ–תשנ״א&lt;/code&gt;), so far-away dates are a couple of taps away,&lt;/li&gt;
&lt;li&gt;a range picker selects a start and an end date, with the Hebrew dates of both in the header.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://blimyp.github.io/hebrew_date_picker/" rel="nofollow noopener noreferrer"&gt;▶ Try the live demo&lt;/a&gt;&lt;/strong&gt; — no installation needed.&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://raw.githubusercontent.com/blimyp/hebrew_date_picker/main/screenshots/hebrew_date_picker.png"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fblimyp%2Fhebrew_date_picker%2Fmain%2Fscreenshots%2Fhebrew_date_picker.png" alt="Hebrew date picker" width="260"&gt;&lt;/a&gt; &lt;a rel="noopener noreferrer nofollow" href="https://raw.githubusercontent.com/blimyp/hebrew_date_picker/main/screenshots/hebrew_date_range_picker.png"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fblimyp%2Fhebrew_date_picker%2Fmain%2Fscreenshots%2Fhebrew_date_range_picker.png" alt="Hebrew date range picker" width="260"&gt;&lt;/a&gt; &lt;a rel="noopener noreferrer nofollow" href="https://raw.githubusercontent.com/blimyp/hebrew_date_picker/main/screenshots/hebrew_calendar_mode.png"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fblimyp%2Fhebrew_date_picker%2Fmain%2Fscreenshots%2Fhebrew_calendar_mode.png" alt="Hebrew date picker with CalendarMode.hebrew" width="260"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hebrew dates are calculated with &lt;a href="https://pub.dev/packages/kosher_dart" rel="nofollow noopener noreferrer"&gt;kosher_dart&lt;/a&gt; and the
calendar grid is built on &lt;a href="https://pub.dev/packages/table_calendar" rel="nofollow noopener noreferrer"&gt;table_calendar&lt;/a&gt;.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Installation&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="highlight highlight-source-yaml notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;&lt;span class="pl-ent"&gt;dependencies&lt;/span&gt;:
  &lt;span class="pl-ent"&gt;hebrew_date_picker&lt;/span&gt;: &lt;span class="pl-s"&gt;^0.5.0&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Usage&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;As&lt;/h3&gt;…&lt;/div&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/blimyp/hebrew_date_picker" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Feedback, issues and stars are very welcome! 🙏&lt;/p&gt;

</description>
      <category>dart</category>
      <category>flutter</category>
      <category>opensource</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
