https://github.com/elarsaks/gha_ml_pipeline
End to End Machine Learning System in GitHub Actions
https://github.com/elarsaks/gha_ml_pipeline
data-ingestion data-pipeline data-visualization github-actions linear-regression machine-learning mlops parquet python rust
Last synced: 5 months ago
JSON representation
End to End Machine Learning System in GitHub Actions
- Host: GitHub
- URL: https://github.com/elarsaks/gha_ml_pipeline
- Owner: elarsaks
- Created: 2025-06-21T10:58:47.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2026-01-11T00:43:37.000Z (6 months ago)
- Last Synced: 2026-01-11T08:24:53.918Z (6 months ago)
- Topics: data-ingestion, data-pipeline, data-visualization, github-actions, linear-regression, machine-learning, mlops, parquet, python, rust
- Language: TypeScript
- Homepage: https://elarsaks.github.io/gha_ml_pipeline/
- Size: 9.09 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# gha-ml-pipeline
[](LICENSE)

## Overview
This repository is a hobby project that implements a complete machine learning pipeline for Bitcoin price prediction. Everything runs inside GitHub Actions and all data and models live directly in this repository. The goal is to learn and demonstrate an end‑to‑end ML workflow without relying on expensive cloud services or paid APIs.
The pipeline covers data collection, model training, analysis and visualisation. It uses a mix of Rust, Python and TypeScript with CI/CD provided by GitHub Actions.
## Main components
- **CI/CD**: GitHub Actions orchestrate fetching, training and deployment.
- **Rust backend** (`rust_fetch/`): binaries for fetching historical data and converting it to Parquet files.
- **Python ML pipeline** (`python_train/`): Conda‑based environment for training and evaluating models.
- **React front‑end** (`react_client/`): simple UI to visualize the final prediction. The latest version is always deployed at [elarsaks.github.io/gha_ml_pipeline](https://elarsaks.github.io/gha_ml_pipeline/).
## Project structure
```
/ data/ Raw and processed datasets
/ models/ Trained model weights and metadata
/ rust_fetch/ Rust data ingestion tools
/ python_train/ Python ML code and notebooks
/ react_client/ React + TypeScript front‑end
```
## Installation
For setup and usage instructions, see the README in each subdirectory:
- [rust_fetch/README.md](rust_fetch/README.md)
- [python_train/README.md](python_train/README.md)
- [react_client/README.md](react_client/README.md)
- [.github/workflows/README.md](.github/workflows/README.md)