30 open-source projects similar to spencermountain/spacetime, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Spacetime alternative.
Arrow is a Python date and time library that provides a simplified interface for creating and manipulating timestamps by wrapping the Python standard library. It serves as a tool for managing date objects, handling timezone offsets, and performing relative date calculations. The library is distinguished by its ability to humanize timestamps into natural language relative descriptions across multiple locales and parse human-readable time phrases back into precise date objects. It also features a specialized parser for converting ISO 8601 strings and custom formatted text into date objects. Br
Tempo is a JavaScript date manipulation library that provides a suite of tools for parsing, formatting, and calculating dates and times. It serves as a date arithmetic engine, a locale-aware formatter, and a timezone offset manager for native JavaScript date objects. The library includes a dedicated ISO 8601 date parser for validating and converting standardized strings into date objects. It handles geographic normalization through IANA timezone offset management and utilizes the native Internationalization API for region-specific date formatting. The project covers a broad range of date and
SwiftDate is a date manipulation library for the Swift programming language. It provides a toolkit for parsing, validating, and formatting dates, times, and timezones. The library includes a relative time generator for producing date offsets based on reference points such as tomorrow or next week, and a localized date formatter for transforming date objects into human-readable strings across multiple languages and locales. It also features an ISO8601 date parser to convert standardized date strings from SQL, HTTP, and ISO8601 formats into structured objects, alongside tools for managing timez
Pendulum is a Python date and time library that provides a simplified interface for date arithmetic, ISO parsing, localization, and timezone management. It serves as a replacement for the standard library datetime module, extending existing classes to maintain compatibility while offering a more intuitive management interface. The library distinguishes itself through a natural language date formatter that translates time differences into localized strings and a dedicated ISO 8601 date parser. It also includes tools for time-dependent logic testing, allowing the system clock to be mocked or fi
Moment is a JavaScript date manipulation library used for parsing, validating, manipulating, and formatting dates and times. It provides a system for converting date strings into structured objects using the ISO 8601 standard or custom tokens. The library includes a timezone management tool for handling UTC offsets and geographic timezones, ensuring accurate date calculations across different regions. It features an internationalized date formatter and a relative time calculator to render timestamps as human-friendly durations adapted to various cultural locales and languages. The project co
Pendulum is a Python datetime library used for creating, manipulating, and formatting date and time objects with native timezone awareness. It extends the native Python datetime class to maintain compatibility while providing a specialized engine for date arithmetic and timezone management. The library features a dedicated ISO 8601 and RFC 3339 parser that converts standardized strings into date objects without requiring manual format strings. It also includes a relative time generator for producing natural language descriptions of time differences and a timezone management tool that automati
DateTools is a date manipulation library for iOS applications that provides utilities for date arithmetic, range management, and relative time formatting. It functions as a set of tools to shift dates by specific units, calculate durations between timestamps, and convert dates into localized, human-readable strings. The library specializes in the analysis of time spans, offering systems to define, compare, and organize overlapping or sequential time periods. It includes logic to determine chronological relationships, such as whether dates fall within specific windows or how different time per
This project is a proposal for a new immutable date and time API in JavaScript. It serves as a precision time-tracking library and a multi-calendar date engine designed to replace the legacy Date object. The system is distinguished by its support for multiple calendar systems beyond the ISO standard and its use of IANA-based time zone resolution. It provides a framework for managing daylight saving transitions and UTC offsets while maintaining nanosecond precision for global timestamps. The API covers broad functional areas including complex date and time arithmetic, locale-aware formatting,
Scriban is a .NET text templating engine and embedded scripting language used for dynamic text generation. It functions as an abstract syntax tree manipulation tool and a template parser, allowing for the conversion of scripts into visitable trees for analysis, modification, and rendering. The engine is specifically designed for Native AOT compatibility, utilizing a reflection-free API to execute templates in trimmed environments. It also provides a dedicated parser and conversion system for Liquid templates, enabling the migration and execution of Liquid scripts within .NET. The project cov
Scriban is a text templating library and .NET scripting engine used for dynamic text generation. It functions as a template processor and a safe scripting sandbox, providing a secure execution environment that restricts object exposure to prevent unauthorized code execution. The project also includes an abstract syntax tree template parser that allows for programmatic template analysis and modification. The engine features a dedicated Liquid template engine and compatibility mode, allowing it to parse, execute, and convert templates written in Liquid syntax. It distinguishes itself through a
Chrono is a Rust date and time library used for managing calendar dates, clock times, and timezone conversions. It functions as a high-precision timestamp tool and temporal data serializer for converting date and time objects into structured formats. The library includes a timezone conversion engine to translate timestamps between different geographical zones and manage local time configurations. Its broader capabilities cover date string formatting, high-precision timing, and the serialization of temporal data for database storage or network transmission.
Carbon is a Go library for semantic date and time calculations, formatting, and parsing. It provides a semantic interface to simplify temporal data handling and improve the readability of date and time manipulations. The library is distinguished by its support for multi-calendar date conversion, allowing transformations between Gregorian, Chinese Lunar, Persian, and Hebrew calendar systems. It also includes a localized temporal framework that uses ISO 639-1 codes to format dates and relative time differences across multiple language locales. Additional capabilities cover global time zone man
date-fns is a JavaScript date utility library providing a collection of pure functions for manipulating, formatting, and calculating dates and times. It serves as an immutable date manipulation library and a tool for time zone management, ensuring that date transformations are performed without modifying the original date objects. The library functions as a date formatting tool that converts date objects into human-readable strings using custom patterns and international locales. It includes a specific toolset for adjusting and calculating date representations across different geographical re
react-calendar is a customizable date grid and picker for React applications. It provides an interactive interface for selecting single or multiple dates and navigating between months and years. The component uses browser internationalization APIs to format months and days, enabling multilingual date formatting for different global regions. It allows for external customization through prop-driven render overrides to replace default date cell displays. The library handles the underlying date calculations and state-driven navigation required for scheduling interfaces and date-based grids.
Sugar is a JavaScript utility library designed to extend native objects and prototypes with additional methods for data manipulation and transformation. It functions as a toolkit for object utilities, date manipulation, string inflection, and the polyfilling of missing or broken standard language features. The library provides the ability to map utility methods directly onto built-in prototypes or wrap values in temporary objects to enable method chaining without modifying global prototypes. It also includes a polyfill system to ensure consistent behavior across different execution environmen
Taiga UI is an Angular UI component library and accessible design system used for building enterprise web interfaces. It provides a comprehensive collection of reusable interface elements and layout tools, functioning as a mobile-first UI kit with responsive components that adapt to different device capabilities. The library distinguishes itself through an integrated data visualization library featuring various chart types and a dedicated form management framework with built-in validation and formatting for specialized data. It also features AI-driven development workflows by integrating comp
pysheeet is a technical reference library providing a curated collection of code snippets and implementation patterns for advanced Python development, system integration, and high-performance computing. It serves as a comprehensive guide for implementing low-level network programming, native C extensions, and asynchronous and concurrent programming. The project provides specialized frameworks for the development and deployment of large language models, including tools for distributed GPU inference and high-performance serving. It also includes detailed patterns for high-performance computing
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
DataFrame is a C++ tabular data library and manipulation engine designed for managing heterogeneous data in contiguous memory. It functions as a statistical analysis framework and time series analysis toolkit, providing the means to store, index, and transform multidimensional datasets. The project distinguishes itself through a high-performance execution model that utilizes column-major storage, SIMD-aligned memory allocation, and a thread-pool for parallel computations. It employs a visitor-based algorithm dispatch system and policy-driven transformations to decouple data processing logic f
This project is a reusable React datepicker component providing an accessible, localized interface for selecting dates and times within web applications. It functions as an input field that triggers a calendar popup for precise temporal data entry. The component is designed for flexibility, allowing for a customizable calendar layout and the integration of custom external elements to trigger the picker. It supports marking holidays with custom labels and styles and implements date selection restrictions through boundaries, exclusion lists, and filter functions. The system includes comprehens
Now is a date and time manipulation library for Go designed to generate precise calendar boundaries and convert time strings into structured objects. It serves as a utility for calculating the start and end timestamps for days, weeks, months, and years. The project provides tools for calculating specific weekdays relative to a reference point and performing date arithmetic to determine time ranges. It includes a toolkit for parsing date and time strings using configurable layouts and formats. The library functions as a wrapper for the standard Go time package to provide an interface for comp
Arrow is a Python date and time library designed for parsing, formatting, and manipulating date and time objects. It provides a simplified interface for these operations compared to the Python standard library. The library includes tools for converting standardized date strings via an ISO 8601 parser and transforming timestamps into human-readable relative strings across different locales. It also features a utility for translating timestamps between global timezones using location data objects. Additional capabilities cover date string formatting, time object generation, and the calculation
Day.js is a lightweight utility for parsing, validating, and manipulating date objects. It provides a fluent, chainable interface that allows for complex time calculations and transformations to be performed through a sequence of readable method calls. By utilizing an immutable wrapper pattern, the library ensures data integrity by creating new instances for every operation rather than modifying existing objects. The project is distinguished by a minimalist core abstraction that maintains a small footprint by offloading non-essential features to an optional, modular plugin system. This archit
Pikaday is a lightweight JavaScript datepicker widget and dependency-free UI component. It provides a graphical calendar interface for selecting dates that binds to form fields without requiring external libraries or frameworks. The project features a localizable calendar interface, allowing for the customization of month names, weekday labels, and regional text directions to support multiple languages. Its programmable API manages input formatting and selection restrictions. The tool covers a broad range of date selection capabilities, including date input validation, range restrictions, an
Pikaday is a lightweight JavaScript datepicker library and client-side date input manager. It provides a standalone calendar interface for selecting dates in web applications as a zero-dependency UI component that operates without external frameworks or libraries. The tool features a modular CSS architecture that separates structural logic from visual presentation, allowing for flexible customization of the calendar layout. It includes built-in support for calendar localization, enabling the update of month names and weekday labels to match specific languages or regions. The library manages
react-day-picker is a customizable calendar interface for React web applications. It provides a user interface for selecting single days, multiple dates, or date ranges while complying with WCAG 2.1 AA standards for assistive technology compatibility. The component supports internationalized date input, adapting formats and languages to match regional requirements. It further extends this global support by providing a multi-calendar date selector that functions with non-Gregorian systems, including Persian, Hijri, Buddhist, Ethiopic, and Hebrew calendars. The library covers interactive date
timeago.js is a JavaScript library that converts timestamps into human-readable relative time strings. It functions as an internationalized date library that transforms static date and time data into descriptive statements of elapsed time. The project provides a dynamic time updater that automatically refreshes relative time labels on a webpage at regular intervals. It supports multilingual date localization, allowing time-elapsed statements to be translated into various languages using built-in or custom locale settings.
Sprig is a comprehensive library of helper functions designed to extend the Go text template engine. It provides a wide array of custom functions that can be injected into the engine to enable complex data manipulation and logic directly within templates. The project offers specialized capabilities for cryptography, including the generation of private keys, X.509 certificates, and secure password hashes. It also includes advanced logic extensions for semantic versioning comparison, ternary evaluations, and the resolution of environment variables from the host operating system. The library co
Luxon is a JavaScript library for parsing, validating, manipulating, and formatting dates and times. It provides a suite of immutable objects for managing points in time, durations, and intervals, ensuring that all transformations return new instances to maintain predictable state. The library distinguishes itself by leveraging the native Internationalization API and environment-based time zone databases. This architecture allows for localized date formatting and global time zone conversions without requiring external data files or additional dependencies. It also supports non-Gregorian calen
This project is a static analysis tool and linter for Ruby on Rails designed to identify architectural smells and violations of best practices. It serves as a code quality linter, architectural auditor, security scanner, and performance analyzer for Rails applications. The tool evaluates the separation of concerns between controllers, models, and view templates to reduce technical debt. It identifies suboptimal coding patterns and enforces stylistic consistency, while specifically scanning for security vulnerabilities such as unprotected mass assignment in models. The analysis surface covers