README
ΒΆ
π Gostly
Modern GOST Proxy Manager - Elegant desktop application for managing GOST proxy configurations
Empowering developers to manage proxy infrastructure with elegance and simplicity
β¨ Features
π§ Core Functionality
- Proxy Profile Management - Create, edit, delete, and manage GOST proxy profiles
- Multi-Protocol Support - SOCKS5, HTTP, TCP, UDP, Shadowsocks, VMess, Trojan
- Real-time Control - Start/stop proxy services with one click
- Auto-Installation - Automatically installs GOST if not present
π¨ User Interface
- Modern Dashboard - Clean, minimalist design with professional aesthetics
- Responsive Layout - Collapsible sidebar and adaptive content areas
- Real-time Monitoring - Live logs, activity timeline, and status indicators
- Advanced Configuration - JSON editor with validation and templates
π Monitoring & Analytics
- Activity Timeline - Track all operations with visual timeline
- Real-time Logs - Monitor GOST processes with color-coded levels
- Status Dashboard - Visual feedback for running/stopped services
- Configuration Validation - Built-in JSON validation and error checking
πΌοΈ Screenshots
Beautiful screenshots showcasing the modern dashboard, proxy management, and monitoring features
π± Available Screenshots
π Dashboard
- Dashboard Overview - Main application interface (coming soon)
βοΈ Proxy Management
- Proxy Management - Profile creation and editing interface

π Monitoring & Logs
- Activity Timeline - Visual operation history with timeline view

- Logs Monitoring - Real-time process output and monitoring

π§ Configuration
- Advanced Configuration - JSON editor with validation and templates

