Skip to main content

ccharts

Financial OHLC data in, a string out. Line and candlestick charts drawn with Unicode block characters and returned as text — so the chart goes wherever text goes: a terminal, a log line, a chat message, an HTML <pre>, a commit comment, a .txt file, a printf.

  328.00████████████
                   █
                   █           █████████████▁▁▁▁▁▁▁▁▁▁▁▁
                   █████████████                       █
                                                       █
  301.00                                               █▁▁▁▁▁▁▁▁▁▁▁▁
2026-07-20                                                2026-07-24

Color is optional: by default rising and falling segments carry ANSI escapes, and plain renders with none at all, for the destinations where escapes would only be noise.

There is no canvas, no image, no renderer to drive and nothing to draw into — one call returns a string, and what you do with it is your business.

Written as a single-header C library with a flat C ABI and bindings for Python, Rust, Go, JavaScript, C# and Java. Every one of them produces byte-identical output.

Licensed under the MIT License.

PyPI version License crates.io npm NuGet

Installation

pip install ccharts

For pandas DataFrame support (optional — the package itself has no runtime dependencies):

pip install ccharts[pandas]

Pre-built wheels for Linux (x86_64 and aarch64), macOS (x86_64 and arm64) and Windows (x86_64), built on GitHub Actions CI for CPython 3.9-3.14, are published together with each release — no C toolchain is needed on the target machine. Install the sdist instead and a C compiler (gcc/Clang on Linux/macOS, MSVC on Windows) is required, because the package wraps the C single-header library ccharts.h.

Features

  • Strings, not output — every entry point returns a string. Nothing is printed, no stream is written to, no terminal is detected or resized around.
  • Plain or coloredplain yields text with no ANSI escapes at all; otherwise colors are escape strings you choose, including 256-color and truecolor.
  • Line charts — smooth curves using 8-level vertical resolution (▁▂▃▄▅▆▇█), per-segment coloring, optional area fill under the line.
  • Candlestick charts — solid bodies between open/close, thin vertical wicks () between high/low, gap-separated candles, automatic downsampling when there are more candles than columns.
  • Axis labels — optional max/min price margin and first/last timestamp footer. The timestamp format is picked automatically from the candle interval (YYYY-MM-DD for daily+, HH:MM for intraday).
  • Timestamps — optional per-candle epoch timestamps, parsed from ISO8601 or a plain number.
  • Parsers — CSV (cc_str_to_ohlc) and a fixed-schema JSON parser (cc_json_to_ohlc).
  • pandas / columnar input (Python) — Chart.from_dataframe(df) and Chart.from_arrays(...) copy price columns straight into the C array, with no JSON round-trip. pandas is optional.

C usage

#define CCHARTS_IMPLEMENTATION
#include "ccharts.h"

int main(void) {
    const char* json = ...;                 // [{ts,open,high,low,close}, ...]
    cc_ohlc_t* ohlc = NULL;
    int size = 0;
    cc_json_to_ohlc(json, &ohlc, &size);

    cc_settings_t s = { .rise_color = CC_COLOR_BLUE,
                        .show_prices = 1, .show_times = 1 };
    char* chart = cc_line_create(ohlc, size, 60, 8, &s);
    printf("%s\n", chart);

    free(chart);
    free(ohlc);
    return 0;
}

cc_line_create hands back a char* you own: print it, log it, embed it, free() it. Compile with -lm (math lib). CCHARTS_IMPLEMENTATION must be defined in exactly one translation unit; every other unit can include the header as-is. C++ code can use the header for declarations (see the doc comment in ccharts.h for details).

Run the demo with make test — it compiles main.c and runs the binary, rendering prices.txt as a line chart and two candlestick variants.

Python usage

make test-py        # builds the extension and runs the test suite
from ccharts import Chart

chart = Chart(open("prices.txt").read())
print(chart.line(width=60, height=8, show_prices=True, show_times=True))
print(chart.candle(width=60, height=8))

DataFrames and raw columns

A DataFrame does not have to be serialized to JSON first — the price columns are handed to C directly:

import yfinance as yf
from ccharts import Chart

