[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-935":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":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":35,"discoverSource":36},935,"FlowDriver","NullLatency\u002FFlowDriver","NullLatency","Bypass restrictive networks by tunneling SOCKS5 traffic through legitimate Google Drive API requests.","",null,"Go",702,80,5,7,0,2,4,88,6,61.53,false,"master",[25,26,27,28,29,30,31],"covert-transport","dpi","google-drive","google-drive-api","sni","tunneling","vpn","2026-06-12 04:00:06","# Flow Driver 🌊\n\n**Flow Driver** is a covert transport system designed to tunnel network traffic (SOCKS5) through common cloud storage platforms like Google Drive. It allows for reliable communication in restrictive environments by leveraging legitimate API traffic.\n\n**Flow Driver** یک سیستم انتقال پنهان (Covert Transport) است که برای تونل کردن ترافیک شبکه (SOCKS5) از طریق پلتفرم‌های ذخیره‌سازی ابری رایج مانند گوگل درایو طراحی شده است. این ابزار با بهره‌گیری از ترافیک قانونی API، امکان ارتباط مطمئن در محیط‌های محدود شده را فراهم می‌کند.\n\n---\n\n## ⚠️ Disclaimer \u002F سلب مسئولیت\n\n**English**: This project is intended for personal usage and research purposes only. Please do not use it for illegal purposes, and do not use it in a production environment. The authors are not responsible for any misuse of this tool.\n\n**فارسی**: این پروژه صرفاً برای استفاده شخصی و اهداف تحقیقاتی در نظر گرفته شده است. لطفاً از آن برای مقاصد غیرقانونی استفاده نکنید و در محیط‌های عملیاتی (Production) از آن استفاده نشود. نویسندگان هیچ مسئولیتی در قبال سوء استفاده از این ابزار ندارند.\n\n---\n\n## How it Works \u002F نحوه عملکرد\n\n### English\nFlow Driver works by treating a cloud storage folder as a data queue:\n1.  **Client**: Captures local SOCKS5 requests and bundles them into a compact **Binary Protocol**. These binary \"packets\" are uploaded to a specific Google Drive folder.\n2.  **Server**: Continuously polls the Drive folder. When it finds a request from a client, it downloads it, opens a real TCP connection to the destination, and sends back the result as a response file.\n\n### فارسی\nنحوه عملکرد این ابزار به این صورت است که از یک پوشه در فضای ابری به عنوان صف داده‌ها استفاده می‌کند:\n1.  **کلاینت**: درخواست‌های SOCKS5 محلی را دریافت کرده و آن‌ها را در قالب یک **پروتکل باینری** فشرده بسته‌بندی می‌کند. این بسته‌ها در یک پوشه خاص در گوگل درایو آپلود می‌شوند.\n2.  **سرور**: به طور مداوم پوشه درایو را بررسی می‌کند. با یافتن درخواست جدید، آن را دانلود کرده، اتصال TCP واقعی را برقرار می‌کند و نتیجه را در قالب فایل‌های پاسخ به درایو بازمی‌گرداند.\n\n---\n\n## Setup & Installation \u002F نصب و راه‌اندازی\n\n### Prerequisites \u002F پیش‌نیازها\n- **Go** (1.25 or higher)\n- **Google Drive API Credentials**: You need a `credentials.json` (OAuth2) file.\n- **Shared Folder (Auto)**: If you leave `google_folder_id` empty, the tool will automatically create a folder named **\"Flow-Data\"** and save its ID to your config!\n\n### 1. Obtain Credentials \u002F دریافت فایل اعتبارنامه\nTo get your `credentials.json`, follow the instructions on the [Google Drive API Go Quickstart](https:\u002F\u002Fdevelopers.google.com\u002Fworkspace\u002Fdrive\u002Fapi\u002Fquickstart\u002Fgo) or follow these steps:\n\nبرای دریافت فایل `credentials.json` می‌توانید طبق دستورالعمل‌های موجود در [شروع سریع Google Drive API برای Go](https:\u002F\u002Fdevelopers.google.com\u002Fworkspace\u002Fdrive\u002Fapi\u002Fquickstart\u002Fgo) عمل کنید یا مراحل زیر را انجام دهید:\n\n**English:**\n1.  **Enable the API**: Go to the [Google Cloud Console](https:\u002F\u002Fconsole.cloud.google.com\u002F), create a project, and enable the **Google Drive API**.\n2.  **Configure Consent Screen**: Go to \"APIs & Services\" > \"OAuth consent screen.\" Fill in the app name and user support email (Branding).\n3.  **Create Credentials**: Go to \"Credentials\" > \"Create Credentials\" > **OAuth client ID**. Select **Desktop App** as the application type.\n4.  **Download JSON**: Download the client secret file and rename it to `credentials.json`.\n5.  **Publish App (Optional but Recommended)**: If your app status is \"Testing,\" your token will expire every 7 days. Go to the OAuth consent screen and click \"Publish App\" to make the authorization permanent for your account.\n\n**فارسی:**\n1.  **فعال‌سازی API**: به [کنسول گوگل کلاود](https:\u002F\u002Fconsole.cloud.google.com\u002F) بروید، یک پروژه بسازید و **Google Drive API** را فعال کنید.\n2.  **تنظیم صفحه رضایت**: به بخش \"APIs & Services\" > \"OAuth consent screen\" بروید. نام برنامه و ایمیل پشتیبانی را وارد کنید (بخش Branding).\n3.  **ساخت اعتبارنامه**: به بخش \"Credentials\" > \"Create Credentials\" > **OAuth client ID** بروید. نوع برنامه را **Desktop App** انتخاب کنید.\n4.  **دانلود فایل**: فایل کلاینت سکرت را دانلود کرده و نام آن را به `credentials.json` تغییر دهید.\n5.  **انتشار برنامه (پیشنهادی)**: اگر وضعیت برنامه روی \"Testing\" باشد، توکن شما هر ۷ روز منقضی می‌شود. در صفحه OAuth consent screen بر روی \"Publish App\" کلیک کنید تا دسترسی برای اکانت شما دائمی شود.\n\n### 2. Build Binaries \u002F ساخت فایل‌های اجرایی\n```bash\ngo build -o bin\u002Fclient .\u002Fcmd\u002Fclient\ngo build -o bin\u002Fserver .\u002Fcmd\u002Fserver\n```\n\n### 2. Configuration \u002F پیکربندی\n\nCreate your `config.json` based on the provided examples:\n\n**Client Side (`client_config.json`):**\n```json\n{\n  \"listen_addr\": \"127.0.0.1:1080\",\n  \"storage_type\": \"google\",\n  \"google_folder_id\": \"YOUR_FOLDER_ID\",\n  \"refresh_rate_ms\": 100,\n  \"flush_rate_ms\": 300,\n  \"transport\": {\n    \"TargetIP\": \"216.239.38.120:443\",\n    \"SNI\": \"google.com\",\n    \"HostHeader\": \"www.googleapis.com\"\n  }\n}\n```\n---\n\n## Performance & Quotas \u002F عملکرد و سهمیه‌ها\n\n### English\n**Important**: Google Drive has strict API rate limits (quotas). \n- Using very low values (e.g., `refresh_rate_ms: 100`) will consume your API quota very quickly.\n- To avoid connections being limited or blocked, it is recommended to keep these values above **100ms** at all times.\n- For heavy usage or multiple concurrent users, you should set these to **200ms or higher**.\n\n### فارسی\n**نکته مهم**: گوگل درایو محدودیت‌های سفت‌وسختی برای تعداد درخواست‌های API (Quota) دارد.\n- استفاده از مقادیر بسیار پایین (مثلاً `100ms`) باعث می‌شود سهمیه API شما به سرعت تمام شود.\n- برای جلوگیری از محدود شدن یا قطع شدن اتصال، توصیه می‌شود این مقادیر همیشه بالای **100ms** باشند.\n- برای استفاده‌های سنگین یا زمانی که چندین کاربر به صورت هم‌زمان متصل هستند، بهتر است این مقادیر را روی **200ms یا بالاتر** تنظیم کنید.\n\n**Server Side (`server_config.json`):**\n```json\n{\n  \"storage_type\": \"google\",\n  \"google_folder_id\": \"YOUR_FOLDER_ID\",\n  \"refresh_rate_ms\": 100,\n  \"flush_rate_ms\": 300\n}\n```\n\n### 3. Run \u002F اجرا\n\n**Server:**\n```bash\n.\u002Fbin\u002Fserver -c server_config.json -gc credentials.json\n```\n\n**Client:**\n```bash\n.\u002Fbin\u002Fclient -c client_config.json -gc credentials.json\n```\n\n---\n\n## Usage & Authentication \u002F نحوه استفاده و احراز هویت\n\n### 1. First-Time Authentication \u002F احراز هویت اولیه\nThe project uses OAuth2 \"3-legged\" flow. You only need to do this once on your local machine:\n\n**English:**\n1.  Run the client: `.\u002Fbin\u002Fclient -c client_config.json -gc credentials.json`\n2.  A link will appear in your terminal. **Copy and open it** in your web browser.\n3.  Log in to your Google account and grant permissions.\n4.  You will be redirected to an address starting with `http:\u002F\u002Flocalhost` (it's okay if the page doesn't load).\n5.  **Copy the entire URL** from your browser's address bar and paste it back into your terminal.\n6.  The program will create a `.token` file next to your `credentials.json`. Authorization is now complete.\n\n**فارسی:**\n1. کلاینت را اجرا کنید: `.\u002Fbin\u002Fclient -c client_config.json -gc credentials.json`\n2. یک لینک در ترمینال ظاهر می‌شود. آن را کپی کرده و در مرورگر خود باز کنید.\n3. وارد اکانت گوگل خود شوید و دسترسی‌های لازم را تایید کنید.\n4. شما به آدرسی که با `http:\u002F\u002Flocalhost` شروع می‌شود هدایت می‌شوید (اشکالی ندارد اگر صفحه باز نشود).\n5. **کل آدرس URL** را از نوار آدرس مرورگر کپی کرده و در ترمینال پیست کنید.\n6. برنامه یک فایل با پسوند `.token` در کنار `credentials.json` شما می‌سازد. احراز هویت تمام شد.\n\n### 2. Deploying to Server \u002F استقرار در سرور\nOnce you have the `.token` file, you don't need to log in again.\n\n**English:**\nTo run the server on a remote upstream machine:\n1.  Copy `credentials.json` **AND** the `.token` file to the server.\n2.  **Crucial**: Make sure your `server_config.json` has the **SAME** `google_folder_id` that the client just created and saved in your local config.\n3.  Run: `.\u002Fbin\u002Fserver -c server_config.json -gc credentials.json`\n4.  The server will automatically use the existing token and start immediately.\n\n**فارسی:**\nپس از دریافت فایل `.token` دیگر نیازی به لاگین مجدد نیست. برای اجرای سرور در یک ماشین دور (Upstream):\n1. فایل `credentials.json` **و** فایل `.token` ساخته شده را به سرور منتقل کنید.\n2. **خیلی مهم**: مطمئن شوید که در فایل `server_config.json` مقدار `google_folder_id` دقیقاً همان مقداری باشد که کلاینت به طور خودکار ساخته و در فایل کانفیگ شما ذخیره کرده است.\n3. اجرا کنید: `.\u002Fbin\u002Fserver -c server_config.json -gc credentials.json`\n4. سرور به صورت خودکار از توکن موجود استفاده کرده و بلافاصله شروع به کار می‌کند.\n","Flow Driver 是一个通过合法的 Google Drive API 请求来隧道传输 SOCKS5 流量以绕过限制性网络的隐蔽传输系统。其核心功能是将本地 SOCKS5 请求打包成二进制协议，并上传到指定的 Google Drive 文件夹中；服务器端则定期检查该文件夹，下载请求并建立实际的 TCP 连接后返回结果。这种设计利用了常见的云存储平台作为数据传输通道，能够有效规避深度包检测（DPI）等网络监控手段。适用于需要在严格网络环境下保持通信畅通的研究和个人使用场景，但不建议用于非法目的或生产环境。","2026-06-11 02:40:22","CREATED_QUERY"]