Skip to content

Fetch ML - Secure Machine Learning Platform

A secure, containerized platform for running machine learning experiments with role-based access control and comprehensive audit trails.

Quick Start

New to the project? Start here!

# Clone the repository
git clone https://github.com/your-username/fetch_ml.git
cd fetch_ml

# Quick setup (builds everything, creates test user)
make quick-start

# Create your API key
./bin/user_manager --config configs/config_dev.yaml --cmd generate-key --username your_name --role data_scientist

# Run your first experiment
./bin/worker --config configs/config_dev.yaml --api-key YOUR_GENERATED_KEY

Quick Navigation

๐Ÿš€ Getting Started

๐Ÿ”’ Security & Authentication

โš™๏ธ Configuration

๐Ÿ› ๏ธ Development

๐Ÿญ Production Deployment

Features

  • ๐Ÿ” Secure Authentication - RBAC with API keys, roles, and permissions
  • ๐Ÿณ Containerized - Podman-based secure execution environments
  • ๐Ÿ—„๏ธ Database Storage - SQLite backend for user management (optional)
  • ๐Ÿ“‹ Audit Trail - Complete logging of all actions
  • ๐Ÿš€ Production Ready - Security audits, systemd services, log rotation

Available Commands

# Core commands
make help                    # See all available commands
make build                   # Build all binaries
make test-unit              # Run tests

# User management
./bin/user_manager --config configs/config_dev.yaml --cmd generate-key --username new_user --role data_scientist
./bin/user_manager --config configs/config_dev.yaml --cmd list-users

# Run services
./bin/worker --config configs/config_dev.yaml --api-key YOUR_KEY
./bin/tui --config configs/config_dev.yaml
./bin/data_manager --config configs/config_dev.yaml

Need Help?

  • ๐Ÿ“– Documentation: Use the navigation menu on the left
  • โšก Quick help: make help
  • ๐Ÿงช Tests: make test-unit

Happy ML experimenting!