df = yf.download("THYAO.IS", period="3mo")     # Open/High/Low/Close columns
print(Chart.from_dataframe(df).candle(width=80, height=12, show_times=True))
  • Columns are matched case-insensitively (Open/open/OPEN); pass ohlc=("o", "h", "l", "c") for anything else.
  • Timestamps come from a DatetimeIndex, or from ts="column". Timezone-aware values are converted to UTC, naive ones are treated as UTC.
  • Rows with NaN/inf in an OHLC column are dropped (indicator frames have NaN warm-up rows); dropna=False raises instead.
  • Row order is used as-is — a descending frame renders right to left.

The same path works without pandas, for lists, numpy arrays or array.array:

Chart.from_arrays(opens, highs, lows, closes, ts=epoch_seconds)

To develop locally (builds the extension in place):

python3 -m pip install -e .      # or: make test-py

Building a wheel by hand also works and is a good local smoke test:

python3 -m pip wheel . --no-deps -w /tmp/ccharts_wheel

C ABI and other languages

ccharts.h exports nothing — CC_INLINE makes every function static inline, and struct cc_ohlc is private to the implementation block — so there is nothing for a foreign function interface to bind to. abi/ccharts_abi.h provides that layer: a flat, extern "C", opaque-handle API with explicit status codes, built as a shared or static library.

cmake -S . -B build && cmake --build build
ctest --test-dir build --output-on-failure
#include "ccharts_abi.h"

ccharts_data* data = NULL;
ccharts_from_arrays(open, high, low, close, ts, n, &data);

ccharts_settings s = {0};
s.rise_color = ccharts_color(CCHARTS_COLOR_BLUE);
s.show_prices = 1;

char* chart = NULL;
size_t len = 0;
if (ccharts_line(data, 60, 8, &s, &chart, &len) == CCHARTS_OK) {
    printf("%s", chart);
    ccharts_string_free(chart);
}
ccharts_data_free(data);

Differences from the raw header, all in the direction of being bindable: invalid dimensions return CCHARTS_ERR_DIMENSIONS instead of an empty string, NaN and inf are rejected up front, and ccharts_parse_csv counts the rows it can parse so a dataset never carries trailing zero-filled candles.

