Thanks to visit codestin.com
Credit goes to github.com

Skip to content

High-performance C++ backend for Softadastra Drive: storage, sync engine, real-time events, and AI-ready architecture.

License

Notifications You must be signed in to change notification settings

softadastra/drive-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Softadastra Drive β€” Core Backend (C++ / Vix.cpp)

Softadastra Drive is the foundation of the new Softadastra platform β€”
a cloud-first, offline-capable, real-time, AI‑augmented storage engine designed for developers and modern distributed applications.

This repository hosts the high-performance C++ backend, powered by Vix.cpp, built for:

  • Ultra-fast file operations
  • Modern sync mechanisms
  • Durability across devices
  • Local-first behaviour with cloud consistency
  • Integration with a dedicated AI engine (drive-ai)

Softadastra Drive is the first brick of the future Softadastra Global OS + WorldNet, a unified environment that enables:

  • Cloud desktop
  • App studio
  • Marketplace
  • AI-native workflows
  • Peer-to-peer sync

Drive‑core is the heart that everything else depends on.


🌍 Vision

Softadastra Drive aims to redefine what a cloud storage engine can be:

πŸ’Ύ 1. Storage that feels local

Files load fast, sync instantly, and remain available offline, thanks to IndexedDB and a local-first sync algorithm.

πŸ”„ 2. Real-time sync like Apple iCloud β€” but open

Every update triggers instant events:

  • file_created
  • file_updated
  • file_deleted
  • folder_changed

All exposed via WebSocket for any client, SDK, or app.

🧠 3. AI-Native storage

Every file can be:

  • summarized,
  • OCR‑processed,
  • semantically indexed,
  • explored via natural language.

A PDF becomes searchable.
An image becomes tagged.
A folder becomes intelligent.

🧩 4. Open SDK ecosystem

Developers can integrate Softadastra Drive via:

  • JavaScript SDK
  • C++ SDK
  • Python SDK

No vendor lock-in β€” everything is open-source.

⚑ 5. Powered by C++ for true performance

Unlike Firebase or Supabase, Softadastra Drive uses a custom C++ engine designed for:

  • low latency
  • high throughput
  • minimal memory usage
  • efficient concurrency

This backend scales vertically and horizontally while keeping predictable performance.


πŸ—οΈ Architecture Overview

drive-core (C++)
β”‚
β”œβ”€β”€ HTTP API (REST/JSON)
β”œβ”€β”€ WebSocket Sync Engine
β”œβ”€β”€ File Metadata, Versions, Trees
β”œβ”€β”€ Authentication & Sessions
β”œβ”€β”€ AI Integration Gateway β†’ drive-ai (Python)
└── MySQL Storage

Supporting repositories:

  • drive-frontend β†’ PWA + offline + UI
  • drive-ai β†’ AI microservice (FastAPI, OCR, summaries, embeddings)
  • sdk-js / sdk-cpp / sdk-python β†’ Official SDKs
  • docs β†’ Documentation site

πŸ“¦ Project Structure

drive-core/
β”œβ”€β”€ CMakeLists.txt
β”œβ”€β”€ CMakePresets.json
β”œβ”€β”€ README.md
β”œβ”€β”€ CHANGELOG.md
β”œβ”€β”€ include/
β”‚   └── softadastra/drive/
β”‚       β”œβ”€β”€ app/
β”‚       β”‚   └── App.hpp
β”‚       β”œβ”€β”€ http/
β”‚       β”œβ”€β”€ service/
β”‚       β”œβ”€β”€ repository/
β”‚       β”œβ”€β”€ ws/
β”‚       └── utils/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.cpp
β”‚   β”œβ”€β”€ app/App.cpp
β”‚   β”œβ”€β”€ http/
β”‚   β”œβ”€β”€ service/
β”‚   β”œβ”€β”€ repository/
β”‚   β”œβ”€β”€ ws/
β”‚   └── utils/
└── tests/
    β”œβ”€β”€ CMakeLists.txt
    └── *.cpp

βš™οΈ Build Requirements

  • C++20 compiler
    • GCC β‰₯ 11, Clang β‰₯ 15, MSVC 2022+
  • CMake β‰₯ 3.20
  • Vix.cpp installed (core-only)
  • Boost
  • OpenSSL
  • MySQL Connector/C++
  • Ninja (recommended)

πŸš€ Building & Running

Using Vix CLI (recommended)

vix build
vix run

Or manually:

cmake --preset dev-ninja
cmake --build --preset dev-ninja
./build-ninja/drive-core

Visit:


πŸ”Œ API (Early Preview)

GET /health

Returns service health.

GET /

Returns service status.

More routes will follow:

  • /auth/signup
  • /auth/login
  • /files/upload
  • /files/:id
  • /folders/...
  • /sync/index
  • /sync/changes

πŸ§ͺ Tests

Softadastra Drive uses Catch2 v3 via FetchContent.

Run tests:

ctest

🧭 Roadmap (Core)

Phase 1 β€” Backend Foundation

  • Project skeleton
  • Auth system
  • File metadata engine
  • Folder system
  • Sync event model

Phase 2 β€” File Engine

  • Upload / download
  • Versions
  • Previews / thumbnails

Phase 3 β€” Sync Engine

  • Change cursors
  • Real-time WebSocket sync
  • Conflict resolution

Phase 4 β€” AI Engine Gateway

  • Summaries
  • OCR
  • Semantic search

Phase 5 β€” SDK ecosystem

  • JS SDK
  • C++ SDK
  • Python SDK

πŸͺͺ License

MIT Β© Softadastra / Vixcpp authors


πŸ’¬ Contributing

Softadastra Drive is open-source and welcomes contributions:

  • features
  • bug fixes
  • documentation
  • performance improvements

🌟 Final Note

Softadastra Drive is more than a storage backend.
It is the core building block of the future Softadastra OS, where apps, AI, sync, identity, and cloud-native workflows merge into a unified ecosystem.

You're not just storing files β€”
you're building the foundation of a global distributed system.

About

High-performance C++ backend for Softadastra Drive: storage, sync engine, real-time events, and AI-ready architecture.

Resources

License

Stars

Watchers

Forks

Packages

No packages published