Data collection automation framework.
Fricon is a data collection automation framework designed for managing datasets in scientific and research workflows. It provides:
- Workspace Management: Organized data storage with metadata tracking
- Dataset Operations: Arrow-format data tables with UUID and incremental ID tracking
- Desktop UI: Cross-platform Tauri application with React 19 frontend
- Server Architecture: IPC-based server for workspace operations
For Python users (recommended):
pip install friconFor development or building from source:
Building from source requires several dependencies including Rust, protoc, uv, pnpm, and platform-specific libraries. See CONTRIBUTING.md for complete setup instructions.
git clone https://github.com/kahojyun/fricon.git
cd fricon
python3 scripts/setup-dev.pyCreate a workspace:
fricon init path/to/workspaceLaunch the desktop UI:
fricon gui path/to/workspaceOr connect from Python to a workspace with a running server:
from pathlib import Path
from fricon import Workspace
workspace_path = Path("path/to/workspace")
ws = Workspace.connect(workspace_path)
# Initialize a new dataset (schema is automatically inferred)
writer = ws.dataset_manager.create("my_dataset", description="My test dataset")
# Write data - schema is inferred from the first row
# MVP currently supports float and complex types only
writer.write(id=1, value=42.0, measurement=3.14 + 2j)
writer.write(id=2, value=84.0, measurement=1.618 - 1j)
writer.close()
# List all datasets
datasets = ws.dataset_manager.list_all()
print(datasets)We welcome contributions! Please see CONTRIBUTING.md for detailed guidelines on development environment setup, building components, testing, and contribution workflow.
fricon is distributed under the terms of the
MIT OR
Apache-2.0 license.