A self-hosted Git server with SSH and HTTP protocol support, built with Go. Features a GitHub-inspired web interface with user profiles, contribution graphs, and CI/CD.
- Git Protocol - Full SSH and Smart HTTP support for clone, push, pull
- Web Interface - GitHub-inspired UI with dark theme
- User Profiles - Bio, company, location, website, avatar, social links
- Contribution Graph - GitHub-style heatmap with year selector
- OIDC Authentication - OpenID Connect support for SSO
- CI/CD - Pluggable CI runner for automated builds
- SSH Key Management - Manage SSH keys for Git access
- Personal Access Tokens - Token-based authentication for API and Git
- Repository Management - Create, import, fork, and manage repositories
- Docker & Docker Compose
- Go 1.24+ (for development)
- Bun or Node.js 18+ (for frontend development)
# Clone the repository
git clone https://github.com/get-stasis/stasis.git
cd stasis
# Copy environment file
cp configs/.env.example .env
# Edit .env with your settings
vim .env
# Start all services
docker compose up -d
# View logs
docker compose logs -fThe application will be available at:
- Web Interface: http://localhost:3000
- API Server: http://localhost:8080
- SSH Server: localhost:2222
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
- Gin - HTTP web framework
- Next.js - React framework
- Charm/Wish - SSH server
- Atlas - Database migrations