• Stars
    star
    176
  • Rank 216,987 (Top 5 %)
  • Language
    Elixir
  • License
    Other
  • Created almost 4 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Date/Time library for Elixir based upon intervals not instants

Tempo

β€œTime has no divisions to mark its passage, there is never a thunderstorm or blare of trumpets to announce the beginning of a new month or year. Even when a new century begins it is only we mortals who ring bells and fire off pistols.” Thomas Mann, The Magic Mountain, ch. 5, β€œWhims of Mercurius,” (1924), trans. by Helen T. Lowe-Porter (1928).

A Time library based upon conceptualizing time as intervals rather than instants. A blog of the ideas behind this library is at https://kipcole9.github.io/tempo/.

There is not much to see here yet, the current work is on implementing full support for ISO8601 dates/times (both part 1 and part 2).

ElixirConf 22 Video on Time Algebra

A talk that introduces a unified time type and builds on the idea of time as intervals is now on Youtube.

Project status

Whilst the commit volume is currently low, the mental effort going into the conceptual model is high. Expect more active progress in this repo during December 2022. The primary effort for the next updates will be time math (which is important for calculating explicit intervals and time differences) and time comparison (which is creating a very active discussion on the elixir-lang core mailing list).

Installation

Tempo is not yet available for installation from hex.pm. And since it has basically no functional utility at the moment, installing it would only be for experimentation and amusement.

def deps do
  [
    {:tempo, "~> 0.1.0", github: "kipcole9/tempo"}
  ]
end

The docs will be found at https://hexdocs.pm/tempo.

More Repositories

1

money

Elixir implementation of Money with Currency
Elixir
562
star
2

text

Text detection and processing for Elixir
Elixir
72
star
3

astro

Astronomical functions in Elixir focused on sun, moon and calendrical calculations
Elixir
48
star
4

money_sql

Money functions for the serialization of a money data type in Elixir
Elixir
27
star
5

rails-i18n-translation-inheritance-helper

If I18n.translate() fails in a locale, try a broader one. ie. If it fails in en-UK, try in 'en', or 'en-US', 'en-AU', 'en-CA' or other 'en' locales you have installed. This allows simple inheritance to cater for small but important differences between regions of the same language.
Ruby
26
star
6

url

URI/URL parsers in Elixir
Elixir
25
star
7

kday

Functions to return the date of the first, last or nth day of the week on, nearest, before or after a given date.
Elixir
9
star
8

digital_token

Elixir integration for ISO 24165 Digital Tokens through the DTIF registry data
Elixir
7
star
9

vcard

VCard in Elixir
Elixir
6
star
10

calendrical

Calendars and Calendar Calculations for Elixir
Elixir
6
star
11

postgresql-inheritance

Table inheritance, schemas, enums, table dumper compatibility for Rails
Ruby
5
star
12

ar_result_calculations

Adds various Array#methods to do calculations on ActiveRecord result sets
Ruby
4
star
13

caerus

Web analytics prototype (very early development)
JavaScript
3
star
14

dns

Authoritative DNS Server in Elixir
Erlang
3
star
15

trackster

Developmental analysis tool
JavaScript
3
star
16

attempt

Retry Budget in Elixir
Elixir
2
star
17

ar_to_html_table

Renders AR result sets into an html table
Ruby
2
star
18

redirector

Traphos redirector
Ruby
2
star
19

hermes_old

Hermes publishing and gallery system
Ruby
2
star
20

formulaic

Rails formbuilder to simplify generation; works well with 960 grid layout.
Ruby
1
star
21

ar_to_chart

Renders and AR result set as a chart
Ruby
1
star
22

calendrical-ruby

Calendrical calculations
Ruby
1
star
23

money_test

Test app for the Money repo
Elixir
1
star
24

elixir_timezone_rfc

RFC for Elixir Timezone support
1
star
25

text_corpus_udhr

A corpus using the Universal Declaration of Human Rights (UDHR) for use with the Text library
Elixir
1
star
26

thai_space

Thai script spacing
Elixir
1
star
27

packed_decimal

Decimal but packed into an integer
Elixir
1
star
28

cam_refactor

Camera refactor example
Elixir
1
star
29

advent_of_code

Advent of Code examples in Elixir
Elixir
1
star