Skip to content

Commit 086b995

Browse files
author
Developer
committed
chore: prepare repository for upstream PR to s5-dev/s5.js
Repository Reference Updates: - Update package name from @julesl23/s5js to @s5-dev/s5js - Update all GitHub URLs from julesl23 to s5-dev organization - Update README to use official npm package in examples Documentation: - Add comprehensive CHANGELOG.md documenting all grant milestones - Remove s5-docs-sdk-js/ (delivered separately to S5 maintainers) - Update bundle analysis with latest build results Preparation for Milestone 8 completion - upstream integration ready. All quality checks passing: - 437 tests passing - TypeScript compilation clean - Bundle size: 61 KB (10× under 700 KB grant requirement)
1 parent 990add9 commit 086b995

File tree

18 files changed

+50
-3447
lines changed

18 files changed

+50
-3447
lines changed

README.md

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -38,43 +38,38 @@ See the [API Documentation](./docs/API.md) for detailed usage examples.
3838

3939
## Installation
4040

41-
The enhanced path-based API features are currently in development as part of a Sia Foundation grant project.
42-
43-
**Prerequisites:**
44-
45-
- **Node.js** v20+ (for development and testing)
46-
- **Python 3** (required for browser tests - used to run local HTTP server)
47-
- **npm** (comes with Node.js)
48-
49-
**For production use:**
41+
Install the enhanced S5.js SDK with npm:
5042

5143
```bash
5244
npm install @s5-dev/s5js
5345
```
5446

55-
**To try the enhanced features:**
47+
**Prerequisites:**
48+
49+
- **Node.js** v20+ (for Node.js environments)
50+
- Modern browser with ES2022 support (for browser environments)
51+
52+
**For development:**
5653

5754
```bash
5855
# Clone the repository
59-
git clone https://github.com/julesl23/s5.js
56+
git clone https://github.com/s5-dev/s5.js
6057
cd s5.js
6158

62-
# Install dependencies (includes TypeScript)
59+
# Install dependencies
6360
npm install
6461

6562
# Build the project
6663
npm run build
6764

68-
# Run tests with real S5 portal
65+
# Run tests
6966
npm test
7067
```
7168

72-
**Status**: These features are pending review and have not been merged into the main S5.js repository.
73-
7469
## Quick Start
7570

7671
```typescript
77-
import { S5 } from "./dist/src/index.js";
72+
import { S5 } from "@s5-dev/s5js";
7873

7974
// Create S5 instance and connect to real S5 portal
8075
const s5 = await S5.create({
@@ -114,7 +109,7 @@ for await (const item of s5.fs.list("home/documents")) {
114109
### Advanced Usage
115110

116111
```typescript
117-
import { DirectoryWalker, BatchOperations, MediaProcessor } from "./dist/src/index.js";
112+
import { DirectoryWalker, BatchOperations, MediaProcessor } from "@s5-dev/s5js";
118113

119114
// Recursive directory traversal
120115
const walker = new DirectoryWalker(s5.fs, '/');

docs/BUNDLE_ANALYSIS.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# S5.js Bundle Analysis Report
22

3-
**Generated:** 2025-10-27T15:42:51.850Z
3+
**Generated:** 2025-11-12T18:01:42.819Z
44

55
## Executive Summary
66

@@ -10,20 +10,20 @@ This report analyzes bundle sizes for different entry points of the S5.js librar
1010

1111
| Bundle | Raw | Gzip | Brotli | Status |
1212
|--------|-----|------|--------|--------|
13-
| Core | 214.78 KB | 71.77 KB | 59.58 KB | ✅ Pass |
13+
| Core | 214.66 KB | 71.74 KB | 59.58 KB | ✅ Pass |
1414
| Media | 35.98 KB | 11.03 KB | 9.79 KB | ✅ Pass |
15-
| Advanced | 218.69 KB | 72.90 KB | 60.60 KB | ✅ Pass |
16-
| Full | 221.12 KB | 73.48 KB | 61.14 KB | ✅ Pass |
15+
| Advanced | 218.57 KB | 72.86 KB | 60.74 KB | ✅ Pass |
16+
| Full | 221.00 KB | 73.45 KB | 61.12 KB | ✅ Pass |
1717

1818
## Tree-Shaking Analysis
1919

2020
The modular export structure enables consumers to import only what they need:
2121

2222
- **Core only:** 59.58 KB (excludes media processing)
2323
- **Media only:** 9.79 KB (media processing modules)
24-
- **Full bundle:** 61.14 KB (all features)
24+
- **Full bundle:** 61.12 KB (all features)
2525
- **Combined (Core + Media):** 69.37 KB
26-
- **Shared code savings:** 8.23 KB (11.9% efficiency)
26+
- **Shared code savings:** 8.25 KB (11.9% efficiency)
2727

2828
## Detailed Breakdown
2929

@@ -34,9 +34,9 @@ The modular export structure enables consumers to import only what they need:
3434
**Entry Point:** `dist/src/exports/core.js`
3535

3636
**Sizes:**
37-
- Raw: 214.78 KB
38-
- Gzipped: 71.77 KB (33.4% of raw)
39-
- Brotli: 59.58 KB (27.7% of raw)
37+
- Raw: 214.66 KB
38+
- Gzipped: 71.74 KB (33.4% of raw)
39+
- Brotli: 59.58 KB (27.8% of raw)
4040

