A local-first, node-based ML orchestrator with a visual pipeline builder
Project description
๐ง NeuroFlow
A local-first, node-based ML orchestrator with a visual pipeline builder.
โจ Features
- ๐จ Visual Pipeline Builder - Drag-and-drop nodes to create ML workflows
- ๐ Node-Based Architecture - Connect data loaders, preprocessors, models, and evaluators
- ๐ Built-in Visualizations - View metrics, charts, and model performance
- ๐พ Local-First - All data stays on your machine
- ๐ฆ Export/Import - Save and share workflows as JSON
- ๐ One Command - Install and run with a single command
๐ Quick Start
Installation
# Install from PyPI (coming soon)
pip install neuroflow
# Or install from source
git clone https://github.com/aayushgokhale/neuroflow.git
cd neuroflow/NeuroFlow
pip install -e .
Running NeuroFlow
# Start NeuroFlow (opens browser automatically)
neuroflow
# Or specify a custom port
neuroflow --port 3000
# Don't open browser automatically
neuroflow --no-browser
Visit http://localhost:8000 to access the visual pipeline builder.
๐ Usage
Building a Pipeline
- Drag nodes from the left sidebar onto the canvas
- Connect nodes by dragging from output ports to input ports
- Configure nodes by clicking on them and editing parameters
- Run the workflow by clicking the "Run Workflow" button
- View results in the Results Panel with metrics and charts
Node Types
| Category | Nodes |
|---|---|
| Data | CSV Loader, SQL Query, API Fetch |
| Preprocessing | Normalize, Encode, Split Data |
| Models | Random Forest, Neural Net, XGBoost |
| Evaluate | Accuracy Chart, Loss Curve, Confusion Matrix |
Example Workflow
CSV Loader โ Split Data โ Random Forest โ Evaluator
๐ ๏ธ Development
Prerequisites
- Python 3.9+
- Node.js 18+
- pnpm (recommended)
Setup
# Clone the repository
git clone https://github.com/aayushgokhale/neuroflow.git
cd neuroflow
# Install backend dependencies
cd NeuroFlow
pip install -e ".[dev]"
# Install frontend dependencies
cd ../Frontend
pnpm install
# Run development servers
# Terminal 1: Backend
cd NeuroFlow && uvicorn app.main:app --reload
# Terminal 2: Frontend
cd Frontend && pnpm dev
Building for Distribution
cd NeuroFlow
./build.sh
pip install -e .
๐ Project Structure
neuroflow/
โโโ Frontend/ # Next.js frontend
โ โโโ app/ # App router pages
โ โโโ components/ # React components
โ โ โโโ neuroflow/ # NeuroFlow-specific components
โ โโโ public/ # Static assets
โโโ NeuroFlow/ # Python backend package
โ โโโ app/ # FastAPI application
โ โ โโโ cli.py # CLI entry point
โ โ โโโ main.py # FastAPI app
โ โ โโโ engine.py # Workflow execution engine
โ โ โโโ schemas.py # Pydantic models
โ โ โโโ executors/ # Node executors
โ โโโ data/ # Demo datasets
โ โโโ static/ # Built frontend (after build)
โ โโโ pyproject.toml # Package configuration
๐ง API Reference
REST Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET |
/health |
Health check |
POST |
/workflows/execute |
Execute a workflow |
GET |
/workflows/{id}/status |
Get execution status |
POST |
/data/upload |
Upload data files |
GET |
/models/{id}/download |
Download trained model |
WebSocket
Connect to /ws/workflow/{run_id} for real-time execution progress updates.
๐ License
MIT License - see LICENSE for details.
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ง Contact
Created by Aayush Gokhale
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file neuroflow_ml-0.1.0.tar.gz.
File metadata
- Download URL: neuroflow_ml-0.1.0.tar.gz
- Upload date:
- Size: 615.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
207faf6a66d7fa47f72df1f8208342afdf8b7a3d3c68338291fffc174230a9bb
|
|
| MD5 |
99da479073f984b7d82fdc3687c3f297
|
|
| BLAKE2b-256 |
cb09175600fcab480baf729c3f73a6758bcf27352b8d1768b0c7beeea537e8c2
|
File details
Details for the file neuroflow_ml-0.1.0-py3-none-any.whl.
File metadata
- Download URL: neuroflow_ml-0.1.0-py3-none-any.whl
- Upload date:
- Size: 639.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57a1921331bbee895a1366ea04972932c1fba3fa07d4e8e56fe653c991ba1a4f
|
|
| MD5 |
812ad1dc2d58de6ee7a52e5364a25082
|
|
| BLAKE2b-256 |
2aacb36fa8165cd203ae408467a0b8c52557e5e5108ebca51de04783d9f054ab
|