Skip to main content

Lightweight multi-storage routing and sync abstraction layer

Project description

SyncGate 🎯

统一管理散落在各处的文件

License: MIT Python 3.10+

🎯 产品定位

SyncGate 是轻量级多存储路由与同步抽象层,统一管理本地文件、HTTP 链接和 S3 对象存储。

核心功能

  1. 🔗 统一路径 - 本地/HTTP/S3 一个命令访问
  2. 🌳 虚拟文件系统 - 不移动源文件,只管理链接
  3. ✅ 链接验证 - 自动验证链接有效性
  4. ⚡ 无延迟 - 实时透传,不做缓存

支持的存储

存储类型 状态 说明
本地文件 local:/path/to/file
HTTP/HTTPS https://example.com/file
AWS S3 s3://bucket/key
WebDAV 🚧 计划中
FTP/SFTP 🚧 计划中

🚀 快速开始

安装

pip install syncgate

演示

python3 demo_complete.py

输出:

🎯 SyncGate Complete Demo
============================================================

📝 Step 1: 创建链接
  ✅ Local:  /docs/notes.txt
  ✅ HTTP:   /online/api.json
  ✅ S3:     /cloud/data.csv

📂 Step 2: 虚拟文件系统结构
virtual/
├── 📁 docs/  → local:/path/to/files
├── 📁 online/ → https://api.example.com
└── 📁 cloud/  → s3://my-bucket/data

🔍 Step 3: 链接验证
  ✅ /docs/notes.txt
  ✅ /online/api.json

✅ 演示完成!

使用

# 创建链接
syncgate link /docs/a.txt local:/path/to/file.txt local
syncgate link /online/api.json https://api.example.com/data.json http
syncgate link /cloud/data.csv s3://my-bucket/data/2024.csv s3

# 列出目录
syncgate ls /docs

# 树形结构
syncgate tree /

# 验证链接
syncgate validate /docs/a.txt

# 查看状态
syncgate status /docs/a.txt

📖 文档

🛠️ 开发

# 克隆项目
git clone https://github.com/cyydark/syncgate.git
cd syncgate

# 运行演示
python3 demo_complete.py

# 运行测试
pytest tests/

📈 路线图

v0.1.x (当前)

  • 核心框架
  • Local/HTTP/S3 后端
  • CLI 命令
  • 链接验证
  • 推广素材 ⏳
  • 首日发布 ⏳

v0.2.x

  • WebDAV 后端
  • AI 元数据提取
  • 向量搜索

v1.0

  • 完整测试覆盖
  • 文档完善
  • 首个正式版

🤝 贡献

欢迎提交 Issue 和 PR!

📄 许可

MIT License - see LICENSE


SyncGate - 统一管理散落在各处的文件 📁🌐☁️

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syncgate-0.8.1.tar.gz (66.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syncgate-0.8.1-py3-none-any.whl (35.7 kB view details)

Uploaded Python 3

File details

Details for the file syncgate-0.8.1.tar.gz.

File metadata

  • Download URL: syncgate-0.8.1.tar.gz
  • Upload date:
  • Size: 66.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for syncgate-0.8.1.tar.gz
Algorithm Hash digest
SHA256 04fc9f74720645462d6a8b7817bfb28840fa1e338992b15767b6d8c870096f06
MD5 8546424288af40a5bed0dbd5f4fc4cf1
BLAKE2b-256 e22e075cd4a7e5f9e95a1c620680472cf36b9bd63c81a736bd3f7463a9493963

See more details on using hashes here.

File details

Details for the file syncgate-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: syncgate-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 35.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for syncgate-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 92f32d52b25d1489f4f374675b67a3978c476ac8be230e2679a903174912719c
MD5 3efd9e22b903e543fe7eef362c435c69
BLAKE2b-256 ef4e100541dc96afe50f1b86acc12b48f412024051c5067eccb4f28fde4b1e57

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page