4141
**Metadata:**
4242
- Input files: 295
@@ -64,9 +64,9 @@ The modular export structure enables consumers to import only what they need:
6464
**Entry Point:** `dist/src/exports/advanced.js`
6565

6666
**Sizes:**
67-
- Raw: 218.69 KB
68-
- Gzipped: 72.90 KB (33.3% of raw)
69-
- Brotli: 60.60 KB (27.7% of raw)
67+
- Raw: 218.57 KB
68+
- Gzipped: 72.86 KB (33.3% of raw)
69+
- Brotli: 60.74 KB (27.8% of raw)
7070

7171
**Metadata:**
7272
- Input files: 298
@@ -79,17 +79,17 @@ The modular export structure enables consumers to import only what they need:
7979
**Entry Point:** `dist/src/index.js`
8080

8181
**Sizes:**
82-
- Raw: 221.12 KB
83-
- Gzipped: 73.48 KB (33.2% of raw)
84-
- Brotli: 61.14 KB (27.6% of raw)
82+
- Raw: 221.00 KB
83+
- Gzipped: 73.45 KB (33.2% of raw)
84+
- Brotli: 61.12 KB (27.7% of raw)
8585

8686
**Metadata:**
8787
- Input files: 297
8888
- Output modules: 1
8989

9090
## Recommendations
9191

92-
**Full bundle size is within the 700KB limit** (61.14 KB)
92+
**Full bundle size is within the 700KB limit** (61.12 KB)
9393

9494
### For Application Developers:
9595

@@ -115,9 +115,9 @@ The modular export structure enables consumers to import only what they need:
115115

116116
**Status:****COMPLIANT**
117117

118-
- Full bundle (brotli): 61.14 KB
118+
- Full bundle (brotli): 61.12 KB
119119
- Target: 700 KB
120-
- Margin: 638.86 KB under budget
120+
- Margin: 638.88 KB under budget
121121

122122
## Technical Implementation
123123

docs/bundle-analysis.json

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
{
2-
"timestamp": "2025-10-27T15:42:51.851Z",
2+
"timestamp": "2025-11-12T18:01:42.821Z",
33
"bundles": [
44
{
55
"name": "Core",
66
"description": "File system operations without media processing",
77
"entryPoint": "dist/src/exports/core.js",
88
"sizes": {
9-
"raw": 219933,
10-
"gzipped": 73494,
11-
"brotli": 61008
9+
"raw": 219812,
10+
"gzipped": 73458,
11+
"brotli": 61006
1212
},
1313
"metadata": {
1414
"inputs": 295,
@@ -34,9 +34,9 @@
3434
"description": "Advanced CID-aware API with core functionality",
3535
"entryPoint": "dist/src/exports/advanced.js",
3636
"sizes": {
37-
"raw": 223937,
38-
"gzipped": 74646,
39-
"brotli": 62056
37+
"raw": 223816,
38+
"gzipped": 74610,
39+
"brotli": 62195
4040
},
4141
"metadata": {
4242
"inputs": 298,
@@ -48,9 +48,9 @@
4848
"description": "Complete SDK with all features",
4949
"entryPoint": "dist/src/index.js",
5050
"sizes": {
51-
"raw": 226428,
52-
"gzipped": 75247,
53-
"brotli": 62607
51+
"raw": 226307,
52+
"gzipped": 75212,
53+
"brotli": 62587
5454
},
5555
"metadata": {
5656
"inputs": 297,
@@ -59,16 +59,16 @@
5959
}
6060
],
6161
"treeShaking": {
62-
"coreSize": 61008,
62+
"coreSize": 61006,
6363
"mediaSize": 10028,
64-
"fullSize": 62607,
65-
"combined": 71036,
66-
"savings": 8429,
67-
"efficiency": 11.865814516583141
64+
"fullSize": 62587,
65+
"combined": 71034,
66+
"savings": 8447,
67+
"efficiency": 11.891488582932116
6868
},
6969
"compliance": {
7070
"target": 716800,
71-
"actual": 62607,
71+
"actual": 62587,
7272
"status": true
7373
}
7474
}

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "@julesl23/s5js",
2+
"name": "@s5-dev/s5js",
33
"version": "0.9.0-beta.1",
44
"type": "module",
55
"description": "Enhanced TypeScript SDK for S5 decentralized storage with path-based API, media processing, and directory utilities",
@@ -54,7 +54,7 @@
5454
},
5555
"repository": {
5656
"type": "git",
57-
"url": "git+https://github.com/julesl23/s5.js.git"
57+
"url": "git+https://github.com/s5-dev/s5.js.git"
5858
},
5959
"keywords": [
6060
"s5",
@@ -71,9 +71,9 @@
7171
],
7272
"license": "(MIT OR Apache-2.0)",
7373
"bugs": {
74-
"url": "https://github.com/julesl23/s5.js/issues"
74+
"url": "https://github.com/s5-dev/s5.js/issues"
7575
},
76-
"homepage": "https://github.com/julesl23/s5.js#readme",
76+
"homepage": "https://github.com/s5-dev/s5.js#readme",
7777
"dependencies": {
7878
"@noble/ciphers": "^1.0.0",
7979
"@noble/ed25519": "^2.1.0",

s5-docs-sdk-js/README.md

Lines changed: 0 additions & 125 deletions
This file was deleted.

0 commit comments

Comments
 (0)