Skip to content

navicore/mygit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyGit

Self-hosted Git platform with bidirectional GitHub synchronization, built with Rust and Leptos.

Features

  • Git Server: Full Git HTTP smart protocol support (clone, push, pull)
  • Web UI: Modern Leptos-based interface for repository browsing
  • Authentication: WebAuthn MFA + GitHub OAuth
  • GitHub Sync: Bidirectional synchronization with GitHub repositories
  • Kubernetes Native: Designed to run on Kind cluster behind Cloudflare Tunnel

Architecture

mygit/
├── crates/
│   ├── git-core/        # Git operations using gitoxide
│   ├── git-server/      # HTTP server (Axum + Leptos SSR)
│   ├── web-ui/          # Leptos frontend components
│   ├── auth/            # WebAuthn + OAuth2 authentication
│   └── sync-service/    # GitHub bidirectional sync
├── k8s/                 # Kubernetes manifests
└── docker/              # Dockerfiles

Development

Prerequisites

  • Rust 2024 edition (stable toolchain)
  • cargo
  • (Optional) Docker & Kind for k8s deployment

Build

cargo build

Run

cargo run -p git-server

Server will start on http://localhost:3000

Deployment

See k8s/README.md for Kubernetes deployment instructions.

License

MIT OR Apache-2.0

About

sync github in a private standalone self-hosted system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published