Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Calix

動画編集ソフト向けの差分・バージョン管理ライブラリ

編集操作のメタ情報(文字列・数値)のみを差分として記録し、git ライクなコミット・ブランチ・マージ・リベースを提供する。動画・音声ファイルなどのバイナリは一切扱わない。

特徴

  • サブモジュール単位のブランチ管理 — クリップ・エフェクト・トランジションなど、編集要素ごとに独立したバージョン履歴を持つ
  • 差分ベースの状態管理 — 全状態のスナップショットではなく、変更差分(set/remove)のチェーンで履歴を表現する
  • 三方向マージとリベース — 共通祖先からの差分比較によるコンフリクト検出、Fast-Forward 対応
  • アトミック書き込み — tmp→rename パターンによるクラッシュセーフなファイル永続化
  • FFI 対応ビルドstaticlib / cdylib として C++ から呼び出し可能

技術スタック

用途 採用技術
言語 Rust (edition 2021)
シリアライズ serde + rmp-serde (MessagePack)
テスト cargo test + proptest
デバッグ出力 serde_json

ドキュメント

設計思想やアーキテクチャの詳細は docs/ を参照。

ドキュメント 内容
アーキテクチャ 全体構成、レイヤー構造、データフロー
コア概念 コミット・差分・サブモジュール・グローバルタイムラインの考え方
ブランチ操作 ブランチ・マージ・リベースの動作仕様
ストレージ ファイル配置、永続化戦略、アトミック書き込み

ビルドとテスト

cargo build
cargo test
cargo clippy -- -D warnings

ライセンス

GPL-3.0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages