Skip to main content

Chumoli

Chumoli

O‘zbekiston ma’lumot manbalari uchun engil EL vosita
dlt (Apache 2.0) ustida · UI + CLI

CI PyPI License Python Beta


SQL, REST, fayl/S3, MoySklad, Bitrix24 va O‘zbekiston manbalaridan (Click, Payme, Uzum, Didox — beta) ma’lumotni olib DuckDB, PostgreSQL, lokal fayl yoki S3 ga yuklang. Brauzerda boshqaring yoki CLI orqali ishga tushiring.

Tez boshlash

Talab: Python 3.11+

pip install chumoli
chumoli ui

Brauzersiz: chumoli ui --no-open yoki chumoli-api.

Ishlab chiqish (repo)

git clone https://github.com/farrux05-ai/chumoli.git
cd chumoli
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
chumoli ui

Birinchi pipeline

  1. + Yangi yoki Ulagichlar
  2. Manba tanlang → ulanishni tekshiring → saqlang
  3. Run → Preview

UI dagi demo: SQL → DuckDB, REST (CBU valyuta kurslari) → DuckDB, Volume (sintetik).

Nima bor (v0.1)

Imkoniyat Izoh
Ulagichlar SQL, REST, Filesystem/S3, MoySklad, Bitrix24, sintetik volume (stable); Click, Payme, Uzum, Didox (beta)
Destinationlar DuckDB, PostgreSQL, lokal CSV/Parquet, S3/GCS/…, ClickHouse
Dashboard Yaratish, Run, Preview, runs tarixi, scheduler
Xavfsizlik Secrets Fernet bilan shifrlangan; API kalit
Bildirishnoma Telegram (ixtiyoriy)
CLI chumoli ui, list, run

UZ connectorlar — beta

Click, Payme, Uzum Market va Didox kod bazasida bor va UI da beta deb belgilangan. Ular hali barcha merchant/sandbox muhitlarida to‘liq tasdiqlanmagan. Ishlatishdan oldin o‘z API kalitingiz bilan sinang; xato topsangiz Issues oching.

Destinationlar

Key Default / connection
duckdb ~/chumoli-data/<pipeline>.duckdb
postgresql SQLAlchemy URL (parol maxfiy)
filesystem Faqat lokal → tanlangan papka yoki ~/chumoli-data/exports/<pipeline>/
s3 s3:// / gs:// / az:// …
clickhouse URL; pip install "chumoli[clickhouse]"

Lokal fayl va S3 katalogda alohida. dlt _dlt_* metadata yashirin staging da qoladi; foydalanuvchi papkasiga faqat toza jadvallar chiqadi. Preview: papka yo‘li, fayllar, CSV namunasi.

Ma’lumot qayerda

~/.chumoli/                 # tizim (yashirin)
  chumoli_control.db
  master.key
  api.key
  pipelines/                # dlt state
  fs_staging/               # dlt filesystem + _dlt_* (yashirin)

~/chumoli-data/             # foydalanuvchi ko‘radigan
  <pipeline>.duckdb
  warehouse.duckdb          # path ko‘rsatilmagan DuckDB uchun fallback
  examples/
  exports/<pipeline>/       # toza CSV/Parquet
export CHUMOLI_HOME=/var/lib/chumoli
export CHUMOLI_DATA=/var/lib/chumoli-data
chumoli ui

master.key ni control DB bilan birga zaxiralang — kalitsiz secrets ochilmaydi.

CLI

chumoli --help
chumoli ui                 # dashboard + brauzer
chumoli ui --port 8080
chumoli list
chumoli run <pipeline>

Docker

docker compose up --build
# http://127.0.0.1:8000/
  • Bind: 127.0.0.1:8000 (tashqi tarmoq uchun reverse proxy + CHUMOLI_API_KEY + TLS)
  • Volume: chumoli_data → /data (CHUMOLI_HOME + CHUMOLI_DATA)
  • Bitta uvicorn worker — scheduler va run lock shu processda

Muhit o‘zgaruvchilari

O‘zgaruvchi Default Ma’nosi
CHUMOLI_HOME ~/.chumoli Control DB, kalitlar, dlt state
CHUMOLI_DATA ~/chumoli-data DuckDB va lokal eksportlar
CHUMOLI_API_KEY (avto api.key) API autentifikatsiya

Telegram: dashboard Sozlamalar → bot token + chat id.

Ishlab chiqish

pip install -e ".[dev]"
PYTHONPATH=src python -m pytest tests/ -q

CI (GitHub Actions): har push/PR da Python 3.11 va 3.12 da testlar + Docker image build.

Litsenziya

Apache-2.0 · GitHub

Metadata

Release files for chumoli 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for chumoli 0.1.1
File Size Uploaded
chumoli-0.1.1.tar.gz 123.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for chumoli 0.1.1
File Interpreter ABI Platform
chumoli-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 269.3 kB

Release files / chumoli-0.1.1.tar.gz

Download URL chumoli-0.1.1.tar.gz
Size 123.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9f2bae9aeac0ce347cc8014d677992046a2a228149525f57f9bbbb732313ffb1
BLAKE2b-256 checksum
How to use checksums
16dff7038f6de69fbd97046336872e76b821f079685743a93439766345d07bbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / chumoli-0.1.1-py3-none-any.whl

Download URL chumoli-0.1.1-py3-none-any.whl
Size 145.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
470b3849128f692ab4e3c2efabb1224452b0f5ab975df6448119dfc9bb0a4d8d
BLAKE2b-256 checksum
How to use checksums
c6ddd7296f4c014d608505de75f322b9ae8635c908cddbbc16ff55fa44fbc1b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.2

2 release files

This release

0.1.1 This release

2 release 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