{"repo":"cmars/ddcp","free":true,"listed":false,"github":"https://github.com/cmars/ddcp","clone":"git clone https://github.com/cmars/ddcp.git","description":"Database-to-Database Copy (DDCP) over Veilid","language":"Rust","stars":12,"topics":["database","distributed","local-first","privacy","sqlite","veilid"],"license":"MPL-2.0","category":"databases-storage","readme_excerpt":"DDCP Database-to-Database Copy (DDCP) over Veilid. No servers, no cloud. No gods, no masters. What is DDCP? DDCP (Database-to-Database Copy) is two things: - A Git-like CLI for VLCN's CR-SQLite. - A Rust-native networking layer, which coordinates VLCN database changes among remote peers. Both operate over Veilid for simple, private, and secure p2p networking with strong cryptographic identities. Why would I use DDCP? Rapid development of local-first distributed applications. Cut out the boilerplate and yak-shaving of APIs and focus on the data. Convert traditional RDBMS apps into local-first without having to re-architect around low-level CRDTs. How do I use it? DDCP is still in the early stages of development but is already pretty interesting. Here's what you can do with it: Initialize a SQLite database This registers a Veilid DHT public key for your database. Publish it This process must remain running in the background in order for remotes to be able to fetch changes from this database. This process also prints the Veilid public key to give to your peers. Populate it Create some VLCN CRRs (Conflict-free Replicated Relations) in your database. This can be done while DDCP is running and publishing your database. Changes will be automatically picked up by remote subscribers. Replicate it Add remote peer databases to synchronize with: The VLD0: prefix is optional. Changes from remotes are automatically applied to the local database while publishing changes. VLCN Caveats CRRs h","default_branch":null,"files":null,"tree":[],"storefront":"/r/cmars","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cmars/ddcp/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}