conformance/cases.json plus conformance/golden/*.txt are the cross-language contract: 20 cases covering both chart types, downsampling, labels, timezones, flat ranges and single-candle input. The goldens are generated from the ABI (scripts/gen_golden.py) and every binding — the Python one included, see tests/test_conformance.py — must reproduce them byte for byte.

Language bindings

Language Location Published as
Python ccharts/ ccharts on PyPI
Rust bindings/rust/ ccharts on crates.io
Go bindings/go/ served from the repository (no registry)
JavaScript (WASM) bindings/js/ @dethrandir/ccharts on npm
C# (.NET 8) bindings/dotnet/ Ccharts on NuGet
Java (JDK 22+) bindings/java/ io.github.dethrandir:ccharts on Maven Central

Rust and Go compile the vendored C sources with their own toolchains (the cc crate and cgo), so neither needs a prebuilt library:

let chart = Chart::from_arrays(&open, &high, &low, &close, Some(&ts))?;
println!("{}", chart.line(60, 8, &Settings::new().rise(Color::Blue))?);
chart, _ := ccharts.FromArrays(open, high, low, close, ts)
defer chart.Close()
out, _ := chart.Candle(60, 8, &ccharts.Options{ShowPrices: true})

The JavaScript package is the library compiled to WebAssembly, with the module embedded in the JavaScript — one dependency-free package for Node, Deno, Bun and browsers alike, no prebuilt binaries and no bundler configuration:

import { Chart, Color } from "@dethrandir/ccharts";
const chart = Chart.fromArrays(open, high, low, close, ts);
console.log(chart.candle({ width: 60, height: 8, showPrices: true }));
chart.free();

C# uses source-generated P/Invoke and Java the Foreign Function & Memory API (no JNI code at all). Both link the shared library rather than compiling the C, so both ship prebuilt natives — runtimes/{rid}/native/ in the NuGet package, native/{os}-{arch}/ in the jar:

using var chart = Chart.FromArrays(open, high, low, close, ts);
Console.Write(chart.Line(new ChartOptions { RiseColor = Color.Blue, ShowPrices = true }));
try (Chart chart = Chart.fromArrays(open, high, low, close, ts)) {
    System.out.print(chart.line(ChartOptions.builder().rise(Color.BLUE).build()));
}

Each binding vendors its own copy of ccharts.h and the ABI — Go needs cgo sources inside the package directory and cargo package only ships crate-local files — so scripts/sync_sources.py refreshes them and CI fails if a copy drifts.

Settings

Field Meaning Default
rise_color color for rising values / candles green
fall_color color for falling values / candles red
bg_color background of empty cells none
area_color fill below the line chart none
single_color 1 = one line color; 0 = per-segment colors 0
show_prices print max/min price labels 0
show_times print first/last timestamp footer 0

Setting a color to the empty string (rather than leaving it unset) makes that element carry no escape sequence at all — no color, and no reset either. Set all four and the chart comes out as plain text. The bindings expose that as a single plain option:

chart.line(width=60, height=8, plain=True)   # not one escape byte

Any unset field falls back to its default, so only the fields you want to override need to be set (see cc_settings_resolve).

Input constraints

  • Timestamps — ISO8601 strings may carry a UTC offset (+03:00, +0300, +03, Z; a missing offset is treated as UTC). The offset is applied, so the stored epoch is the true instant: 2026-07-20T00:00:00+03:00 becomes 2026-07-19T21:00:00 UTC. Plain epoch-seconds numbers (including negative) are accepted as-is. Malformed timestamps parse to 0.
  • Dimensionswidth/height must be positive and are capped at CC_MAX_DIM (100000) per side and CC_MAX_CELLS (1000000) total cells. Invalid dimensions make the C chart functions return an empty string and make the Python bindings raise ValueError — no unchecked giant allocation, no stack overflow.
  • CSV — lines may be arbitrarily long and at most size lines are read.
  • JSON — must be an array of objects with ts, open, high, low, close (plus optional ignored fields like volume). The parser is an iterative mini-scanner: keys are matched exactly, so a substring like "open" inside a string value can never cause a false match. Malformed or empty documents make the parsers fail cleanly.

Windows / MSVC

The header is VLA-free and uses only portable C89 constructs, so it compiles with MSVC out of the box: gmtime_r is swapped for gmtime_s on _WIN32 and all functions get internal linkage (static) through the CC_INLINE macro, sidestepping MSVC's lack of C11 inline semantics. No extra flags or libraries are required beyond the standard ones.

Releases

One tag releases everything. Pushing v<version> (e.g. v0.2.0) runs .github/workflows/publish.yml, which first refuses the build unless the tag and every manifest agree on the version (scripts/check_versions.py), then publishes each package. Each registry's credential (API token, username, GPG key) is expected as a GitHub repository secret and is documented in the workflow, not here:

Registry Package
PyPI ccharts (sdist + cibuildwheel wheels)
crates.io ccharts
npm @dethrandir/ccharts (published with provenance)
NuGet Ccharts
Maven Central io.github.dethrandir:ccharts

The Go module has no registry — it is served from the repository — but a module in a subdirectory needs a tag carrying that prefix, so the workflow also pushes bindings/go/v<version>.

The C# and Java packages are the only ones carrying binaries: .github/workflows/natives.yml builds the shared library for linux-x64, osx-arm64 and win-x64, and scripts/pack_natives.py arranges them into runtimes/{rid}/native/ for NuGet and native/{os}-{arch}/ for the jar. Both publish jobs then verify the packed artifact actually contains every platform before it leaves the runner — a package that quietly lost its natives would install fine and fail on the first call. (Linux aarch64 is not built, for the same reason the Python wheels skip it: QEMU emulation on GitHub-hosted runners is far too slow. It can be added once native ARM runners are available.)

workflow_dispatch runs every build job without uploading anything, so a release can be rehearsed in full.

Two notes on publishing: PyPI could drop its API token entirely by moving to trusted publishing — link the pypi GitHub environment and delete the password input. Maven Central requires a verified io.github.dethrandir namespace on the Central Portal and a published GPG key before the first deploy will be accepted.

Repository layout

  • ccharts.h — the whole C library (single header, heavily documented).
  • main.c — C demo using prices.txt.
  • prices.txt — sample JSON OHLC data (THYAO).
  • abi/ — flat C ABI (ccharts_abi.h/.c) for non-Python bindings.
  • bindings/ — language bindings built on that ABI (rust/, go/, js/, dotnet/, java/).
  • conformance/ — cross-language case list, goldens and a C smoke test.
  • scripts/ — golden generation, vendored-source sync, version consistency.
  • ccharts/ — Python package: __init__.py (high-level Chart), wrapper.c (CPython extension ccharts._core) and _pandas.py (optional DataFrame conversion, imported lazily).
  • tests/ — Python test suite (test_python_api.py, plus test_pandas_api.py which skips when pandas is not installed).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ccharts-0.2.1.tar.gz (44.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ccharts-0.2.1-cp314-cp314-win_amd64.whl (33.9 kB view details)

Uploaded CPython 3.14Windows x86-64

ccharts-0.2.1-cp314-cp314-musllinux_1_2_x86_64.whl (68.6 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (70.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp314-cp314-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ccharts-0.2.1-cp314-cp314-macosx_10_15_x86_64.whl (31.1 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

ccharts-0.2.1-cp313-cp313-win_amd64.whl (33.2 kB view details)

Uploaded CPython 3.13Windows x86-64

ccharts-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl (68.6 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (70.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ccharts-0.2.1-cp313-cp313-macosx_10_13_x86_64.whl (31.0 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

ccharts-0.2.1-cp312-cp312-win_amd64.whl (33.2 kB view details)

Uploaded CPython 3.12Windows x86-64

ccharts-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl (68.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (70.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ccharts-0.2.1-cp312-cp312-macosx_10_13_x86_64.whl (31.0 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

ccharts-0.2.1-cp311-cp311-win_amd64.whl (33.2 kB view details)

Uploaded CPython 3.11Windows x86-64

ccharts-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl (68.0 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (69.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ccharts-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

ccharts-0.2.1-cp310-cp310-win_amd64.whl (33.2 kB view details)

Uploaded CPython 3.10Windows x86-64

ccharts-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl (67.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (69.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp310-cp310-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

ccharts-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl (31.0 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

ccharts-0.2.1-cp39-cp39-win_amd64.whl (33.2 kB view details)

Uploaded CPython 3.9Windows x86-64

ccharts-0.2.1-cp39-cp39-musllinux_1_2_x86_64.whl (67.3 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

ccharts-0.2.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (68.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

ccharts-0.2.1-cp39-cp39-macosx_11_0_arm64.whl (30.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

ccharts-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file ccharts-0.2.1.tar.gz.

File metadata

  • Download URL: ccharts-0.2.1.tar.gz
  • Upload date:
  • Size: 44.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3f3ff2cb008ad66806484df582aab31caad61e3317a061b9fca5eff3cb13e870
MD5 72a7bf76dbc2e685f286dd167070ba03
BLAKE2b-256 29f07753852b059c6f5992e167b5c6118e9744d0102c3774bc28cc849c850a5d

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 33.9 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 cb8a0727e8a3ccedca9e3119b4615b3db6efaada46f72fb6608d64f655a5bcbe
MD5 588c944b0387e1746101ff3a44cf726d
BLAKE2b-256 a0f899f2804c20fd968001016caae88e3d535d5a446488960ce1ea0ba9d48fc1

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 06c59c82e995729ca710f6cc3cf130949e00c99f58ab72bf3b6f01fe7de35673
MD5 9915ed3033a623e0c46ce2c1b906a646
BLAKE2b-256 6c3792d8a5276bbed304dd1d25a287e448062eebe372004942ef885fca2bcf15

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 79e73c52c42247e3231b57f982942addf38272d2254f278dc1479a4080ff0801
MD5 451efd0c48ba6ff69b6563bfda4b60fb
BLAKE2b-256 6f03e643caa3f703e3b771151ca0400fcfeac168814f8fc2d1f679744ad2c80f

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aaac8630267649f5cdcd901d8f841437f45b7a075f2728dde4b748ada97fe7d7
MD5 5a0b35ff0813227c16bd94b74bb64222
BLAKE2b-256 f0ae446a5844ccff4d44638bb744c0cafc7e284f2d910b6b11e704f083ecfc2b

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 1e278898339101118fd7ee4d587dbd544dd86dbd7d03364c74ff6503c80e09c6
MD5 1717293ae71201be78dbb4768b6df471
BLAKE2b-256 4d749ebfd59fc039f0382798018ee7e4735a671476b8b39438bc1f0358c32f85

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ed5b64f261280094e47045576f020369c9d173158b5975d658cb187e9b3445ee
MD5 7d9270f02f005132482f787c4e387d0d
BLAKE2b-256 30c19dc81b1e2bf491b350bb89f12e635afa81322cd4bf51548421bcc0e9ad20

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d2998e4277ab4c796382997b33bc410b79ccb68837a710c09ff6d0d06a20cd0b
MD5 7b29f5c50ac86d0bd0fa95deedeeb3c2
BLAKE2b-256 6b26e69c97d434ec03a90b396f12d9ba5b952db99e4139e030a52f4450020a38

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 229b08d22317a55fc1d32065f5bff7d5440e9c5fc3195472ff1d5fece831bd63
MD5 1ff255b5aecccc0806acc4a324d258b6
BLAKE2b-256 35c6704329cef05d0a19a58c3b1fcade74066e23dd96f63edd8efe521b7da461

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 11d7e2e912f18aff7b8c71042b9133dc454f6e6fd5162ad4e5ccbe3c67ee3809
MD5 3112c9ef34e302cf79d303e01a5fba21
BLAKE2b-256 dcf91c1cdcc9e572239990918b52d69219209f5957e2521bb6590ce415cef7d8

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7f1655589df5736e9dd3cf1028be4fe9cc038648ccca49f3fb5058d653bc23e7
MD5 eebdc63a657d9632bf8732b65833a82e
BLAKE2b-256 85979dcf797cc985b39dbf1e643a932617240b7615dc86154e48f17f8fd00f0b

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0bca7394e3544ca02151b30a12d518faa7f33f99635b275e0eecdb13f71bc60c
MD5 1908228663c47ad5d33e4357524a8a47
BLAKE2b-256 4c304f08dc7f056eeba21d870bcc0d9b6b8db5b9e6ab238305301230a3f1b8bf

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8c2f48df7c6c78353629751a683db2bea73c68db9112fb62e1e5907af107ed18
MD5 6939fb72199fb6e6abc9cbc2ebe5b5b5
BLAKE2b-256 82cd4f2c8b69414d95433de4bcbcb9932685ec72d6e20bd17d68fdbf3783014f

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5c24a1e1a3c34a440286a619c64abdcc2e8d1da0dcb23c7ffc02de525826565e
MD5 9b1ef955d91f474781e3db2dec241e8f
BLAKE2b-256 669c0e73f7f257727fc9e4719750fa8dc4cac0892ecf21db964d1c1036d84308

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5c7dd254fd0949239a1b5161a25bffbeeb11278133fa3b9a4bcee7aba0b58a3b
MD5 ebaef9b3e8bc27687b2101445e415914
BLAKE2b-256 1f4ddf5da16996b5eb96d69485a0f2ecacc6010d5788692971449f9172ecc0ee

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 706c99e7a1cd04840b37c41b9e37c49ffbe4354ea911e6bec879dac239500658
MD5 b672bed3e3db76fc79fad5c418a6281d
BLAKE2b-256 90bf368a571e8bbb035baf27159a49e6a7545b9b85ad151d2cd2bf35ef38b491

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e1c4e9d3643fef5c2149793cb5d9c5774267c4baa4d5f623b4bc0b3d9a850298
MD5 4c97fef2bd2d1ecdfdcb5fe43a9da138
BLAKE2b-256 6b045dce7515d26ce5da1832a42297dafbdef65a9df90408d0830c59a28b7147

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ab65042bcbfe9d6acfcbdf282c96a91e9f7fcdee646055340d9f729ce9ad5157
MD5 e6d67511364058f5dfe1c674e6a13597
BLAKE2b-256 12c16831dc808e751c770f7a7abebea97b125fdd1dd3feb08743216ea79db206

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ac6ddf53b0784ff2753807a34091775bf7b9a544d131a476ed9df3bd31ec2d6
MD5 f0e161484f4bc91d93c288ed4e30bced
BLAKE2b-256 5d2790e8e1f1eb64367f5aa8cefd90dc0ce36eeef5e5eb3b51ce51923ddc954d

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3bfd92eaa8caccac2d6ba9c1586754917e467d660579317ec39fc9828b049b1f
MD5 2a6fb2c238fff57e16a1c1a12abfd2e4
BLAKE2b-256 a3ca571ee29290846f7385bdf3c6ad3c7871ebb88c30f2343c7f5327e4054d1e

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f21bede030616aa8993f004eb974c2e2e13235fa4c88f3b37f9f6a706275b254
MD5 bb9f3b73cf487b31381497a812909e6a
BLAKE2b-256 7f100282bfb6222c9212396fbafe80f2b01f77649bf6e0acfd36124a0f8f3c6c

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9e3b066fce59c31f22e87a6c35cc822e1935367987b50d9c53b541ff27b30d81
MD5 d4f32689c882f1447179c823169493ef
BLAKE2b-256 b7f26493aa0f4d4f1f8aa8a94e14194d675ae4719a023bb12dc922266b47826a

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 21c32a71a8723e9d0045c2aa999467979dda94bc4ee2617c567d31276cc1fbc8
MD5 4b5aa54680a7fff7f0768022557dfa94
BLAKE2b-256 8186b0c44b243c3aac5fc774bba7b140bfc25cce950e3b3b1bfd1be1f09c7509

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9a5d6597edee25cf4c626779c528881a8aaf90501140a94680c9cbcc9017cdb5
MD5 5a1761709b6d95d754f13fe7ea8e2c65
BLAKE2b-256 c4573fb1684281f00bcaaa29d9a6b740fc50fc47212fa2599d33c73824365219

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e6539c5bbd3ac449214309896bc920214afd6f33056b83df45703449094bfbe7
MD5 968a838f4fdf70bf3268b7272875618a
BLAKE2b-256 855808ce1bfa34a3ce29f796d34c6f1d9fcf064bdad1d4a12a5a95267d7b32dc

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5eb5594a1c445305aded2ff4773a0e9d5f11aa0889e4918812382fc1df35b66a
MD5 62d33a6cd721b50f5c7918018f1d2004
BLAKE2b-256 acbc11fbf64b8542f703c7c03bb2f3385c36225475c6ef35cd06245ca13671b5

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: ccharts-0.2.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ccharts-0.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 38b692dfb181d942cf00c55639e78f2c8fcb1909d2548582b7a6118bbda52ff6
MD5 966d22c5e86fde3c20b5a4003cadf008
BLAKE2b-256 d271ea8c659da5da520ee8eef7f15c3f72ac100b85018973f3733f640a9e047c

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e6715cb4ee856ace168fcfe30e7043ab955beb5cda86218524a3057604ccd5e2
MD5 affe9272ae0d111005ddc8021a73404d
BLAKE2b-256 585ba9054202e1a7269453ba0ccc6b3bdf17579c32c998cfd366b8bf5fb09734

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 95ed7cf2d8844b39333d6396b6ac985200983f993e956b451634f4f0e5e821d4
MD5 e3f262c31a2683356e040b028fcbc9e1
BLAKE2b-256 36f34065b563571f4ff98032135879296fec858ee0ed87aa5d826599e355d680

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d3d3b162177f1b1caca493c10759dc76df1083f2ea5847abc0d0ad2503dc3654
MD5 25c8f0efa566540dc6271a1b26db64b5
BLAKE2b-256 ac5afaf0025072a06eae18b9ef83b84ff8b9d1f82078b987a1b8c038b3e86366

See more details on using hashes here.

File details

Details for the file ccharts-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ccharts-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e69a55c17a0df78e074a273d5f942f16b6831b466b6fadfde07a472a414e0d33
MD5 b6b0f3ea155499c7190bb580f0c950db
BLAKE2b-256 8d41808351a672c5ea913102e40253282a068e4da86eed15d1284135f936f725

See more details on using hashes here.

Release history Release notifications | RSS feed

3.0.0

31 files

0.2.2

31 files

This release

0.2.1 This release

31 files

0.2.0

31 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page