Repository navigation
Releases
Releases · enitrat/kundera
v0.0.6
v0.0.5
Breaking Changes
- FeeEstimate field renames:
gas_consumed→l1_gas_consumed,gas_price→l1_gas_price,data_gas_consumed→l1_data_gas_consumed,data_gas_price→l1_data_gas_price— aligns with Starknet RPC v0.7 spec - ABI engine replaced: Removed
kanabidependency, replaced with native ABI inference (InferArgs,InferReturn,InferFunctionName) for typed contract reads/writes - JSON-RPC refactored: Voltaire-style request builder pattern —
provider.request(Rpc.CallRequest(...))replacesprovider.starknet_call(...) - Domain primitives: 8 new primitive modules (
BlockHeader,Block,Transaction,Receipt,Event,StateUpdate,FeeEstimate,Trace) withfromRpc/toRpccodecs - FFI backend: Replaced
ffi-napiwithkoffifor Node.js native bindings
Features
- Wallet support:
walletTransport,WalletProvider,WalletRpcSchema, and wallet RPC request builders for browser wallet integration - ABI type inference: Generic type inference on contract read/write skills —
contract.read("balanceOf", { owner })returns typed results - Keccak256 native FFI: Added Keccak256 to the Rust FFI backend
- ByteArray primitive: New
ByteArraytype for Cairo byte array encoding - Integer type library: Complete
Int8–Int128,Uint8–Uint256primitives with SNIP-12 support - Three-backend crypto: Pedersen, Poseidon, Keccak each have pure-TS, native FFI, and WASM backends
- MSW integration tests: Mock Service Worker tests for BlockHeader and FeeEstimate wire types
- kundera-ui example: Wallet integration example app
Fixes
- effect: Updated FeeEstimate field names in
DefaultFeeEstimatorto match RPC spec - effect: Removed double-unwrap in ContractFactory after
decodeOutputchange - provider: Typed return inference for Rpc request builders
- docs: Fixed stale APIs (26
starknet_callrefs →Rpc.CallRequest), deduplicated branded types pages, unified architecture docs
Docs
- Restructured skills index with categories and composition flow
- Merged 3 branded-types pages into single canonical
shared/branded-types.mdx - Made landing page neutral (TS and Effect presented equally)
- Clarified Native=sync, WASM=async in runtime implementations
- Added
get-contractskill documenting ABI type inference
Internal
- Migrated from
bun:testto Vitest - Added
vite-tsconfig-pathsfor package self-imports - Primitives converted to
.js+ JSDoc for tree-shaking - Automated doc generation pipeline (
typedoc→ frontmatter → navigation → setup)
v0.0.4
Features:
- ContractRegistryService for pre-configured contract instances in a Layer
- makeContractRegistry() factory with conditional types
- Complete documentation at /effect/services/contract-registry
- kdex example refactored to use the new pattern
v0.0.3
v0.0.2-rc0
Pre-release for testing
v0.0.1
effect-v0.0.2-rc0
Kundera Effect v0.0.2-rc0