[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1986":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":35,"readmeContent":36,"aiSummary":37,"trendingCount":16,"starSnapshotCount":16,"syncStatus":14,"lastSyncTime":38,"discoverSource":39},1986,"GooseRelayVPN-AndroidClient","Hidden-Node\u002FGooseRelayVPN-AndroidClient","Hidden-Node","GooseRelayVPN Android client: a SOCKS5 VPN with profile-based setup, live logs, and JSON import\u002Fexport that tunnels raw TCP   through Google Apps Script to your VPS exit server (AES-256-GCM, domain-fronted).","",null,"Go",237,14,2,6,0,1,63,3,3.53,"MIT License",false,"main",[25,26,27,28,29,30,31,32,33,34],"aes-gcm","http-proxy","mitm","proxy","sni","socks5","tunnel","tunneling","vpn","vpn-client","2026-06-12 02:00:35","# GooseRelayVPN Android Client\n🌐 **[فارسی](README_FA.md)** \n\n\nAndroid client for GooseRelayVPN that runs the GooseRelay core through a Go mobile bridge and provides a complete Android UI for VPN lifecycle, profiles, logs, and settings.\n\n- Upstream core project: https:\u002F\u002Fgithub.com\u002Fkianmhz\u002FGooseRelayVPN\n- This repository: Android-focused client implementation\n\n## What This App Does\n\nThis app creates a local SOCKS5 endpoint on Android and tunnels TCP traffic through the GooseRelay architecture:\n\n1. Local app\u002Fbrowser traffic -> SOCKS5\n2. GooseRelay encrypted framing (AES key from your profile)\n3. HTTPS path through Google-facing endpoints (Apps Script flow)\n4. Your VPS exit server handles outbound target connections\n\nThe app wraps this flow in Android `VpnService` so selected\u002Ffull traffic can be routed through the tunnel.\n\n## Key Features\n\n- Android VPN integration (`VpnService` + tun2socks)\n- Profile-based configuration\n- JSON import\u002Fexport for profile config\n- Real-time Home status + telemetry cards\n- Logs tab for Android\u002Fcore diagnostics\n- Split tunneling and internet sharing controls\n\n## Configuration Model (Profile)\n\nProfile fields are aligned with GooseRelay client config:\n\n```json\n{\n  \"debug_timing\": false,\n  \"socks_host\": \"127.0.0.1\",\n  \"socks_port\": 1080,\n  \"google_host\": \"216.239.38.120\",\n  \"sni\": [\"www.google.com\", \"mail.google.com\", \"accounts.google.com\"],\n  \"script_keys\": [\n    \"REPLACE_WITH_DEPLOYMENT_ID\",\n    \"OPTIONAL_SECOND_DEPLOYMENT_ID\"\n  ],\n  \"tunnel_key\": \"REPLACE_WITH_OUTPUT_OF_scripts_gen-key.sh\"\n}\n```\n\nNotes:\n- `script_keys` in UI: one key per line.\n- `tunnel_key`: must match server-side key.\n- Import\u002Fexport in app uses JSON.\n\n## Upstream Setup Flow (Required)\n\nYou still need upstream infrastructure prepared first:\n\n1. Prepare VPS and run `goose-server`\n2. Deploy `apps_script\u002FCode.gs` and obtain deployment ID(s)\n3. Generate key via `scripts\u002Fgen-key.sh`\n4. Put deployment ID(s) and key into Android profile\n5. Connect in app and configure app\u002Fbrowser proxy as needed\n\nFor full infra details, use upstream docs:\n- https:\u002F\u002Fgithub.com\u002Fkianmhz\u002FGooseRelayVPN\n\n## Android Build (Local)\n\nRequirements:\n- Android Studio\n- JDK 17\n- Go 1.22+\n- Android SDK \u002F NDK\n\nBuild AAR (Go mobile bridge):\n\n```bash\nbash android\u002Fbuild_go_mobile.sh\n```\n\nBuild debug APK:\n\n```bash\ncd android\n.\u002Fgradlew :app:assembleDebug\n```\n\n## Release \u002F CI\n\nWorkflows in this repo:\n- `.github\u002Fworkflows\u002Fandroid-ci.yml`\n- `.github\u002Fworkflows\u002Frelease-manual.yml`\n- `.github\u002Fworkflows\u002Frelease.yml`\n\nManual signed release requires secrets:\n- `ANDROID_KEYSTORE_BASE64`\n- `ANDROID_KEYSTORE_PASSWORD`\n- `ANDROID_KEY_ALIAS`\n- `ANDROID_KEY_PASSWORD`\n\n## Troubleshooting\n\n- If reconnect fails with SOCKS port busy:\n  - Disconnect, wait a few seconds, reconnect.\n  - Ensure no other app uses the same SOCKS port.\n- If connection stays in preparing state:\n  - Verify `script_keys` and `tunnel_key`.\n  - Check Logs tab for core errors.\n- If no traffic flows:\n  - Verify VPN permission granted.\n  - Verify split tunnel app selection.\n\n## Credits\n\n1. Main project:\n   - https:\u002F\u002Fgithub.com\u002Fkianmhz\u002FGooseRelayVPN\n\n2. Project that inspired the main project idea:\n   - https:\u002F\u002Fgithub.com\u002Fmasterking32\u002FMasterHttpRelayVPN\n","GooseRelayVPN Android客户端是一个基于SOCKS5的VPN应用，通过Google Apps Script将原始TCP流量隧道传输到用户的VPS出口服务器。该应用利用AES-256-GCM加密和域名前置技术确保数据安全，并提供基于配置文件的设置、实时日志记录以及JSON格式的导入导出功能。它支持Android系统的`VpnService`集成，允许用户选择性地或全面地路由网络流量，同时具备分隧道和互联网共享控制特性。适用于需要绕过地理限制访问互联网内容或保护在线隐私的场景，尤其适合开发者和技术爱好者根据自身需求定制化部署使用。","2026-06-11 02:47:14","CREATED_QUERY"]