π Screenshot Documentation
- π Detailed Screenshot Guide
- π€ Contributing Guide
- π Development Setup
πΈ Screenshot Gallery
π Screenshots are now available! Click on any image to view in full size.
π Quick Start
Prerequisites
- Go 1.23+ - Download
- Node.js 18+ - Download
- Git - Download
- GOST 3.0+ - Download (Minimum version required)
Installation
# Clone the repository
git clone https://github.com/imansprn/gostly.git
cd gostly/gostly
# Install Go dependencies
go mod tidy
# Install frontend dependencies
cd frontend && npm install && cd ..
# Run in development mode
wails dev
Build for Production
# Build for current platform
wails build
# Build for specific platforms
wails build -platform darwin/amd64 # macOS Intel
wails build -platform darwin/arm64 # macOS Apple Silicon
wails build -platform windows/amd64 # Windows
wails build -platform linux/amd64 # Linux
Creating Releases
π Automated Release Process (Release Please):
-
Conventional Commits - Write commits following Conventional Commits format:
feat: add new proxy protocol support fix: resolve connection timeout issue docs: update installation guide -
Automatic Release Creation:
- Release Please automatically detects changes using built-in Go strategy
- Creates release pull requests with proper versioning
- Generates changelog from commit messages
- Creates GitHub releases with all platform artifacts
-
Manual Release (if needed):
- Go to Actions β Release Please β Run workflow
- Fill in version details and run
What happens automatically:
- β Downloads build artifacts from main CI/CD pipeline
- π¦ Creates platform-specific packages (.tar.gz)
- π Uploads to GitHub Releases
- π Creates GitHub release with download links
- π Generates changelog from conventional commits
- π·οΈ Tags and versions based on commit types
Commit Types for Version Bumping:
feat:- Minor version bump (new features)fix:- Patch version bump (bug fixes)BREAKING CHANGE:- Major version bump (breaking changes)
For detailed release instructions, see CONTRIBUTING.md and Release Please Guide.
ποΈ Architecture
Application Stack
| Layer | Technology | Purpose |
|---|---|---|
| Frontend | React 18 + TypeScript | Modern, responsive UI |
| Styling | Tailwind CSS | Utility-first CSS framework |
| Build Tool | Vite | Fast development & building |
| Desktop | Wails v2 | Native desktop integration |
| Backend | Go 1.23 | High-performance proxy management |
| Database | SQLite | Lightweight data persistence |
| Proxy Engine | GOST | Versatile proxy toolkit |
CI/CD Pipeline
| Workflow | Purpose | Triggers |
|---|---|---|
| main.yml | Testing, building, security | Push, PR |
| release.yml | Release Please automation | Push to main, manual |
| dependencies.yml | Dependency updates | Weekly, manual |
Release Management
- Release Please - Automated releases based on conventional commits
- GitHub Releases - Artifact distribution and storage
- Conventional Commits - Automatic versioning and changelog generation
π Usage Guide
Creating Proxy Profiles
- Open Gostly β Navigate to "Proxy Configurations"
- Click "Add Proxy Rule" β Fill in profile details
- Configure settings:
- Name: Descriptive profile name
- Protocol: Choose GOST protocol type
- Listen Address: Local binding (e.g.,
:1080) - Remote Address: Target server address
- Authentication: Username/password if required
- Save & Start the profile
Managing Services
- βΆοΈ Start Service - Click the start button
- βΉοΈ Stop Service - Click the stop button
- βοΈ Edit Profile - Modify existing settings
- ποΈ Delete Profile - Remove unused profiles
Monitoring & Logs
- π Dashboard - Overview of all profiles and status
- π Logs & Monitoring - Real-time GOST process output
- β° Activity Timeline - Visual history of operations
- π Search & Filter - Quick profile discovery
π§ Configuration
Supported GOST Protocols
| Protocol | Type | Description | Use Case |
|---|---|---|---|
forward |
SOCKS5 | Forward Proxy | Client internet access |
reverse |
TCP | Reverse Proxy | Server load balancing |
http |
HTTP | HTTP Proxy | Web proxy with auth |
tcp |
TCP | TCP Forwarding | Direct port forwarding |
udp |
UDP | UDP Forwarding | UDP service proxy |
ss |
Shadowsocks | Encrypted Proxy | Secure proxy service |
vmess |
VMess | VMess Protocol | Advanced proxy protocol |
trojan |
Trojan | Trojan Protocol | Secure proxy tunnel |
Environment Variables
# GOST binary path (auto-detected)
export GOST_BINARY=/usr/local/bin/gost
# Database location (auto-configured)
export GOSTLY_DB_DIR=~/.config/gostly/
# Log level
export GOSTLY_LOG_LEVEL=info
π§ͺ Testing & CI/CD
Automated Testing
Our consolidated CI/CD pipeline automatically runs:
- β Code quality checks (linting, formatting)
- π§ͺ Go and frontend tests with coverage reporting
- π‘οΈ Security scanning (vulnerability checks)
- ποΈ Multi-platform builds (Linux, macOS, Windows)
Triggers:
- Every push to
mainanddevelop - Every pull request
- Manual workflow dispatch
Local Testing
Frontend Tests
cd frontend
npm test # Run tests
npm run type-check # TypeScript validation
Backend Tests
# Run all tests
go test ./...
# Run with coverage
go test -v -race -coverprofile=coverage.out ./...
# View coverage
go tool cover -html=coverage.out
Full Build Test
# Test complete build process
wails build -debug
π¦ Distribution
Supported Platforms
- macOS -
.appbundle,.dmginstaller - Windows -
.exeexecutable,.msiinstaller - Linux -
.deb,.rpm,.AppImage
Build Commands
# Clean build
wails clean && wails build
# Cross-platform builds
wails build -platform darwin/amd64,linux/amd64,windows/amd64
# Development build
wails build -debug
π€ Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Setup
# Fork & clone
git clone https://github.com/YOUR_USERNAME/gostly.git
cd gostly/gostly
# Install dependencies
go mod tidy
cd frontend && npm install && cd ..
# Start development
wails dev
Code Standards
- Go: Follow
gofmtandgolintstandards - TypeScript: Use ESLint and Prettier
- CSS: Follow Tailwind CSS conventions
- Commits: Use conventional commits
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Acknowledgments
- GOST Project - Excellent proxy toolkit
- Wails Team - Amazing desktop framework
- React Community - Powerful frontend ecosystem
- Go Community - Robust backend language
π Support
Getting Help
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π Documentation: Wiki
Community
- Discord: Join our community server
- Telegram: Follow updates and announcements
- Twitter: Get the latest news
Made with β€οΈ by the Gostly Team
Empowering developers to manage proxy infrastructure with elegance and simplicity
Documentation
ΒΆ
There is no documentation for this package.