ferripfs-config
IPFS node configuration types, compatible with Kubo's config format.
Note: This crate is part of ferripfs, a Rust port of Kubo (the Go IPFS implementation). The configuration format matches Kubo's config documentation.
Features
- Full Kubo Compatibility: Same JSON config format as Kubo
- Type-Safe Access: Strongly typed configuration sections
- Validation: Config validation with helpful error messages
- Key-Value Access: Get/set values by dot-separated paths
Usage
use Config;
// Parse configuration
let config = parse?;
// Access typed fields
println!;
println!;
// Get/set by key path
let value = config.get_key;
config.set_key?;
// Validate configuration
let warnings = config.validate?;
Configuration Sections
Identity- Node identity (PeerID, private key)Addresses- API, Gateway, Swarm addressesDatastore- Storage backend configurationSwarm- Connection manager settingsBootstrap- Initial peers to connect toGateway- HTTP gateway settingsRouting- DHT and content routingPinning- Remote pinning services
License
Dual-licensed under MIT and Apache-2.0.