Skip to content

Commit 5baac81

Browse files
committed
docs: update README and documentation for package sizes and JRE details
1 parent bffe494 commit 5baac81

6 files changed

Lines changed: 70 additions & 53 deletions

File tree

README.md

Lines changed: 28 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,32 @@
33
Native Python bindings for ArcadeDB (forked from the official Java project).
44

55
[![PyPI](https://img.shields.io/pypi/v/arcadedb-embedded)](https://pypi.org/project/arcadedb-embedded/)
6-
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/arcadedb-embedded)](https://pypi.org/project/arcadedb-embedded/)
6+
[![PyPI - Python
7+
Version](https://img.shields.io/pypi/pyversions/arcadedb-embedded)](https://pypi.org/project/arcadedb-embedded/)
78
[![Docs](https://img.shields.io/badge/docs-humem.ai-blue)](https://docs.humem.ai/arcadedb/latest/)
8-
[![Test Python Bindings](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-bindings.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-bindings.yml)
9-
[![Test Python Examples](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-examples.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-examples.yml)
10-
[![Release to PyPI](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/release-python-packages.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/release-python-packages.yml)
9+
[![Test Python
10+
Bindings](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-bindings.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-bindings.yml)
11+
[![Test Python
12+
Examples](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-examples.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/test-python-examples.yml)
13+
[![Release to
14+
PyPI](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/release-python-packages.yml/badge.svg)](https://github.com/humemai/arcadedb-embedded-python/actions/workflows/release-python-packages.yml)
1115

1216
---
1317

1418
## ✨ What this repo provides
1519

1620
- Native Python bindings for ArcadeDB with a bundled JRE (no local Java required).
17-
- Wheels for Linux x86_64, Linux ARM64, and macOS Apple Silicon.
21+
- **Wheels for Linux x86_64, Linux ARM64, and macOS Apple Silicon.**
1822
- Embedded usage (in-process) with optional server mode.
1923
- Tests and examples validated in CI across supported platforms.
2024

21-
The Python bindings and packaging live under bindings/python. The upstream Java project remains the source of the core database.
25+
The Python bindings and packaging live under bindings/python. The upstream Java project
26+
remains the source of the core database.
2227

2328
## 🧱 What’s inside
2429

2530
- bindings/python: Python package source, build scripts, tests, and examples.
26-
- docs site: https://docs.humem.ai/arcadedb/
31+
- docs site: [https://docs.humem.ai/arcadedb/](https://docs.humem.ai/arcadedb/)
2732
- CI: Build/test workflows for bindings and examples (badges above).
2833

2934
## ✅ Typical use cases
@@ -40,6 +45,7 @@ The Python bindings and packaging live under bindings/python. The upstream Java
4045

4146
## 📦 What the wheel includes
4247

48+
- Approximate size: ~74MB download, ~101-103MB installed.
4349
- Lightweight Java 25 runtime (jlink) bundled per platform.
4450
- ArcadeDB JARs required for the embedded engine.
4551
- Python bindings and source modules.
@@ -56,12 +62,15 @@ The Python bindings and packaging live under bindings/python. The upstream Java
5662
uv pip install arcadedb-embedded
5763
```
5864

59-
See [the Python README](https://github.com/humemai/arcadedb-embedded-python/blob/main/bindings/python/README.md) for usage, examples, and build details.
65+
See [the Python
66+
README](bindings/python/README.md)
67+
for usage, examples, and build details.
6068

6169
## 🔗 Quick Links
6270

63-
- Python README: https://github.com/humemai/arcadedb-embedded-python/blob/main/bindings/python/README.md
64-
- PyPI: https://pypi.org/project/arcadedb-embedded/
71+
- Python README: [bindings/python/README.md](bindings/python/README.md)
72+
- PyPI:
73+
[https://pypi.org/project/arcadedb-embedded/](https://pypi.org/project/arcadedb-embedded/)
6574

6675
## 🔄 Syncing Upstream
6776

@@ -74,20 +83,23 @@ This fork tracks ArcadeData/arcadedb through the local `upstream-main` mirror br
7483
The sync keeps this fork's root `README.md`, `CLAUDE.md`, and the removed Java/Maven
7584
workflows under `.github/workflows/` from being overwritten or reintroduced, including
7685
the removed `meterian.yml` workflow. See the full sync notes in
77-
`bindings/python/docs/development/sync-upstream.md`.
86+
[bindings/python/docs/development/sync-upstream.md](bindings/python/docs/development/sync-upstream.md).
7887

7988
## 🧭 Upstream ArcadeDB (Java)
8089

8190
This repo is a fork of ArcadeDB Java. For the server, Java API, and core database docs:
8291

83-
- Upstream repo: https://github.com/ArcadeData/arcadedb
84-
- Docs: https://docs.arcadedb.com
92+
- Upstream repo:
93+
[https://github.com/ArcadeData/arcadedb](https://github.com/ArcadeData/arcadedb)
94+
- Docs: [https://docs.arcadedb.com](https://docs.arcadedb.com)
8595

8696
## 💬 Support & community
8797

88-
- Issues (Python bindings): https://github.com/humemai/arcadedb-embedded-python/issues
89-
- ArcadeDB Discord: https://discord.gg/w2Npx2B7hZ
98+
- Issues (Python bindings):
99+
[https://github.com/humemai/arcadedb-embedded-python/issues](https://github.com/humemai/arcadedb-embedded-python/issues)
100+
- ArcadeDB Discord: [https://discord.gg/w2Npx2B7hZ](https://discord.gg/w2Npx2B7hZ)
90101

91102
## 📄 License
92103

93-
Both upstream ArcadeDB (Java) and this ArcadeDB Embedded Python project are licensed under Apache 2.0, fully open and free for everyone, including commercial use.
104+
Both upstream ArcadeDB (Java) and this ArcadeDB Embedded Python project are licensed
105+
under Apache 2.0, fully open and free for everyone, including commercial use.

bindings/python/docs/development/build-architecture.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,21 @@ This document describes the build architecture for creating platform-specific Py
66

77
**Goal:** Distribute a single `arcadedb-embedded` package that works on 4 platforms with **zero Java installation required**.
88

9-
**Achievement:** 4 platform-specific wheels (currently about 70-75MB compressed, depending on platform and version) with bundled platform-specific JRE, built and tested on GitHub Actions using native runners.
9+
**Achievement:** 4 platform-specific wheels (currently about ~74MB compressed and ~101MB installed on Linux x86_64, with slight platform/version variation) with bundled platform-specific JRE, built and tested on GitHub Actions using native runners.
1010

1111
## Supported Platforms
1212

1313
| Platform | Wheel Size | JRE Size | Runner | Build Method | Notes |
1414
|----------|-----------|----------|---------|--------------|-------|
15-
| **linux/amd64** | ~73M | ~60M | `ubuntu-24.04` | Docker native | Most common Linux platform |
16-
| **linux/arm64** | ~70-75M | ~60M | `ubuntu-24.04-arm` | Docker native | ARM64 servers, Raspberry Pi |
17-
| **darwin/arm64** | ~70-75M | ~60M | `macos-15` | Native build | Apple Silicon Macs (2020+) |
18-
| **windows/amd64** | ~70-75M | ~60M | `windows-2025` | Native build | Windows x86_64 |
15+
| **linux/amd64** | ~74M | ~63M | `ubuntu-24.04` | Docker native | Most common Linux platform |
16+
| **linux/arm64** | ~70-75M | ~63M | `ubuntu-24.04-arm` | Docker native | ARM64 servers, Raspberry Pi |
17+
| **darwin/arm64** | ~70-75M | ~63M | `macos-15` | Native build | Apple Silicon Macs (2020+) |
18+
| **windows/amd64** | ~70-75M | ~63M | `windows-2025` | Native build | Windows x86_64 |
1919

2020
**All supported platforms:**
2121

2222
- ✅ Current suite: 331 passed
23-
-31.7M JARs (83 files, identical across platforms)
23+
-~38M JARs (current Linux x86_64 package info, identical contents across platforms)
2424
- ✅ All native runners (no QEMU emulation)
2525
- ✅ Reproducible builds (pinned runner versions)
2626

@@ -388,14 +388,14 @@ bindings/python/
388388

389389
**Solution:** Switch to JUnit XML (structured data, no regex).
390390

391-
## Size Breakdown (current, as of 17-Mar-2026)
391+
## Size Breakdown (current ballpark)
392392

393393
Sizes are ballpark values and vary by platform and version:
394394

395-
- Wheel: ~70-75M (compressed)
396-
- JRE: ~60M (uncompressed)
397-
- JARs: ~32M (uncompressed)
398-
- Installed package: ~100-105M
395+
- Wheel: ~74M (compressed)
396+
- JRE: ~63M (uncompressed)
397+
- JARs: ~38M (uncompressed)
398+
- Installed package: ~101-103M
399399

400400
## Development
401401

bindings/python/docs/development/ci-setup.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ The CI/CD workflows now support building and releasing across **4 platforms** fo
88

99
### Single-Package Strategy
1010

11-
- **arcadedb-embedded**: All platforms (~70-75MB compressed, depending on platform and version) - JRE bundled, no external Java needed
11+
- **arcadedb-embedded**: All platforms (~74MB compressed and ~101MB installed on current Linux x86_64 builds; varies slightly by platform and version) - JRE bundled, no external Java needed
1212

1313
### Platforms (All Native Runners)
1414

@@ -102,12 +102,12 @@ All 4 platforms passing the bindings suite and example workflows:
102102

103103
| Platforms | Wheel Size | JRE Size | Tests |
104104
|-----------|-----------|----------|-------|
105-
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | ~70-75M | ~60M | 331 passed ✅ |
105+
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | ~74M | ~63M | 331 passed ✅ |
106106

107107
**All platforms include:**
108108

109-
- 32.4M JARs (83 files, identical across platforms, gRPC excluded)
110-
- Platform-specific JRE (~60M uncompressed, similar across platforms)
109+
- ~38M JARs (current Linux x86_64 package info, same contents across platforms, gRPC excluded)
110+
- Platform-specific JRE (~63M uncompressed, similar across platforms)
111111
- Native runners (no QEMU emulation anywhere)
112112

113113
## Cross-Platform Building

bindings/python/docs/getting-started/distributions.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ArcadeDB Python provides a **self-contained embedded** package that runs the dat
66

77
| Package | Wheel Size | Installed Size | Java Required | Studio UI | Query Languages |
88
|---------|-----------|------------------------------|---------------|-----------|----------------|
9-
| **arcadedb-embedded** | ~70-75MB | ~100-105MB | ❌ No || SQL, OpenCypher, MongoDB |
9+
| **arcadedb-embedded** | ~74MB | ~101-103MB | ❌ No || SQL, OpenCypher, MongoDB |
1010

1111
**Installation:**
1212

@@ -20,17 +20,17 @@ uv pip install arcadedb-embedded
2020

2121
The package includes everything you need:
2222

23-
- **ArcadeDB JARs** (~32MB, uncompressed): Core database with all features
24-
- **Bundled JRE** (~60MB, uncompressed): Platform-specific Java 25 runtime (via jlink)
23+
- **ArcadeDB JARs** (~38MB, uncompressed): Core database with all features
24+
- **Bundled JRE** (~63MB, uncompressed): Platform-specific Java 25 runtime (via jlink)
2525

26-
**Current Linux x86_64 dev build:** ~73MB compressed wheel, ~102MB installed package size.
26+
**Current Linux x86_64 package info:** ~74MB compressed wheel, ~63MB JRE, ~38MB JARs, and ~101MB installed. Local installs may show closer to ~103MB on disk depending on filesystem allocation.
2727

2828
These numbers are measured from the built wheel file and the extracted
2929
`site-packages/arcadedb_embedded/` directory, and they vary by platform and version.
3030

3131
## Platform Support
3232

33-
Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes are consistent across platforms (see size breakdown below).
33+
Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes stay in the same ballpark across platforms, but vary slightly by platform and version (see size breakdown below).
3434

3535
**Key Features:**
3636

@@ -44,7 +44,7 @@ Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes
4444

4545
**Core Features:**
4646

47-
-**No Java Installation Required**: Platform-specific JRE bundled (~60MB uncompressed)
47+
-**No Java Installation Required**: Platform-specific JRE bundled (~63MB uncompressed)
4848
-**Core Database**: All models (Graph, Document, Key/Value, Vector, Time Series)
4949
-**Query Languages**: SQL, OpenCypher, MongoDB (all included)
5050
-**Studio Web UI**: Visual database explorer and query editor
@@ -110,16 +110,16 @@ Simple and consistent across all platforms!
110110

111111
## Size Breakdown
112112

113-
Current sizes are ballpark values and can move with ArcadeDB, the bundled JRE, and the
114-
target platform:
113+
Current sizes are ballpark values and can move with ArcadeDB, the bundled JRE, the
114+
target platform, and filesystem overhead after installation:
115115

116-
- **Wheel (compressed)**: ~70-75MB
117-
- **Installed package**: ~100-105MB
116+
- **Wheel (compressed)**: ~74MB
117+
- **Installed package**: ~101-103MB
118118

119119
**Components (uncompressed):**
120120

121-
- **ArcadeDB JARs**: ~31.7MB
122-
- **Bundled JRE**: ~60MB (platform-specific Java 25 runtime via jlink)
121+
- **ArcadeDB JARs**: ~38MB
122+
- **Bundled JRE**: ~63MB (platform-specific Java 25 runtime via jlink)
123123

124124
**Optimizations:**
125125

bindings/python/docs/getting-started/installation.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ uv pip install arcadedb-embedded
1818

1919
## What's Included
2020

21-
The `arcadedb-embedded` package includes everything you need. Current Linux x86_64 dev
22-
builds are about 73MB as a wheel and about 102MB installed, with some variation by
23-
platform and version:
21+
The `arcadedb-embedded` package includes everything you need. Current Linux x86_64
22+
package metadata and local installs are about ~74MB as a wheel and ~101-103MB
23+
installed, with some variation by platform, version, and filesystem allocation:
2424

25-
- **ArcadeDB JARs**: ~31.7MB (uncompressed)
26-
- **Bundled JRE**: ~60MB (uncompressed, platform-specific Java 25 runtime via jlink)
25+
- **ArcadeDB JARs**: ~38MB (uncompressed)
26+
- **Bundled JRE**: ~63MB (uncompressed, platform-specific Java 25 runtime via jlink)
2727

2828
**Features Included:**
2929

bindings/python/docs/index.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ We provide a **single, self-contained package** that works on all major platform
171171

172172
| Platforms | Package Name | Size | What's Included |
173173
|----------|-------------|------|-----------------|
174-
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | `arcadedb-embedded` | ~70-75MB | Full ArcadeDB + Bundled JRE + Studio UI |
174+
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | `arcadedb-embedded` | ~74MB wheel, ~101-103MB installed | Full ArcadeDB + Bundled JRE + Studio UI |
175175

176176
The package uses the standard import:
177177

@@ -211,13 +211,18 @@ import arcadedb_embedded as arcadedb
211211
- **OS**: Linux (x86_64, ARM64), macOS (Apple Silicon), or Windows (x86_64)
212212

213213
!!! note "Self-Contained"
214-
Everything needed to run ArcadeDB is included in the wheel (currently about
215-
73MB on Linux x86_64; varies by platform and version):
214+
Everything needed to run ArcadeDB is included in the wheel. Current Linux
215+
x86_64 package metadata and local installs are in this ballpark, with small
216+
variation by platform, version, and filesystem:
216217

217218
- **Bundled JRE**
218-
(Platform-specific Java 25 runtime trimmed with jlink to only what's required for ArcadeDB, ~60MB uncompressed)
219+
(Platform-specific Java 25 runtime trimmed with jlink to only what's required for ArcadeDB, ~63MB uncompressed)
219220
- **ArcadeDB JARs**
220-
(~32MB uncompressed)
221+
(~38MB uncompressed)
222+
- **Wheel download**
223+
(~74MB compressed)
224+
- **Installed package on disk**
225+
(~101-103MB)
221226
- **JPype** (Bridge between Python and the bundled JVM)
222227

223228
## Community & Support

0 commit comments

Comments
 (0)