awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
sdispater avatar

sdispater/pendulum

0
View on GitHub↗
6,668 estrellas·429 forks·Python·MIT·3 vistaspendulum.eustace.io↗

Pendulum

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 fixed to a specific point in time for consistent software verification.

Broad capabilities include complex date arithmetic, boundary shifting, and timezone conversion with automatic daylight saving time transition handling. It further supports date string parsing, period iteration for generating sequences of dates, and the transformation of date objects into human-readable formats using a token-based system.

Features

  • DateTime Libraries - Provides a comprehensive library for creating, manipulating, and formatting date and time objects in Python.
  • Date Component Modifiers - Modifies specific attributes of a date instance, such as the year or hour, to return a new instance.
  • Daylight Savings Normalizations - Automatically handles daylight saving time transitions and resolves ambiguous local times.
  • Date Object Creators - Generates date and time objects from Unix timestamps, standard library instances, or relative helpers.
  • Date Sequence Generators - Provides utilities for calculating and yielding consecutive series of dates based on specific intervals.
  • Date Arithmetic Logic - Provides intuitive arithmetic methods to add or subtract units like days, weeks, or minutes.
  • Duration Calculations - Determines the length of time between two points, supporting complex units like years and months.
  • Date String Parsers - Offers utilities for automatically converting common date strings into native date objects.
  • Date Validation Utilities - Converts ISO or RFC formatted strings into date objects using strict and flexible parsing rules.
  • Date Comparison Utilities - Allows determining if a date occurs before, after, or at the same time as another using standard operators.
  • Date Formatting Utilities - Provides utilities to transform date objects into strings using custom tokens and ISO formats.
  • Human-Readable Formatters - Converts date objects into user-friendly, natural language strings and localized descriptions.
  • Date Localizations - Translates date and time descriptions into various languages using global or call-specific locale settings.
  • Natural Language Formatters - Translates time differences and dates into localized, human-readable natural language strings.
  • Date Difference Calculators - Computes the duration between two date objects and expresses the result in specific units.
  • Standard Library Extensions - Extends Python's native datetime and timedelta classes to maintain compatibility while simplifying manipulation.
  • Date Range Iterators - Implements utilities for generating sequences of date objects between two points in time.
  • ISO 8601 Parsers - Includes a dedicated parser for transforming ISO 8601 formatted strings into datetime objects.
  • Timezone Management - Implements logic for converting date objects between different timezones while maintaining the same moment.
  • Time Freezing Utilities - Allows setting a constant date and time for all current time requests to ensure consistent test results.
  • Month Boundary Calculations - Adjusts date instances to the start or end of specific periods like months or centuries.
  • Token-Based Formatters - Processes custom date tokens through a translation layer to generate human-readable strings.
  • Relative Time Humanization - Creates human-friendly, localized strings describing the relative distance between two dates.
  • Temporal String Interpolation - Maps time units to localized word sets to convert durations into natural human languages.
  • System Clock Mocks - Intercepts system clock calls to simulate specific dates and times for consistent software testing.
  • Time Simulation Utilities - Intercepts and controls native timing functions to simulate specific points in time for logic testing.
  • Data Manipulation Libraries - Datetime library with timezone support.
  • Date and Time - Predictable and intuitive date and time manipulation.

Historial de estrellas

Gráfico del historial de estrellas de sdispater/pendulumGráfico del historial de estrellas de sdispater/pendulum

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace sdispater/pendulum?

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.

¿Cuáles son las características principales de sdispater/pendulum?

Las características principales de sdispater/pendulum son: DateTime Libraries, Date Component Modifiers, Daylight Savings Normalizations, Date Object Creators, Date Sequence Generators, Date Arithmetic Logic, Duration Calculations, Date String Parsers.

¿Qué alternativas de código abierto existen para sdispater/pendulum?

Las alternativas de código abierto para sdispater/pendulum incluyen: python-pendulum/pendulum — Pendulum is a Python datetime library used for creating, manipulating, and formatting date and time objects with… arrow-py/arrow — Arrow is a Python date and time library that provides a simplified interface for creating and manipulating timestamps… dromara/carbon — Carbon is a Go library for semantic date and time calculations, formatting, and parsing. It provides a semantic… formkit/tempo — Tempo is a JavaScript date manipulation library that provides a suite of tools for parsing, formatting, and… spencermountain/spacetime — Spacetime is a JavaScript timezone library and date manipulation framework designed for parsing, formatting, and… tc39/proposal-temporal — This project is a proposal for a new immutable date and time API in JavaScript. It serves as a precision time-tracking…

Alternativas open-source a Pendulum

Proyectos open-source similares, clasificados según cuántas características comparten con Pendulum.
  • python-pendulum/pendulumAvatar de python-pendulum

    python-pendulum/pendulum

    6,668Ver en GitHub↗

    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

    Python
    Ver en GitHub↗6,668
  • arrow-py/arrowAvatar de arrow-py

    arrow-py/arrow

    9,046Ver en GitHub↗

    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

    Python
    Ver en GitHub↗9,046
  • dromara/carbonAvatar de dromara

    dromara/carbon

    5,221Ver en GitHub↗

    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

    Go
    Ver en GitHub↗5,221
  • formkit/tempoAvatar de formkit

    formkit/tempo

    2,581Ver en GitHub↗

    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

    TypeScriptdatedate-formattingdatetime
    Ver en GitHub↗2,581
Ver las 30 alternativas a Pendulum→