PHPackages                             rohanadhikari/filament-nepali-datetime - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. rohanadhikari/filament-nepali-datetime

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

rohanadhikari/filament-nepali-datetime
======================================

A wrapper for Filament Component like FilamentDateTimePicker,TextColumn,TextEntry to support Nepali Date.

v2.0.3(2w ago)63452[2 PRs](https://github.com/rohanAdhikari1/filament-nepali-datetime/pulls)MITPHPPHP ^8.2CI passing

Since Oct 6Pushed 3w agoCompare

[ Source](https://github.com/rohanAdhikari1/filament-nepali-datetime)[ Packagist](https://packagist.org/packages/rohanadhikari/filament-nepali-datetime)[ Docs](https://github.com/rohanadhikari1/filament-nepali-datetime)[ GitHub Sponsors](https://github.com/rohanadhikari1)[ RSS](/packages/rohanadhikari-filament-nepali-datetime/feed)WikiDiscussions main Synced today

READMEChangelog (8)Dependencies (21)Versions (17)Used By (0)

📅 Filament Nepali Date Time Support
===================================

[](#-filament-nepali-date-time-support)

[![Latest Version on Packagist](https://camo.githubusercontent.com/2ab67f91af2059679683e0b71365eac8704950bf4f71b8a316ae1452440835fc/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f726f68616e616468696b6172692f66696c616d656e742d6e6570616c692d6461746574696d652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/rohanadhikari/filament-nepali-datetime)[![Filament v4](https://camo.githubusercontent.com/e857020ce403f773467fe713415068afe31722cc64aaab8792fc693338b3e928/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f46696c616d656e742d76342d6666626130303f7374796c653d666c61742d737175617265)](https://filamentphp.com/)[![Total Downloads](https://camo.githubusercontent.com/7b4ade40e2bdded9b90de983238b1a43cda0a547ee1872909a035a070c6c51da/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f726f68616e616468696b6172692f66696c616d656e742d6e6570616c692d6461746574696d652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/rohanadhikari/filament-nepali-datetime)

A FilamentPHP plugin that adds support for Nepali Date (Bikram Sambat - BS) in Filament’s form, infolist and table components. [![Banner](.github/screenshots/banner.jpg)](.github/screenshots/banner.jpg)

Installation
------------

[](#installation)

Require the package using Composer:

```
composer require rohanadhikari/filament-nepali-datetime
```

---

Screenshots
-----------

[](#screenshots)

### Nepali DateTime Picker in Form

[](#nepali-datetime-picker-in-form)

[![Nepali DateTime Picker](.github/screenshots/datepicker-3.png)](.github/screenshots/datepicker-3.png)[![Nepali DateTime Picker](.github/screenshots/datepicker-4.png)](.github/screenshots/datepicker-4.png)

### Nepali Date Picker in Form

[](#nepali-date-picker-in-form)

[![Nepali Date Picker](.github/screenshots/datepicker-1.png)](.github/screenshots/datepicker-1.png)[![Nepali Date Picker](.github/screenshots/datepicker-2.png)](.github/screenshots/datepicker-2.png)

### CLock TimePicker

[](#clock-timepicker)

[![Nepali Clock Picker](.github/screenshots/clockpicker-np.png)](.github/screenshots/clockpicker-np.png)[![Nepali Clock Picker](.github/screenshots/clockpicker-en.png)](.github/screenshots/clockpicker-en.png)

### Nepali Functions

[](#nepali-functions)

[![Nepali Functions](.github/screenshots/textentry-1.png)](.github/screenshots/textentry-1.png)[![Nepali Functions](.github/screenshots/textentry-2.png)](.github/screenshots/textentry-2.png)

---

Usage
-----

[](#usage)

To use `NepaliDate`, please refer to the documentation of [`NepaliDate`](https://github.com/rohanAdhikari1/NepalIDatePHP).

### 1. NepaliDateTimePicker

[](#1-nepalidatetimepicker)

Warning

If you are using `timestamp` and `datetime` column type consider using [`ADAsNepaliDate`](https://github.com/rohanAdhikari1/NepalIDatePHP/blob/main/docs/LARAVEL.md#cast-attribute-to-nepalidate) or `datetime` cast in model.

It extends Filament [DateTimePicker](https://filamentphp.com/docs/4.x/forms/date-time-picker) to support **Nepali Date (BS)**.

```
use RohanAdhikari\FilamentNepaliDatetime\NepaliDatetimePicker;
use RohanAdhikari\FilamentNepaliDatetime\NepaliDatePicker;

NepaliDatetimePicker::make('dob')
    ->label('Date of Birth (BS)')
    ->weekStartsOnSaturday()
    ->dehydrateStateInNepali()
    ->locale(NepaliDate::NEPALI)
    ->maxDate(NepaliDate::now())
    ->minDate(now()->subYear(20)), // Suport NepaliDate/ Carbon / Nepalidate string

    //or for date only
NepaliDatePicker::make('dob')
    ->format('d-m-Y')
    ->locale(NepaliDate::NEPALI)
    ->maxDate(NepaliDate::now()),
```

### Configuring the locale

[](#configuring-the-locale)

The picker supports two locales:

- `'en'` – English
- `'np'` – Nepali

```
NepaliDatetimePicker::make('dob')
    ->locale(NepaliDate::NEPALI);
```

### Configuring the first day of the week

[](#configuring-the-first-day-of-the-week)

Similar to [Filament Datetime Picker](https://filamentphp.com/docs/4.x/forms/date-time-picker#configuring-the-first-day-of-the-week). New convenient helper method is added.

```
NepaliDatePicker::make('dob')
    ->weekStartsOnSaturday()
```

---

### Disable Navigation When Out Of Range

[](#disable-navigation-when-out-of-range)

By Default, Navigation is disabled when date is out of range(like after maxdate or before mindate). To enable navigation even Date is Out of Range You can use `->disableNavWhenOutOfRange(false)`.

```
NepaliDatePicker::make('dob')
    ->disableNavWhenOutOfRange(false)
```

---

### Saving Date in Nepali Format

[](#saving-date-in-nepali-format)

By Default, Datetime is saved in english format even locale is 'np'. You can configure it to save in **Nepali Unicode** in the database.

Warning

In Laravel migrations, **don’t use** `timestamp` for Nepali dates. Instead, use `string`, because `timestamp` and `datetime` cannot store Unicode characters.

Note

If you are using any cast from [`NepaliDate`](https://github.com/rohanAdhikari1/NepalIDatePHP) in model, date will automatically be converted to the English locale.

```
NepaliDatetimePicker::make('dob')
    ->dehydrateStateInNepali()
```

---

### Methods Supporting NepaliDate

[](#methods-supporting-nepalidate)

These methods support **NepaliDate**, **Carbon**, or **NepaliDate string**:

MethodDescriptionExample Usage`defaultFocusedDate()`Sets the default date when the picker opens`->defaultFocusedDate(NepaliDate::now())``disabledDates()`Disables specific dates (array of Carbon/NepaliDate/strings)`->disabledDates([NepaliDate::now(),now()->addDay()])``maxDate()`Sets the maximum selectable date`->maxDate(NepaliDate::now())``minDate()`Sets the minimum selectable date`->minDate(now()->subYear(20))`---

### DatePicker Key Bindings

[](#datepicker-key-bindings)

The DatePicker supports keyboard navigation for accessibility and ease of use.

#### Navigation

[](#navigation)

- **Arrow Left** → Move focus to the previous day
- **Arrow Right** → Move focus to the next day
- **Arrow Up** → Move focus to the same week day in the previous week
- **Arrow Down** → Move focus to the same week day in the next week

#### Month / Year Shortcuts

[](#month--year-shortcuts)

- **Alt + Arrow Left** → Focus the previous month
- **Alt + Arrow Right** → Focus the next month
- **Alt + Arrow Up** → Focus the previous year
- **Alt + Arrow Down** → Focus the next year

#### Page Navigation

[](#page-navigation)

- **Page Up** → Previous month
- **Page Down** → Next month
- **Shift + Page Up** → Previous year
- **Shift + Page Down** → Next year

#### Week Navigation

[](#week-navigation)

- **Home** → Jump to the start of the week
- **End** → Jump to the end of the week

#### Selection &amp; Clearing

[](#selection--clearing)

- **Enter** → Select the currently focused day
- **Backspace / Delete / Clear** → Clear the selected date

---

### 2. ClockTimePicker

[](#2-clocktimepicker)

`ClockTimePicker` provides an interactive clock interface that allows users to select a time visually. It offers a more intuitive way to pick hours, minutes and seconds compared to traditional input fields.

Important

IF you are using Filament Panels, you must have to set up a custom theme. to setup follow the instruction in the [Filament Custom Theme Doc](https://filamentphp.com/docs/4.x/styling/overview#creating-a-custom-theme)

After setting up custom theme add the Clocktime picker css to your theme css file.

```
@import '../../../../vendor/rohanadhikari/filament-nepali-datetime/resources/css/clock-time-picker.css';
```

#### Usage

[](#usage-1)

```
    ClockTimePicker::make('nepali_time')
       ->label('Nepali Time')
       ->defaultFocusedTime(NepaliDate::now())
       ->disabledTimes(['09:00 AM', '10:00 AM'])
       ->maxTime('01:00 PM')
       ->seconds(false)
       ->closeOnTimeSelection()
       ->locale('np')
       ->suffixAction(
           Action::make('now')
            ->action(fn(Set $set) => $set('nepali_time', NepaliDate::now()))
       ),
```

---

#### Close picker after selecting time

[](#close-picker-after-selecting-time)

Use `->closeOnTimeSelection()` to automatically close the picker once a time is selected:

```
ClockTimePicker::make('nepali_time')
       ->label('Nepali Time')
       ->closeOnTimeSelection()
```

---

#### Disable Second Selection

[](#disable-second-selection)

Use `->seconds(false)` to disable seconds selection:

```
ClockTimePicker::make('nepali_time')
       ->label('Nepali Time')
       ->seconds(false)
```

---

### 3. Nepali Functions

[](#3-nepali-functions)

The following functions are available on TextColumn and TextEntry.

### `nepaliDate()`

[](#nepalidate)

Formats a stored **BS (Bikram Sambat)** date into English or Nepali locale.

Note

This does **not** convert AD → BS. If you want conversion, use [`toNepaliDate()`](#tonepalidate).

```
TextColumn::make('dob')
    ->nepaliDate(
        locale: 'np'
    );
    //or
TextEntry::make('dob')
    ->nepaliDateTime(
        locale: 'en'
    );
        //or
TextEntry::make('dob')
    ->nepaliTime(
        locale: 'en'
    );
```

ArgumentTypeDefaultDescription`format``string | Closure | null`default(from filament)Output format (BS).`timezone``string | Closure | null``null`Timezone for displaying date.`locale``string('en' or 'np') | Closure``'en'`Language/locale for formatted output.---

### `toNepaliDate()`

[](#tonepalidate)

Converts a stored AD date into BS date, then formats it.

```
// Table Column
TextColumn::make('dob')
    ->toNepaliDate(format: 'd M, Y', locale: 'np');
// Infolist Text Entry
TextEntry::make('dob')
    ->toNepaliDate(format: 'd M, Y', locale: 'en');
    //also
TextColumn::make('dob')
    ->toNepaliDateTime(locale: 'np');
TextEntry::make('dob')
    ->toNepaliTime(locale: 'en');
```

ArgumentTypeDefaultDescription`format``string | Closure | null`default(from filament)Output format (BS).`timezone``string | Closure | null``null`Timezone for displaying date.`locale``string('en' or 'np') | Closure``'en'`Language/locale for formatted output.---

### `nepaliSince()`

[](#nepalisince)

Displays a human-readable difference (e.g., “2 days ago”) between a stored BS date-time and the current time.

```
TextColumn::make('published_at')
    ->nepaliSince();
```

ArgumentTypeDefaultDescription`timezone``string | Closure | null``null`Timezone for the comparison.---

### `nepaliNumber()`

[](#nepalinumber)

Converts numbers into Nepali numerals or formatted currency representations.

```
TextEntry::make('salary')
    ->nepaliNumber(currencySymbol: true, locale: 'np');
```

ArgumentTypeDefaultDescription`currencySymbol``bool | Closure | string``false`Displays the currency symbol (e.g., रू).`only``bool | Closure``false`Appends “Only” to the end of the formatted number.`locale``'en' | 'np' | Closure``'en'`Output locale for numerals.`format``bool | Closure``true`Whether to apply number formatting (commas, etc.).---

### `nepaliWord()`

[](#nepaliword)

Converts numeric values into Nepali or English words, optionally as currency words.

```
TextEntry::make('amount')
    ->nepaliWord(locale: 'en');
```

ArgumentTypeDefaultDescription`currency``bool | Closure``false`Whether to convert the number into currency words.`only``bool | Closure``false`If true, Show Only at the end.`locale``'en' | 'np' | Closure``'en'`Language of the output (English or Nepali).---

### `nepaliMoney()`

[](#nepalimoney)

Formats numeric values as Nepali currency, complete with symbols, localization, and optional unit division.

```
TextEntry::make('total')
    ->nepaliMoney(currencySymbol: true, divideBy: 100, locale: 'np');
```

ArgumentTypeDefaultDescription`currencySymbol``bool | string``true`Whether to show currency symbol.`divideBy``int``0`Divide numeric value before display.`locale``'en' | 'np'``'en'`Output language.`only``bool``true`Append “Only” after amount.---

### `nepaliNumeric()`

[](#nepalinumeric)

Display numeric values using Nepali digit formatting (commas, symbols).

```
TextEntry::make('population')
    ->nepaliNumeric(locale: 'np');
```

ParameterTypeDefaultDescription`locale``'en' | 'np'``'en'`Output language.---

### NepaliFunctions for Tooltip

[](#nepalifunctions-for-tooltip)

You can append Tooltip to any Nepali function to display formatted tooltips.

```
TextColumn::make('created_at')->nepaliSinceTooltip();
```

**For example:**

- `nepaliDate()` → `nepaliDateTooltip()`
- `nepaliSince()` → `nepaliSinceTooltip()`
- `nepaliMoney()` → `nepaliMoneyTooltip()`

---

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Rohan Adhikari](https://github.com/rohanAdhikari1)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

49

—

FairBetter than 94% of packages

Maintenance96

Actively maintained with recent releases

Popularity23

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~28 days

Total

10

Last Release

17d ago

Major Versions

v0.0.2 → v1.0.02025-10-21

v1.1.1 → v2.0.02026-03-01

### Community

Maintainers

![](https://www.gravatar.com/avatar/722e0f070daa642c9e8674712aa1dbefba22a6de0d27745f9fa9d1497b59ea29?d=identicon)[rohan123](/maintainers/rohan123)

---

Top Contributors

[![rohanAdhikari1](https://avatars.githubusercontent.com/u/82314325?v=4)](https://github.com/rohanAdhikari1 "rohanAdhikari1 (52 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (7 commits)")

---

Tags

filamentfilament-bs-datefilament-nepali-date-timefilament-nepali-supportfilament-pluginlaravelrohanadhikarifilament-nepali-datetime

###  Code Quality

Static AnalysisPHPStan, Rector

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/rohanadhikari-filament-nepali-datetime/health.svg)

```
[![Health](https://phpackages.com/badges/rohanadhikari-filament-nepali-datetime/health.svg)](https://phpackages.com/packages/rohanadhikari-filament-nepali-datetime)
```

###  Alternatives

[filament/filament

A collection of full-stack components for accelerated Laravel app development.

3829.6M3.6k](/packages/filament-filament)[codewithdennis/filament-select-tree

The multi-level select field enables you to make single selections from a predefined list of options that are organized into multiple levels or depths.

329530.5k29](/packages/codewithdennis-filament-select-tree)[filament/actions

Easily add beautiful action modals to any Livewire component.

1327.7M78](/packages/filament-actions)[biostate/filament-menu-builder

An Elegant Menu Builder for FilamentPHP

6528.1k2](/packages/biostate-filament-menu-builder)[relaticle/flowforge

Flowforge is a lightweight Kanban board package for Filament that works with existing Eloquent models.

413106.5k6](/packages/relaticle-flowforge)[valentin-morice/filament-json-column

A simple package to view and edit your JSON columns in Filament

60517.2k](/packages/valentin-morice-filament-json-column)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
