jalaali alternatives and similar packages
Based on the "Date and Time" category.
Alternatively, view jalaali alternatives based on common mentions on social networks and blogs.
-
filtrex
A library for performing and validating complex filters from a client (e.g. smart filters) -
Crontab
Parse Cron Expressions, Compose Cron Expression Strings and Caluclate Execution Dates. -
Ex_Cldr_Dates_Times
Date & times formatting functions for the Common Locale Data Repository (CLDR) package https://github.com/elixir-cldr/cldr -
timex_interval
A date/time interval library for Elixir projects, based on Timex. -
block_timer
Macros to use :timer.apply_after and :timer.apply_interval with a block -
emojiclock
An Elixir module for returning an emoji clock for a given hour -
Calixir
Calixir is a port of the Lisp calendar software calendrica-4.0 to Elixir. -
japan_municipality_key
Elixir Library for Japan municipality key converting
Free Global Payroll designed for tech teams
Do you think we are missing an alternative of jalaali or a related project?
README
Elixir Jalaali calendar
Elixir implementation of jalaali.js which contains a Calendar implementation for jalaali and some functions for converting Jalaali and Gregorian calendar systems to each other.
Installation
You can install jalaali
by Addding it to your list of dependencies in mix.exs
:
def deps do
[{:jalaali, "~> 0.3"}]
end
Usage
After installing jalaali package. you can create Dates/DateTimes in jalaali or convert Dates/DateTimes form other calendars back an forth.
This feature is intruduced in Elixir 1.5 so in any versions below 1.5 the Date
and DateTime
modules lack functions for converting calendars. However you can
just copy those modules but its just better to migrate to 1.5 or above
How to use
Creating new Date
Date.new(1396, 6, 30, Jalaali.Calendar) {:ok, %Date{calendar: Jalaali.Calendar, day: 30, month: 6, year: 1396}}
Converting a DateTime to Jalaali
datetime_in_any_calendar = DateTime.utc_now(Calendar.ISO) {:ok, jalaali_datetime} = DateTime.convert(datetime_in_any_calendar, Jalaali.Calendar)
Converting a DateTime from Jalaali
jalaali_datetime = DateTime.utc_now(Jalaali.Calendar) {:ok, iso_datetime} = DateTime.convert(jalaali_datetime, Calendar.ISO)
Converting a Date to Jalaali
date_in_any_calendar = Date.new(2017, 1, 1, Calendar.ISO) {:ok, jalaali_date} = Date.convert(date_in_any_calendar, Jalaali.Calendar)
Converting a Date from Jalaali
{:ok, jalaali_date} = Date.new(1396, 6, 30, Jalaali.Calendar) {:ok, iso_date} = Date.convert(jalaali_date, Calendar.ISO)
Thats super easy. :)
License
This project is license under MIT.
For more information please check LICENSE
*Note that all licence references and agreements mentioned in the jalaali README section above
are relevant to that project's source code only.