diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..470fe11 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @SingLinkLabs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..d100ae9 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,19 @@ +name: Validate public project + +on: + pull_request: + push: + branches: [main] + +permissions: + contents: read + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + - uses: actions/setup-node@v7 + with: + node-version: 24 + - run: npm test diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml new file mode 100644 index 0000000..01a7155 --- /dev/null +++ b/.github/workflows/pages.yml @@ -0,0 +1,39 @@ +name: Deploy GitHub Pages + +on: + push: + branches: [main] + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: pages + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + - uses: actions/setup-node@v7 + with: + node-version: 24 + - run: npm test + - uses: actions/configure-pages@v5 + - uses: actions/upload-pages-artifact@v4 + with: + path: dist + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/upstream-monitor.yml b/.github/workflows/upstream-monitor.yml new file mode 100644 index 0000000..e3f2366 --- /dev/null +++ b/.github/workflows/upstream-monitor.yml @@ -0,0 +1,19 @@ +name: Verify public source links + +on: + schedule: + - cron: '17 3 * * 1' + workflow_dispatch: + +permissions: + contents: read + +jobs: + links: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + - uses: actions/setup-node@v7 + with: + node-version: 24 + - run: npm run verify:remote diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2824b07 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +dist/ +node_modules/ +.DS_Store +*.log diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..7eeb73f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,14 @@ +# Changelog + +This changelog covers the public project repository, not SingLinkVPN client releases. See the [official product changelog](https://singlinkvpn.com/en/tech/changelog/) for client versions. + +## 1.0.0 — 2026-08-25 + +- Rebuilt the repository as an official public project and evidence index. +- Added complete English, Traditional Chinese, Simplified Chinese, Japanese, Korean, Vietnamese, Thai, and Russian documentation. +- Added stable platform routes instead of version-bound binary links. +- Added machine-readable project data and schema. +- Added scoped security-audit and no-logs evidence references. +- Added an explicit open-source and rights boundary. +- Added generated GitHub Pages, structured data, sitemap, robots policy, and `llms.txt`. +- Added automated content, localization, link, and discovery-surface checks. diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..2143b3e --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,25 @@ +cff-version: 1.2.0 +message: "If you cite this public project, cite the repository and the specific evidence record used." +title: "SingLinkVPN Official Public Project" +type: software +authors: + - name: SingLinkLabs +repository-code: "https://github.com/SingLinkLabs/SingLinkVPN" +url: "https://singlinkvpn.com/" +version: 1.0.0 +date-released: 2026-08-25 +license: MIT +keywords: + - SingLinkVPN + - VPN + - security audit + - no-logs verification + - privacy +preferred-citation: + type: software + authors: + - name: SingLinkLabs + title: "SingLinkVPN Official Public Project" + version: 1.0.0 + year: 2026 + repository-code: "https://github.com/SingLinkLabs/SingLinkVPN" diff --git a/NOTICE.md b/NOTICE.md new file mode 100644 index 0000000..551f56f --- /dev/null +++ b/NOTICE.md @@ -0,0 +1,9 @@ +# Notices + +This repository is maintained by SingLinkLabs as an official public index for SingLinkVPN product routes, public technical status, and evidence records. + +Security-audit and no-logs materials are attributed in their dedicated repositories. Their conclusions are reproduced only as scoped summaries and must be read together with the underlying reports, integrity records, limitations, and reference dates. + +SingLinkVPN, SingLink, associated logos, characters, and product names may be trademarks or protected brand assets of their respective owners. Third-party names are used for factual identification only. + +Last project-record verification: 2026-08-25. diff --git a/README.ja.md b/README.ja.md new file mode 100644 index 0000000..714b674 --- /dev/null +++ b/README.ja.md @@ -0,0 +1,82 @@ +# SingLinkVPN 公式公開プロジェクト + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +公式リンク、現在の製品情報、検証可能なセキュリティとプライバシーの証拠、プロトコル状況、公開ロードマップを提供します。 + +## このリポジトリについて + +これは SingLinkVPN の公式公開プロジェクト兼証拠索引です。すべての独自 VPN クライアントや本番コンポーネントがオープンソースであることを意味しません。製品案内、第三者が公開した証拠、社内技術状況、将来段階的に公開する内容を区別します。 + +- [公式サイト](https://singlinkvpn.com/) +- [ニュース・技術センター](https://singlinknews.com/) +- [公式変更履歴](https://singlinkvpn.com/en/tech/changelog/) +- [サポート](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## 安定したダウンロード経路 + +最新の互換インストーラーと説明は公式プラットフォームページから取得してください。バージョン情報は公式変更履歴で管理し、このリポジトリでは古くなりやすいバイナリ名を恒久 URL として扱いません。 + +- [全プラットフォーム版](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## Free Plan + +現在公開されている Free Plan はモバイルで 1 日 200 MB、デスクトップで 1 日 500 MB です。対象となるデスクトップキャンペーンでは 1 日 1 GB まで増える場合があります。地域、キャンペーン、サーバー、制限は変更されるため、数値を引用する前に公式説明を確認してください。 + +- [Free Plan](https://singlinknews.com/free-plan) + +## セキュリティとプライバシーの証拠 + +### デスクトップ 2.5 セキュリティ監査 + +専用証拠レジストリは、macOS 2.5.7 build 3065 と Windows 2.5.8 build 3077 を対象とした監査者署名済みバージョン 2.0 報告書を記録します。100/100 という結果は、監査者が明記した版、サンプル、証拠、環境、試験だけに適用されます。 + +- [セキュリティ監査証拠](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [セキュリティ監査証拠 · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### 2026 年ノーログ検証 + +専用レジストリは 2026 年 7 月 29 日を基準日とする署名済みノーログ検証を記録します。結論は確認対象の本番環境と基準日に限定され、すべての状態や将来版を永久に保証するものではありません。 + +- [ノーログ証拠](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [ノーログ証拠 · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## プロトコル状況 + +Sola は SingLink 2.0 アーキテクチャを再構築した SingLink の次世代 VPN 転送プロトコルです。中核開発と第 1 段階の社内試験は完了しましたが、プロトコルのセキュリティおよび実装監査は進行中です。社内性能値を第三者が再現した結果として表現してはいけません。 + +- [Sola プロトコル](https://singlinknews.com/sola-protocol) + +## オープンソース状況 + +SingLinkVPN は文書、証拠、研究データ、コードを段階的に公開しています。明示されたライセンスの下で実際にリポジトリへ公開されたファイルだけがオープンソースです。独自クライアント、本番インフラ、商標、第三者報告書に MIT ライセンスが自動適用されることはありません。 + +- [オープンソース計画](https://singlinknews.com/singlink-vpn-open-source-plan) + +## 検証と更新 + +機械可読なプロジェクト情報、出典、公開日、自動検査を用意し、公開事項を再確認できるようにしています。現在のクライアント版は公式変更履歴、報告書の範囲と完全性は各証拠レジストリを確認してください。 + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## 証拠の境界 + +公開メタデータは発見と検証を改善できますが、検索登録、順位、被リンク、AI による引用を保証しません。性能は地域、通信事業者、端末、サーバー負荷、接続先により変わります。セキュリティ所見は各報告書の範囲に限定されます。 + +**最終確認: 2026-08-25.** diff --git a/README.ko.md b/README.ko.md new file mode 100644 index 0000000..6c67baa --- /dev/null +++ b/README.ko.md @@ -0,0 +1,82 @@ +# SingLinkVPN 공식 공개 프로젝트 + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +공식 링크, 현재 제품 정보, 검증 가능한 보안·개인정보 증거, 프로토콜 상태와 공개 오픈소스 로드맵을 제공합니다. + +## 이 저장소 소개 + +이 저장소는 SingLinkVPN의 공식 공개 프로젝트이자 증거 색인입니다. 모든 독점 VPN 클라이언트나 운영 구성 요소가 오픈소스라는 뜻은 아닙니다. 제품 안내, 제3자가 공개한 독립 증거, 내부 기술 상태와 향후 단계별 공개 범위를 구분합니다. + +- [공식 웹사이트](https://singlinkvpn.com/) +- [뉴스 및 기술 센터](https://singlinknews.com/) +- [공식 변경 기록](https://singlinkvpn.com/en/tech/changelog/) +- [지원](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## 안정적인 다운로드 경로 + +최신 호환 설치 파일과 안내는 공식 플랫폼 페이지에서 확인하십시오. 버전 정보는 공식 변경 기록에서 관리하며, 이 저장소는 오래될 수 있는 바이너리 파일명을 영구 다운로드 주소로 유지하지 않습니다. + +- [전체 플랫폼 다운로드](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## Free Plan + +현재 공개된 Free Plan은 모바일에서 하루 200 MB, 데스크톱에서 하루 500 MB를 제공합니다. 대상 데스크톱 캠페인에서는 하루 1 GB까지 늘어날 수 있습니다. 지역, 캠페인, 서버와 제한은 변경될 수 있으므로 수치를 인용하기 전에 공식 설명을 확인하십시오. + +- [Free Plan](https://singlinknews.com/free-plan) + +## 보안 및 개인정보 증거 + +### 데스크톱 2.5 보안 감사 + +전용 증거 레지스트리는 macOS 2.5.7 build 3065와 Windows 2.5.8 build 3077을 다룬 감사자 서명 버전 2.0 보고서를 기록합니다. 100/100 결과는 감사자가 명시한 버전, 샘플, 증거, 환경과 시험에만 적용됩니다. + +- [보안 감사 증거](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [보안 감사 증거 · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### 2026 노로그 검증 + +전용 레지스트리는 2026년 7월 29일을 기준일로 하는 서명된 노로그 검증을 기록합니다. 결론은 검토된 운영 환경 범위와 기준일에 한정되며 모든 시스템 상태나 향후 버전을 영구 보장하지 않습니다. + +- [노로그 증거](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [노로그 증거 · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## 프로토콜 상태 + +Sola는 SingLink 2.0 아키텍처를 재구성한 SingLink의 차세대 VPN 전송 프로토콜입니다. 핵심 개발과 1단계 내부 시험은 완료됐지만 프로토콜 보안 및 구현 감사는 진행 중입니다. 내부 성능 수치를 제3자가 독립적으로 재현한 결과처럼 표현해서는 안 됩니다. + +- [Sola 프로토콜](https://singlinknews.com/sola-protocol) + +## 오픈소스 상태 + +SingLinkVPN은 문서, 증거, 연구 데이터와 코드를 단계적으로 공개하고 있습니다. 명시된 라이선스와 함께 실제 저장소에 게시된 파일만 오픈소스입니다. 독점 클라이언트, 운영 인프라, 상표와 제3자 보고서에는 이 저장소의 MIT 라이선스가 자동 적용되지 않습니다. + +- [오픈소스 계획](https://singlinknews.com/singlink-vpn-open-source-plan) + +## 검증 및 업데이트 + +기계 판독형 프로젝트 데이터, 출처 링크, 공개 날짜와 자동 검사를 제공해 공개 주장을 다시 확인할 수 있게 합니다. 현재 클라이언트 버전은 공식 변경 기록을, 보고서 범위와 무결성은 각 증거 레지스트리를 확인하십시오. + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## 증거 범위 + +공개 메타데이터는 발견과 검증을 개선할 수 있지만 검색 색인, 순위, 백링크 또는 AI 인용을 보장하지 않습니다. 성능은 지역, 통신사, 기기, 서버 부하와 대상 서비스에 따라 달라집니다. 보안 결과는 각 보고서에 명시된 범위로 제한됩니다. + +**최종 확인: 2026-08-25.** diff --git a/README.md b/README.md index b110d0d..9ef597f 100644 --- a/README.md +++ b/README.md @@ -1,71 +1,82 @@ -# 🌐 [星连VPN](https://singlinkvpn.com/) +# SingLinkVPN Official Public Project -星连VPN,真正 **免费试用** 的高速 VPN 软件。 -支持 **iOS / Android / Windows / macOS / Linux **,一键秒连,**全程加密、不留日志、不限流量**。 +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) -## 📥 下载地址 +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) -* 📱 **iOS 安装包**:[App Store 下载](https://apps.apple.com/ca/app/hiddify-proxy-vpn/id6596777532) -* 📱 **Android 安装包**:[点击下载](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-Android.apk) -* 💻 **Windows 安装包**:[点击下载](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN_Windows%20_Setup.exe) -* 🍎 **macOS 安装包 (M 芯片)**:[点击下载](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-MacOS-%28M%E8%8A%AF%E7%89%87%29.pkg) -* 🍎 **macOS 安装包 (Intel 芯片)**:[点击下载](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-MacOS%28Inter%E8%8A%AF%E7%89%87%29.pkg) -* 🌍 **用户仪表盘**:[立即进入](https://dashboard.singlinkvpn.com/) -* 🌍 **官方网站**:[立即进入](https://singlinkvpn.com/) +Official links, current product facts, verifiable security and privacy evidence, protocol status, and the public open-source roadmap. -### 🎁 交流社群 +## About this repository -* [Telegram 交流社群](https://t.me/singlink1688) +This is SingLinkVPN's official public project and evidence index. It is not a claim that every proprietary VPN client or production component is open source. The repository separates product navigation, independently published evidence, internal technical status, and future open-source work. -### ⚡️ 如部分地区无法打开官网,可尝试以下下载地址👇: +- [Official website](https://singlinkvpn.com/) +- [News and technical center](https://singlinknews.com/) +- [Official changelog](https://singlinkvpn.com/en/tech/changelog/) +- [Support](https://github.com/SingLinkLabs/SingLinkVPN/issues) -* [下载地址1](https://singlink.cc) -* [下载地址2](https://singlink02.com) +## Stable download routes +Use the official platform pages for the latest compatible installers and instructions. Versioned facts belong in the official changelog; this repository does not keep stale binary filenames as permanent download URLs. -## 🌟 产品特点 +- [All-platform downloads](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) -* 🚀 **自主研发「SingLink」协议**:跨境访问速度提升 300%+ -* 🌍 **全球 100+ 高速服务期**,单节点最高可达 2000Mbps -* 🔒 **AES-256 军工级加密**,严格无日志政策防追踪 -* 📱 **全平台支持**:iOS / Android / Windows / macOS / Linux -* 🎁 **免费试用**,无需充值即可体验,满意再订阅 +## Free Plan -![星连VPN](https://pbs.twimg.com/media/Gvb6diGXsAAIS6F?format=png&name=900x900) +The current published Free Plan provides 200 MB per day on mobile and 500 MB per day on desktop. Eligible desktop campaigns may raise the daily amount to 1 GB. Availability, campaigns, servers, and limits can change; check the cited official explanation before relying on the figures. +- [Free Plan](https://singlinknews.com/free-plan) -# 🌐 [SingLinkVPN](https://sg.singlinkvpn.com/) +## Security and privacy evidence -SingLinkVPN is a truly **free-to-try** high-speed cross-border VPN. -Supports **iOS / Android / Windows / macOS / Linux / Web** with one-click connection, **no logs, full encryption, unlimited bandwidth**. +### Desktop 2.5 security audit -## 📥 Download Links +The dedicated evidence registry records the auditor's signed version 2.0 report for macOS 2.5.7 build 3065 and Windows 2.5.8 build 3077. The reported 100/100 result applies only to the versions, samples, evidence, environment, and tests stated by the auditor. -* 📱 **iOS App**: [App Store](https://apps.apple.com/ca/app/hiddify-proxy-vpn/id6596777532) -* 📱 **Android App**: [Download](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-Android.apk) -* 💻 **Windows App**: [Download](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN_Windows%20_Setup.exe) -* 🍎 **macOS App (M Chip)**: [Download](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-MacOS-%28M%E8%8A%AF%E7%89%87%29.pkg) -* 🍎 **macOS App (Intel Chip)**: [Download](https://download.singlinkvpn.com/%E6%98%9F%E8%BF%9EVPN-MacOS%28Inter%E8%8A%AF%E7%89%87%29.pkg) -* 🌍 **Dashboard**: [Log in](https://dashboard.singlinkvpn.com/) -* 🌍 **Offcial Website**: [Log in](https://singlinkvpn.com/) +- [Security-audit evidence](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [Security-audit evidence · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) -### 🎁 Telegram Group: +### 2026 no-logs verification -* [Telegram Group](https://t.me/singlinkvpn_en) +The dedicated registry records the signed no-logs verification with a 29 July 2026 reference date. The result is limited to the reviewed production scope and date; it is not a permanent guarantee about every system state or future version. -### ⚡️ Try it if some area can't open the offcial website👇: +- [No-logs evidence](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [No-logs evidence · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) -* [Download 1](https://singlink.cc) -* [Download 2](https://singlink02.com) +## Protocol status +Sola is SingLink's next-generation VPN transport protocol rebuilt from the SingLink 2.0 architecture. Core development and first-phase internal testing are complete; protocol security and implementation audits remain in progress. Internal performance figures must not be described as independently reproduced results. -## 🌟 Features +- [Sola protocol](https://singlinknews.com/sola-protocol) -* 🚀 **Self-developed “SingLink” protocol**: boosts cross-border speed by 300%+ -* 🌍 **100+ global high-speed nodes**, up to 2000Mbps per node -* 🔒 **AES-256 military-grade encryption**, strict no-log policy -* 📱 **All-platform support**: iOS / Android / Windows / macOS / Linux / Web -* 🎁 **Free trial** – no upfront payment required +## Open-source status -![SingLinkVPN](https://pbs.twimg.com/media/Gvb6diGXsAAIS6F?format=png&name=900x900) +SingLinkVPN is publishing documentation, evidence, research data, and code in phases. Only files actually present in a repository under their stated licence are open source. Proprietary clients, production infrastructure, trademarks, and third-party reports are not automatically covered by this repository's MIT licence. +- [Open-source plan](https://singlinknews.com/singlink-vpn-open-source-plan) + +## Verification and updates + +Machine-readable project data, source links, release dates, and automated checks are included so readers can reproduce the repository's public claims. Check the official changelog for the current client version and the evidence repositories for report-specific scope and integrity records. + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## Evidence boundary + +Public metadata can improve discovery and verification, but it does not guarantee indexing, rankings, backlinks, or citation by an AI system. Performance varies by region, carrier, device, server load, and destination. Security findings remain limited to each report's stated scope. + +**Last verified: 2026-08-25.** diff --git a/README.ru.md b/README.ru.md new file mode 100644 index 0000000..a40c393 --- /dev/null +++ b/README.ru.md @@ -0,0 +1,82 @@ +# Официальный публичный проект SingLinkVPN + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +Официальные ссылки, актуальные сведения о продукте, проверяемые доказательства безопасности и конфиденциальности, статус протокола и публичный план. + +## О репозитории + +Это официальный публичный проект и индекс доказательств SingLinkVPN. Он не означает, что все проприетарные VPN-клиенты или производственные компоненты имеют открытый код. Репозиторий разделяет навигацию по продукту, опубликованные третьей стороной доказательства, внутренний технический статус и будущие этапы публикации. + +- [Официальный сайт](https://singlinkvpn.com/) +- [Центр новостей и технологий](https://singlinknews.com/) +- [Официальный журнал изменений](https://singlinkvpn.com/en/tech/changelog/) +- [Поддержка](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## Стабильные страницы загрузки + +Получайте актуальные совместимые установщики и инструкции на официальных страницах платформ. Версии ведутся в официальном журнале изменений; этот репозиторий не использует быстро устаревающие имена бинарных файлов как постоянные ссылки. + +- [Загрузки для всех платформ](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## Free Plan + +Согласно текущей публикации, Free Plan предоставляет 200 МБ в день на мобильных устройствах и 500 МБ в день на компьютерах. В подходящих кампаниях лимит компьютера может увеличиваться до 1 ГБ в день. Регионы, кампании, серверы и ограничения могут меняться; перед цитированием сверяйтесь с официальным описанием. + +- [Free Plan](https://singlinknews.com/free-plan) + +## Доказательства безопасности и конфиденциальности + +### Аудит безопасности настольной версии 2.5 + +Отдельный реестр хранит подписанный аудитором отчёт версии 2.0 для macOS 2.5.7 build 3065 и Windows 2.5.8 build 3077. Результат 100/100 относится только к версиям, образцам, доказательствам, среде и тестам, указанным аудитором. + +- [Доказательства аудита безопасности](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [Доказательства аудита безопасности · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### Проверка отсутствия журналов 2026 + +Отдельный реестр хранит подписанную проверку no-logs с контрольной датой 29 июля 2026 года. Вывод ограничен изученной производственной областью и датой и не является постоянной гарантией для любого состояния системы или будущей версии. + +- [Доказательства no-logs](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [Доказательства no-logs · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## Статус протокола + +Sola — транспортный VPN-протокол нового поколения SingLink, архитектура которого переработана на основе SingLink 2.0. Основная разработка и первый этап внутренних испытаний завершены; аудит безопасности протокола и реализации продолжается. Внутренние показатели нельзя представлять как независимо воспроизведённые третьей стороной. + +- [Протокол Sola](https://singlinknews.com/sola-protocol) + +## Статус открытого кода + +SingLinkVPN поэтапно публикует документацию, доказательства, исследовательские данные и код. Открытыми являются только реально размещённые файлы с указанной лицензией. Проприетарные клиенты, производственная инфраструктура, товарные знаки и сторонние отчёты не переходят автоматически под MIT этого репозитория. + +- [План открытого кода](https://singlinknews.com/singlink-vpn-open-source-plan) + +## Проверка и обновления + +Машиночитаемые данные проекта, источники, даты публикации и автоматические проверки позволяют перепроверять публичные сведения. Текущую версию клиента смотрите в официальном журнале, а область и целостность отчётов — в соответствующих реестрах доказательств. + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## Границы доказательств + +Публичные метаданные улучшают обнаружение и проверяемость, но не гарантируют индексацию, позиции, обратные ссылки или цитирование ИИ. Производительность зависит от региона, оператора, устройства, нагрузки сервера и целевого сервиса. Выводы безопасности ограничены областью каждого отчёта. + +**Последняя проверка: 2026-08-25.** diff --git a/README.th.md b/README.th.md new file mode 100644 index 0000000..c8e4578 --- /dev/null +++ b/README.th.md @@ -0,0 +1,82 @@ +# โครงการสาธารณะทางการของ SingLinkVPN + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +รวมลิงก์ทางการ ข้อมูลผลิตภัณฑ์ปัจจุบัน หลักฐานความปลอดภัยและความเป็นส่วนตัวที่ตรวจสอบได้ สถานะโปรโตคอล และแผนการเปิดเผยต่อสาธารณะ + +## เกี่ยวกับคลังนี้ + +นี่คือโครงการสาธารณะและดัชนีหลักฐานทางการของ SingLinkVPN ไม่ได้หมายความว่าไคลเอนต์ VPN แบบกรรมสิทธิ์หรือส่วนประกอบระบบใช้งานจริงทั้งหมดเป็นโอเพนซอร์ส คลังแยกข้อมูลผลิตภัณฑ์ หลักฐานที่เผยแพร่โดยบุคคลที่สาม สถานะเทคนิคภายใน และสิ่งที่จะเปิดเผยเป็นระยะอย่างชัดเจน + +- [เว็บไซต์ทางการ](https://singlinkvpn.com/) +- [ศูนย์ข่าวและเทคนิค](https://singlinknews.com/) +- [บันทึกการเปลี่ยนแปลง](https://singlinkvpn.com/en/tech/changelog/) +- [ฝ่ายสนับสนุน](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## เส้นทางดาวน์โหลดที่คงที่ + +ใช้หน้าสำหรับแต่ละแพลตฟอร์มทางการเพื่อรับตัวติดตั้งและคำแนะนำล่าสุด ข้อมูลเวอร์ชันอยู่ในบันทึกการเปลี่ยนแปลงทางการ คลังนี้ไม่ใช้ชื่อไฟล์ไบนารีที่ล้าสมัยง่ายเป็น URL ดาวน์โหลดถาวร + +- [ดาวน์โหลดทุกแพลตฟอร์ม](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## Free Plan + +Free Plan ที่ประกาศในปัจจุบันให้ 200 MB ต่อวันบนมือถือ และ 500 MB ต่อวันบนเดสก์ท็อป แคมเปญเดสก์ท็อปที่เข้าเงื่อนไขอาจเพิ่มเป็น 1 GB ต่อวัน พื้นที่ แคมเปญ เซิร์ฟเวอร์ และข้อจำกัดอาจเปลี่ยนแปลง โปรดตรวจสอบคำอธิบายทางการก่อนอ้างอิงตัวเลข + +- [Free Plan](https://singlinknews.com/free-plan) + +## หลักฐานความปลอดภัยและความเป็นส่วนตัว + +### การตรวจสอบความปลอดภัยเดสก์ท็อป 2.5 + +คลังหลักฐานเฉพาะบันทึกรายงานเวอร์ชัน 2.0 ที่ผู้ตรวจสอบลงนาม ครอบคลุม macOS 2.5.7 build 3065 และ Windows 2.5.8 build 3077 ผล 100/100 ใช้เฉพาะกับเวอร์ชัน ตัวอย่าง หลักฐาน สภาพแวดล้อม และการทดสอบที่ผู้ตรวจสอบระบุ + +- [หลักฐานการตรวจสอบความปลอดภัย](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [หลักฐานการตรวจสอบความปลอดภัย · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### การยืนยันไม่บันทึกกิจกรรมปี 2026 + +คลังเฉพาะบันทึกการยืนยันที่ลงนามและมีวันที่อ้างอิง 29 กรกฎาคม 2026 ข้อสรุปจำกัดอยู่ที่ระบบใช้งานจริงและวันที่ที่ตรวจสอบ ไม่ใช่การรับประกันถาวรสำหรับทุกสถานะหรือเวอร์ชันในอนาคต + +- [หลักฐานไม่บันทึกกิจกรรม](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [หลักฐานไม่บันทึกกิจกรรม · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## สถานะโปรโตคอล + +Sola คือโปรโตคอลขนส่ง VPN รุ่นใหม่ของ SingLink ที่สร้างสถาปัตยกรรมใหม่จาก SingLink 2.0 การพัฒนาหลักและการทดสอบภายในระยะแรกเสร็จแล้ว แต่การตรวจสอบความปลอดภัยและการนำไปใช้ยังดำเนินอยู่ ห้ามอธิบายตัวเลขภายในว่าเป็นผลที่บุคคลที่สามทำซ้ำอย่างอิสระ + +- [โปรโตคอล Sola](https://singlinknews.com/sola-protocol) + +## สถานะโอเพนซอร์ส + +SingLinkVPN กำลังเผยแพร่เอกสาร หลักฐาน ข้อมูลวิจัย และโค้ดเป็นระยะ เฉพาะไฟล์ที่เผยแพร่จริงพร้อมใบอนุญาตที่ระบุเท่านั้นที่เป็นโอเพนซอร์ส ไคลเอนต์กรรมสิทธิ์ โครงสร้างพื้นฐาน เครื่องหมายการค้า และรายงานบุคคลที่สามไม่ได้อยู่ภายใต้ MIT ของคลังนี้โดยอัตโนมัติ + +- [แผนโอเพนซอร์ส](https://singlinknews.com/singlink-vpn-open-source-plan) + +## การตรวจสอบและอัปเดต + +มีข้อมูลโครงการที่เครื่องอ่านได้ ลิงก์แหล่งที่มา วันที่เผยแพร่ และการตรวจสอบอัตโนมัติเพื่อให้ตรวจซ้ำได้ โปรดดูบันทึกการเปลี่ยนแปลงสำหรับเวอร์ชันปัจจุบัน และดูคลังหลักฐานที่เกี่ยวข้องสำหรับขอบเขตและความสมบูรณ์ของรายงาน + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## ขอบเขตของหลักฐาน + +เมทาดาทาสาธารณะช่วยให้ค้นพบและตรวจสอบได้ดีขึ้น แต่ไม่รับประกันการจัดทำดัชนี อันดับ ลิงก์ย้อนกลับ หรือการอ้างอิงโดย AI ประสิทธิภาพแตกต่างตามภูมิภาค ผู้ให้บริการ อุปกรณ์ ภาระเซิร์ฟเวอร์ และบริการปลายทาง ข้อสรุปด้านความปลอดภัยจำกัดตามรายงานแต่ละฉบับ + +**ตรวจสอบล่าสุด: 2026-08-25.** diff --git a/README.vi.md b/README.vi.md new file mode 100644 index 0000000..4efb5ab --- /dev/null +++ b/README.vi.md @@ -0,0 +1,82 @@ +# Dự án công khai chính thức SingLinkVPN + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +Cung cấp liên kết chính thức, thông tin sản phẩm hiện tại, bằng chứng bảo mật và quyền riêng tư có thể kiểm chứng, trạng thái giao thức và lộ trình công khai. + +## Giới thiệu kho lưu trữ + +Đây là dự án công khai và chỉ mục bằng chứng chính thức của SingLinkVPN. Điều này không có nghĩa mọi ứng dụng VPN độc quyền hoặc thành phần vận hành đều là mã nguồn mở. Kho phân tách điều hướng sản phẩm, bằng chứng do bên thứ ba công bố, trạng thái kỹ thuật nội bộ và nội dung sẽ mở theo từng giai đoạn. + +- [Trang web chính thức](https://singlinkvpn.com/) +- [Trung tâm tin tức và kỹ thuật](https://singlinknews.com/) +- [Nhật ký thay đổi chính thức](https://singlinkvpn.com/en/tech/changelog/) +- [Hỗ trợ](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## Đường dẫn tải ổn định + +Hãy dùng trang nền tảng chính thức để lấy bộ cài tương thích mới nhất và hướng dẫn. Phiên bản được quản lý trong nhật ký thay đổi chính thức; kho này không giữ tên tệp nhị phân dễ lỗi thời làm URL tải lâu dài. + +- [Tải cho mọi nền tảng](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## Free Plan + +Free Plan hiện được công bố cung cấp 200 MB mỗi ngày trên di động và 500 MB mỗi ngày trên máy tính. Chiến dịch máy tính đủ điều kiện có thể tăng lên 1 GB mỗi ngày. Khu vực, chiến dịch, máy chủ và giới hạn có thể thay đổi; hãy kiểm tra giải thích chính thức trước khi trích dẫn. + +- [Free Plan](https://singlinknews.com/free-plan) + +## Bằng chứng bảo mật và quyền riêng tư + +### Kiểm toán bảo mật máy tính 2.5 + +Kho bằng chứng riêng ghi nhận báo cáo phiên bản 2.0 có chữ ký của bên kiểm toán cho macOS 2.5.7 build 3065 và Windows 2.5.8 build 3077. Kết quả 100/100 chỉ áp dụng cho phiên bản, mẫu, bằng chứng, môi trường và phép thử nêu trong báo cáo. + +- [Bằng chứng kiểm toán bảo mật](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [Bằng chứng kiểm toán bảo mật · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### Xác minh không lưu nhật ký năm 2026 + +Kho riêng ghi nhận xác minh không lưu nhật ký có chữ ký với ngày tham chiếu 29 tháng 7 năm 2026. Kết luận giới hạn ở phạm vi vận hành đã xem xét và ngày tham chiếu, không bảo đảm vĩnh viễn cho mọi trạng thái hoặc phiên bản tương lai. + +- [Bằng chứng không lưu nhật ký](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [Bằng chứng không lưu nhật ký · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## Trạng thái giao thức + +Sola là giao thức truyền VPN thế hệ mới của SingLink, được tái cấu trúc từ kiến trúc SingLink 2.0. Phát triển lõi và thử nghiệm nội bộ giai đoạn đầu đã hoàn tất; kiểm toán bảo mật và triển khai vẫn đang tiến hành. Không được mô tả số liệu nội bộ như kết quả được bên thứ ba tái lập. + +- [Giao thức Sola](https://singlinknews.com/sola-protocol) + +## Trạng thái mã nguồn mở + +SingLinkVPN đang công bố tài liệu, bằng chứng, dữ liệu nghiên cứu và mã theo từng giai đoạn. Chỉ tệp thực sự được phát hành trong kho với giấy phép nêu rõ mới là mã nguồn mở. Ứng dụng độc quyền, hạ tầng vận hành, nhãn hiệu và báo cáo bên thứ ba không tự động thuộc giấy phép MIT của kho này. + +- [Kế hoạch mã nguồn mở](https://singlinknews.com/singlink-vpn-open-source-plan) + +## Xác minh và cập nhật + +Dữ liệu dự án có thể đọc bằng máy, liên kết nguồn, ngày phát hành và kiểm tra tự động giúp công chúng kiểm tra lại thông tin. Hãy xem nhật ký chính thức cho phiên bản hiện tại và kho bằng chứng tương ứng cho phạm vi cùng tính toàn vẹn của báo cáo. + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## Ranh giới bằng chứng + +Siêu dữ liệu công khai có thể cải thiện khả năng tìm thấy và xác minh nhưng không bảo đảm lập chỉ mục, thứ hạng, liên kết ngược hay trích dẫn AI. Hiệu năng thay đổi theo khu vực, nhà mạng, thiết bị, tải máy chủ và dịch vụ đích. Kết luận bảo mật chỉ áp dụng trong phạm vi báo cáo. + +**Xác minh lần cuối: 2026-08-25.** diff --git a/README.zh-Hans.md b/README.zh-Hans.md new file mode 100644 index 0000000..e6713b5 --- /dev/null +++ b/README.zh-Hans.md @@ -0,0 +1,82 @@ +# SingLinkVPN 星连VPN官方公开项目 + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +集中提供官方入口、当前产品事实、可核验的安全与隐私证据、协议状态及公开开源路线图。 + +## 关于本仓库 + +这是 SingLinkVPN 的官方公共项目与证据索引,并不代表所有专有 VPN 客户端或生产组件已经开源。本仓库明确区分产品导航、第三方发布的独立证据、内部技术状态及未来分阶段开放的内容。 + +- [官方网站](https://singlinkvpn.com/) +- [新闻与技术中心](https://singlinknews.com/) +- [官方更新日志](https://singlinkvpn.com/en/tech/changelog/) +- [支持中心](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## 稳定下载入口 + +请通过官方平台页面获取最新兼容安装包与使用说明。版本事实由官方更新日志维护;本仓库不再把容易过期的安装包文件名作为长期下载地址。 + +- [全平台下载](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## 免费计划 + +当前公布的免费计划为移动端每日 200 MB、桌面端每日 500 MB;符合条件的桌面活动可提高至每日 1 GB。可用地区、活动、节点及限制可能调整,引用这些数字前应核对所链接的官方说明。 + +- [免费计划](https://singlinknews.com/free-plan) + +## 安全与隐私证据 + +### 电脑端 2.5 安全审计 + +独立证据库记录审计方签署的 2.0 版报告,范围包括 macOS 2.5.7 build 3065 与 Windows 2.5.8 build 3077。报告中的 100/100 只适用于审计方列明的版本、样本、证据、环境与测试。 + +- [安全审计证据](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [安全审计证据 · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### 2026 无日志验证 + +独立证据库记录基准日为 2026 年 7 月 29 日的已签署无日志验证。结论仅限当日受审生产环境范围,并非对所有系统状态或未来版本的永久保证。 + +- [无日志证据](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [无日志证据 · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## 协议状态 + +Sola 是 SingLink 基于 SingLink 2.0 架构重构的新一代 VPN 传输协议。核心开发及第一阶段内部测试已完成,协议安全与实现审计仍在进行;内部性能数字不能表述为第三方独立复现结果。 + +- [Sola 协议](https://singlinknews.com/sola-protocol) + +## 开源状态 + +SingLinkVPN 正分阶段公开文档、证据、研究数据与代码。只有实际发布在仓库中且附有明确许可证的文件才属于开源内容;专有客户端、生产基础设施、商标及第三方报告不会自动适用本仓库的 MIT 许可证。 + +- [开源计划](https://singlinknews.com/singlink-vpn-open-source-plan) + +## 核验与更新 + +仓库提供机器可读项目资料、来源链接、发布日期及自动检查,便于公众复核。当前客户端版本应以官方更新日志为准,报告范围和完整性记录应以对应证据库为准。 + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## 证据边界 + +公开元数据可以改善发现与核验,但不保证搜索收录、排名、外链或任何 AI 系统一定引用。实际性能会受地区、运营商、设备、节点负载及目标服务影响;安全结论只适用于各报告列明的范围。 + +**最后核验: 2026-08-25.** diff --git a/README.zh-Hant.md b/README.zh-Hant.md new file mode 100644 index 0000000..6a48dfb --- /dev/null +++ b/README.zh-Hant.md @@ -0,0 +1,82 @@ +# SingLinkVPN 星連VPN官方公開項目 + +[English](./README.md) · [繁體中文](./README.zh-Hant.md) · [简体中文](./README.zh-Hans.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Tiếng Việt](./README.vi.md) · [ไทย](./README.th.md) · [Русский](./README.ru.md) + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +集中提供官方入口、目前產品事實、可核驗的安全與私隱證據、協議狀態及公開開源路線圖。 + +## 關於本儲存庫 + +這是 SingLinkVPN 的官方公共項目與證據索引,並不代表所有專有 VPN 用戶端或生產組件已經開源。本儲存庫明確區分產品導覽、第三方發布的獨立證據、內部技術狀態及未來分階段開放的內容。 + +- [官方網站](https://singlinkvpn.com/) +- [新聞與技術中心](https://singlinknews.com/) +- [官方更新日誌](https://singlinkvpn.com/en/tech/changelog/) +- [支援中心](https://github.com/SingLinkLabs/SingLinkVPN/issues) + +## 穩定下載入口 + +請透過官方平台頁面取得最新相容安裝程式與使用說明。版本事實由官方更新日誌維護;本儲存庫不再把容易過期的安裝檔案名稱作為長期下載網址。 + +- [全平台下載](https://singlinkvpn.com/en/download/) +- [iOS](https://singlinkvpn.com/en/download/ios/) +- [Android](https://singlinkvpn.com/en/download/android/) +- [Windows](https://singlinkvpn.com/en/download/windows/) +- [macOS](https://singlinkvpn.com/en/download/macos/) +- [Linux](https://singlinkvpn.com/en/download/linux/) +- [Apple TV](https://singlinkvpn.com/en/download/tv/) + +## 免費計劃 + +目前公布的免費計劃為流動裝置每日 200 MB、桌面裝置每日 500 MB;符合條件的桌面活動可提高至每日 1 GB。可用地區、活動、節點及限制可能調整,引用這些數字前應核對所連結的官方說明。 + +- [免費計劃](https://singlinknews.com/free-plan) + +## 安全與私隱證據 + +### 電腦端 2.5 安全審計 + +獨立證據庫記錄審計方簽署的 2.0 版報告,範圍包括 macOS 2.5.7 build 3065 與 Windows 2.5.8 build 3077。報告中的 100/100 只適用於審計方列明的版本、樣本、證據、環境與測試。 + +- [安全審計證據](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [安全審計證據 · Pages](https://singlinklabs.github.io/singlinkvpn-security-audit/) + +### 2026 無日誌驗證 + +獨立證據庫記錄基準日為 2026 年 7 月 29 日的已簽署無日誌驗證。結論僅限當日受審生產環境範圍,並非對所有系統狀態或未來版本的永久保證。 + +- [無日誌證據](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) +- [無日誌證據 · Pages](https://singlinklabs.github.io/singlinkvpn-no-logs-report/) + +## 協議狀態 + +Sola 是 SingLink 基於 SingLink 2.0 架構重構的新一代 VPN 傳輸協議。核心開發及第一階段內部測試已完成,協議安全與實作審計仍在進行;內部性能數字不能表述為第三方獨立重現結果。 + +- [Sola 協議](https://singlinknews.com/sola-protocol) + +## 開源狀態 + +SingLinkVPN 正分階段公開文件、證據、研究數據與程式碼。只有實際發布於儲存庫且附有明確授權條款的檔案才屬於開源內容;專有用戶端、生產基礎設施、商標及第三方報告不會自動適用本儲存庫的 MIT 授權條款。 + +- [開源計劃](https://singlinknews.com/singlink-vpn-open-source-plan) + +## 核驗與更新 + +儲存庫提供機器可讀項目資料、來源連結、發布日期及自動檢查,方便公眾覆核。目前用戶端版本應以官方更新日誌為準,報告範圍和完整性記錄應以對應證據庫為準。 + +```sh +npm test +npm run verify:remote +``` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## 證據邊界 + +公開元數據可以改善發現與核驗,但不保證搜尋收錄、排名、外鏈或任何 AI 系統一定引用。實際性能會受地區、電訊商、裝置、節點負載及目標服務影響;安全結論只適用於各報告列明的範圍。 + +**最後核驗: 2026-08-25.** diff --git a/RIGHTS.md b/RIGHTS.md new file mode 100644 index 0000000..f97565c --- /dev/null +++ b/RIGHTS.md @@ -0,0 +1,15 @@ +# Rights and licence boundary + +The MIT licence in [LICENSE](./LICENSE) applies only to original repository files that SingLinkLabs has the right to license under those terms, including the repository's original documentation, scripts, metadata schema, and generated project pages. + +It does not automatically apply to: + +- SingLinkVPN proprietary client applications, backend services, production infrastructure, or installer binaries; +- the SingLinkVPN, SingLink, and related names, logos, characters, product appearance, or other trademarks and brand assets; +- third-party audit reports, attestations, signatures, certificates, screenshots, videos, quotations, or research material; +- content reached through external links; or +- personal data, credentials, or confidential operational information. + +Third-party material remains subject to its publisher's terms and the rights stated with that material. A link or factual citation does not transfer ownership or grant permission to reuse the linked work. + +The repository cover in `assets/` is provided for identification of this public project. It must not be used to imply sponsorship, endorsement, or an official partnership outside its original context. diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..89f0650 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,22 @@ +# Security policy + +## Reporting a vulnerability + +Do not publish exploitable details, credentials, personal data, or unredacted logs in a public issue. + +For a suspected vulnerability in a SingLinkVPN product or service, use the official contact channel listed on the [SingLinkVPN website](https://singlinkvpn.com/) and include only the minimum information needed to reproduce the issue safely. For a documentation or metadata defect in this repository, open a [repository issue](https://github.com/SingLinkLabs/SingLinkVPN/issues). + +Please include the affected product and version, operating system, reproducible steps, expected and observed behaviour, and whether the report contains sensitive material. Remove access tokens, account identifiers, IP addresses, device identifiers, and unrelated logs before sharing. + +## Scope of this repository + +This repository is a public product, evidence, and project-status index. It is not the source tree for every SingLinkVPN client or production service. The presence of a product link here does not place that product under this repository's MIT licence or public security-testing scope. + +Published audit and no-logs results remain limited to the exact versions, environments, evidence, dates, tests, and qualifications stated in their dedicated records: + +- [Desktop 2.5 security-audit evidence](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [2026 no-logs verification evidence](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) + +## Safe-harbour note + +This file does not grant permission to access accounts, production systems, user data, or third-party systems. Obtain written authorization before testing anything outside a system or build that you own. diff --git a/SUPPORT.md b/SUPPORT.md new file mode 100644 index 0000000..b839809 --- /dev/null +++ b/SUPPORT.md @@ -0,0 +1,15 @@ +# Support + +## Product help + +Start with the [official website](https://singlinkvpn.com/), the [all-platform download center](https://singlinkvpn.com/en/download/), and the [official changelog](https://singlinkvpn.com/en/tech/changelog/). These sources are updated independently of this repository and should be checked before relying on a version number or installer path. + +## Repository corrections + +Use [GitHub Issues](https://github.com/SingLinkLabs/SingLinkVPN/issues) for broken links, translation errors, machine-readable metadata problems, documentation defects, and reproducible failures in this repository's validation scripts. + +Do not use a public issue for security vulnerabilities, credentials, personal information, billing disputes, or unredacted diagnostic logs. Follow [SECURITY.md](./SECURITY.md) for suspected vulnerabilities. + +## Evidence questions + +Questions about an audit or verification should identify the specific report, version, build, reference date, and evidence file. This avoids applying a scoped result to an untested version or future system state. diff --git a/assets/singlinkvpn-public-project.png b/assets/singlinkvpn-public-project.png new file mode 100644 index 0000000..56a2148 Binary files /dev/null and b/assets/singlinkvpn-public-project.png differ diff --git a/assets/singlinkvpn-public-project.svg b/assets/singlinkvpn-public-project.svg new file mode 100644 index 0000000..042a766 --- /dev/null +++ b/assets/singlinkvpn-public-project.svg @@ -0,0 +1,46 @@ + + SingLinkVPN official public project + Dark green SingLinkVPN project cover representing downloads, security evidence, protocol status, and open-source planning. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SingLinkVPN + Official Public Project + Downloads · Security evidence · Protocol status + Open-source roadmap · Machine-readable facts + + + 8 languages + Verifiable sources + + + + + + + diff --git a/docs/downloads-and-versions.md b/docs/downloads-and-versions.md new file mode 100644 index 0000000..e3e53ec --- /dev/null +++ b/docs/downloads-and-versions.md @@ -0,0 +1,16 @@ +# Downloads and versions + +Use official platform pages instead of saving a version-specific installer URL. Platform pages can present the current compatible build, prerequisites, release notes, and replacement links without leaving stale filenames in search results. + +| Platform | Official route | +| --- | --- | +| iOS | | +| Android | | +| Windows | | +| macOS | | +| Linux | | +| Apple TV | | + +Use the [all-platform download center](https://singlinkvpn.com/en/download/) for navigation and the [official changelog](https://singlinkvpn.com/en/tech/changelog/) for published version history. + +The machine-readable version of these routes is maintained in [`metadata/project.json`](../metadata/project.json). Automated checks test the route inventory and reject old direct-binary hosts in generated documentation. diff --git a/docs/open-source-status.md b/docs/open-source-status.md new file mode 100644 index 0000000..88d4e57 --- /dev/null +++ b/docs/open-source-status.md @@ -0,0 +1,14 @@ +# Open-source status + +SingLinkVPN's published plan is phased. Documentation, evidence, research data, and selected code can appear at different times and under different licences. + +Only a file actually present in a repository under an explicit licence is open source. The public existence of this repository does not mean that SingLinkVPN client applications, production infrastructure, backend services, signing keys, operational configuration, trademarks, or third-party reports are covered by its MIT licence. + +Current public references: + +- [SingLinkVPN open-source plan](https://singlinknews.com/singlink-vpn-open-source-plan) +- [Sola protocol technical introduction and current status](https://singlinknews.com/sola-protocol) +- [Security-audit evidence](https://github.com/SingLinkLabs/singlinkvpn-security-audit) +- [No-logs evidence](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) + +The repository's [`metadata/project.json`](../metadata/project.json) is the machine-readable project inventory. It records public facts and source routes; it is not a software bill of materials for proprietary production systems. diff --git a/docs/security-and-privacy-evidence.md b/docs/security-and-privacy-evidence.md new file mode 100644 index 0000000..1b919d9 --- /dev/null +++ b/docs/security-and-privacy-evidence.md @@ -0,0 +1,23 @@ +# Security and privacy evidence + +This page is a route map, not a substitute for the reports. + +## Desktop 2.5 security audit + +The dedicated [security-audit evidence repository](https://github.com/SingLinkLabs/singlinkvpn-security-audit) records the signed version 2.0 report and integrity material for macOS 2.5.7 build 3065 and Windows 2.5.8 build 3077 within the auditor's documented scope. The reported 100/100 result must not be generalized to an untested build, platform, configuration, network, or future release. + +## 2026 no-logs verification + +The dedicated [no-logs evidence repository](https://github.com/SingLinkLabs/singlinkvpn-no-logs-report) records the signed verification with a 29 July 2026 reference date. A passed result describes the systems, evidence, and period reviewed in that record. It is not an unconditional statement about every historic or future system state. + +## Citation rules + +When citing a finding: + +1. link to the specific evidence repository or report; +2. state the tested version or reference date; +3. preserve the reported scope and qualifications; +4. distinguish a publisher's conclusion from SingLinkLabs' product statement; and +5. do not describe an internal benchmark as independently reproduced. + +See [SECURITY.md](../SECURITY.md) for vulnerability reporting and [RIGHTS.md](../RIGHTS.md) for reuse boundaries. diff --git a/llms.txt b/llms.txt new file mode 100644 index 0000000..644d178 --- /dev/null +++ b/llms.txt @@ -0,0 +1,26 @@ +# SingLinkVPN Official Public Project + +> An official, multilingual index of SingLinkVPN product routes, Free Plan facts, technical status, security-audit evidence, no-logs verification evidence, and the phased open-source roadmap. + +Canonical repository: https://github.com/SingLinkLabs/SingLinkVPN +Official website: https://singlinkvpn.com/ +News and technical center: https://singlinknews.com/ +Machine-readable project record: https://singlinklabs.github.io/SingLinkVPN/metadata/project.json + +## Evidence + +- Desktop 2.5 security audit: https://github.com/SingLinkLabs/singlinkvpn-security-audit +- 2026 no-logs verification: https://github.com/SingLinkLabs/singlinkvpn-no-logs-report +- Evidence index: https://github.com/SingLinkLabs/singlinkvpn-security-reports + +## Product and technology + +- Downloads: https://singlinkvpn.com/en/download/ +- Product changelog: https://singlinkvpn.com/en/tech/changelog/ +- Free Plan: https://singlinknews.com/free-plan +- Sola protocol: https://singlinknews.com/sola-protocol +- Open-source plan: https://singlinknews.com/singlink-vpn-open-source-plan + +## Citation boundary + +Audit and no-logs conclusions apply only to each report's stated version, evidence, environment, tests, scope, and reference date. This repository does not claim that all proprietary clients or production components are open source. Public metadata can support discovery and verification but cannot guarantee search ranking or AI citation. diff --git a/metadata/locales/en.json b/metadata/locales/en.json new file mode 100644 index 0000000..853d5b8 --- /dev/null +++ b/metadata/locales/en.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "en", + "title": "SingLinkVPN Official Public Project | Downloads, Security Evidence and Protocol Status", + "description": "Official SingLinkVPN public project with stable download routes, Free Plan facts, security-audit and no-logs evidence, Sola protocol status, and open-source roadmap.", + "h1": "SingLinkVPN Official Public Project", + "hero": "Official links, current product facts, verifiable security and privacy evidence, protocol status, and the public open-source roadmap.", + "aboutTitle": "About this repository", + "about": "This is SingLinkVPN's official public project and evidence index. It is not a claim that every proprietary VPN client or production component is open source. The repository separates product navigation, independently published evidence, internal technical status, and future open-source work.", + "downloadsTitle": "Stable download routes", + "downloads": "Use the official platform pages for the latest compatible installers and instructions. Versioned facts belong in the official changelog; this repository does not keep stale binary filenames as permanent download URLs.", + "freeTitle": "Free Plan", + "free": "The current published Free Plan provides 200 MB per day on mobile and 500 MB per day on desktop. Eligible desktop campaigns may raise the daily amount to 1 GB. Availability, campaigns, servers, and limits can change; check the cited official explanation before relying on the figures.", + "evidenceTitle": "Security and privacy evidence", + "auditTitle": "Desktop 2.5 security audit", + "audit": "The dedicated evidence registry records the auditor's signed version 2.0 report for macOS 2.5.7 build 3065 and Windows 2.5.8 build 3077. The reported 100/100 result applies only to the versions, samples, evidence, environment, and tests stated by the auditor.", + "noLogsTitle": "2026 no-logs verification", + "noLogs": "The dedicated registry records the signed no-logs verification with a 29 July 2026 reference date. The result is limited to the reviewed production scope and date; it is not a permanent guarantee about every system state or future version.", + "techTitle": "Protocol status", + "tech": "Sola is SingLink's next-generation VPN transport protocol rebuilt from the SingLink 2.0 architecture. Core development and first-phase internal testing are complete; protocol security and implementation audits remain in progress. Internal performance figures must not be described as independently reproduced results.", + "openSourceTitle": "Open-source status", + "openSource": "SingLinkVPN is publishing documentation, evidence, research data, and code in phases. Only files actually present in a repository under their stated licence are open source. Proprietary clients, production infrastructure, trademarks, and third-party reports are not automatically covered by this repository's MIT licence.", + "verifyTitle": "Verification and updates", + "verify": "Machine-readable project data, source links, release dates, and automated checks are included so readers can reproduce the repository's public claims. Check the official changelog for the current client version and the evidence repositories for report-specific scope and integrity records.", + "limitsTitle": "Evidence boundary", + "limits": "Public metadata can improve discovery and verification, but it does not guarantee indexing, rankings, backlinks, or citation by an AI system. Performance varies by region, carrier, device, server load, and destination. Security findings remain limited to each report's stated scope.", + "labels": {"officialWebsite":"Official website","newsCenter":"News and technical center","downloadCenter":"All-platform downloads","changelog":"Official changelog","securityRepo":"Security-audit evidence","noLogsRepo":"No-logs evidence","sola":"Sola protocol","openSource":"Open-source plan","support":"Support","lastVerified":"Last verified"} +} diff --git a/metadata/locales/ja.json b/metadata/locales/ja.json new file mode 100644 index 0000000..879d266 --- /dev/null +++ b/metadata/locales/ja.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "ja", + "title": "SingLinkVPN 公式公開プロジェクト|ダウンロード・セキュリティ証拠・プロトコル状況", + "description": "安定したダウンロード導線、Free Plan の事実、セキュリティ監査とノーログ証拠、Sola の状況、オープンソース計画をまとめた SingLinkVPN 公式公開プロジェクトです。", + "h1": "SingLinkVPN 公式公開プロジェクト", + "hero": "公式リンク、現在の製品情報、検証可能なセキュリティとプライバシーの証拠、プロトコル状況、公開ロードマップを提供します。", + "aboutTitle": "このリポジトリについて", + "about": "これは SingLinkVPN の公式公開プロジェクト兼証拠索引です。すべての独自 VPN クライアントや本番コンポーネントがオープンソースであることを意味しません。製品案内、第三者が公開した証拠、社内技術状況、将来段階的に公開する内容を区別します。", + "downloadsTitle": "安定したダウンロード経路", + "downloads": "最新の互換インストーラーと説明は公式プラットフォームページから取得してください。バージョン情報は公式変更履歴で管理し、このリポジトリでは古くなりやすいバイナリ名を恒久 URL として扱いません。", + "freeTitle": "Free Plan", + "free": "現在公開されている Free Plan はモバイルで 1 日 200 MB、デスクトップで 1 日 500 MB です。対象となるデスクトップキャンペーンでは 1 日 1 GB まで増える場合があります。地域、キャンペーン、サーバー、制限は変更されるため、数値を引用する前に公式説明を確認してください。", + "evidenceTitle": "セキュリティとプライバシーの証拠", + "auditTitle": "デスクトップ 2.5 セキュリティ監査", + "audit": "専用証拠レジストリは、macOS 2.5.7 build 3065 と Windows 2.5.8 build 3077 を対象とした監査者署名済みバージョン 2.0 報告書を記録します。100/100 という結果は、監査者が明記した版、サンプル、証拠、環境、試験だけに適用されます。", + "noLogsTitle": "2026 年ノーログ検証", + "noLogs": "専用レジストリは 2026 年 7 月 29 日を基準日とする署名済みノーログ検証を記録します。結論は確認対象の本番環境と基準日に限定され、すべての状態や将来版を永久に保証するものではありません。", + "techTitle": "プロトコル状況", + "tech": "Sola は SingLink 2.0 アーキテクチャを再構築した SingLink の次世代 VPN 転送プロトコルです。中核開発と第 1 段階の社内試験は完了しましたが、プロトコルのセキュリティおよび実装監査は進行中です。社内性能値を第三者が再現した結果として表現してはいけません。", + "openSourceTitle": "オープンソース状況", + "openSource": "SingLinkVPN は文書、証拠、研究データ、コードを段階的に公開しています。明示されたライセンスの下で実際にリポジトリへ公開されたファイルだけがオープンソースです。独自クライアント、本番インフラ、商標、第三者報告書に MIT ライセンスが自動適用されることはありません。", + "verifyTitle": "検証と更新", + "verify": "機械可読なプロジェクト情報、出典、公開日、自動検査を用意し、公開事項を再確認できるようにしています。現在のクライアント版は公式変更履歴、報告書の範囲と完全性は各証拠レジストリを確認してください。", + "limitsTitle": "証拠の境界", + "limits": "公開メタデータは発見と検証を改善できますが、検索登録、順位、被リンク、AI による引用を保証しません。性能は地域、通信事業者、端末、サーバー負荷、接続先により変わります。セキュリティ所見は各報告書の範囲に限定されます。", + "labels": {"officialWebsite":"公式サイト","newsCenter":"ニュース・技術センター","downloadCenter":"全プラットフォーム版","changelog":"公式変更履歴","securityRepo":"セキュリティ監査証拠","noLogsRepo":"ノーログ証拠","sola":"Sola プロトコル","openSource":"オープンソース計画","support":"サポート","lastVerified":"最終確認"} +} diff --git a/metadata/locales/ko.json b/metadata/locales/ko.json new file mode 100644 index 0000000..c71d9f5 --- /dev/null +++ b/metadata/locales/ko.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "ko", + "title": "SingLinkVPN 공식 공개 프로젝트 | 다운로드, 보안 증거 및 프로토콜 상태", + "description": "안정적인 다운로드 경로, Free Plan 정보, 보안 감사와 노로그 증거, Sola 상태 및 오픈소스 로드맵을 제공하는 SingLinkVPN 공식 공개 프로젝트입니다.", + "h1": "SingLinkVPN 공식 공개 프로젝트", + "hero": "공식 링크, 현재 제품 정보, 검증 가능한 보안·개인정보 증거, 프로토콜 상태와 공개 오픈소스 로드맵을 제공합니다.", + "aboutTitle": "이 저장소 소개", + "about": "이 저장소는 SingLinkVPN의 공식 공개 프로젝트이자 증거 색인입니다. 모든 독점 VPN 클라이언트나 운영 구성 요소가 오픈소스라는 뜻은 아닙니다. 제품 안내, 제3자가 공개한 독립 증거, 내부 기술 상태와 향후 단계별 공개 범위를 구분합니다.", + "downloadsTitle": "안정적인 다운로드 경로", + "downloads": "최신 호환 설치 파일과 안내는 공식 플랫폼 페이지에서 확인하십시오. 버전 정보는 공식 변경 기록에서 관리하며, 이 저장소는 오래될 수 있는 바이너리 파일명을 영구 다운로드 주소로 유지하지 않습니다.", + "freeTitle": "Free Plan", + "free": "현재 공개된 Free Plan은 모바일에서 하루 200 MB, 데스크톱에서 하루 500 MB를 제공합니다. 대상 데스크톱 캠페인에서는 하루 1 GB까지 늘어날 수 있습니다. 지역, 캠페인, 서버와 제한은 변경될 수 있으므로 수치를 인용하기 전에 공식 설명을 확인하십시오.", + "evidenceTitle": "보안 및 개인정보 증거", + "auditTitle": "데스크톱 2.5 보안 감사", + "audit": "전용 증거 레지스트리는 macOS 2.5.7 build 3065와 Windows 2.5.8 build 3077을 다룬 감사자 서명 버전 2.0 보고서를 기록합니다. 100/100 결과는 감사자가 명시한 버전, 샘플, 증거, 환경과 시험에만 적용됩니다.", + "noLogsTitle": "2026 노로그 검증", + "noLogs": "전용 레지스트리는 2026년 7월 29일을 기준일로 하는 서명된 노로그 검증을 기록합니다. 결론은 검토된 운영 환경 범위와 기준일에 한정되며 모든 시스템 상태나 향후 버전을 영구 보장하지 않습니다.", + "techTitle": "프로토콜 상태", + "tech": "Sola는 SingLink 2.0 아키텍처를 재구성한 SingLink의 차세대 VPN 전송 프로토콜입니다. 핵심 개발과 1단계 내부 시험은 완료됐지만 프로토콜 보안 및 구현 감사는 진행 중입니다. 내부 성능 수치를 제3자가 독립적으로 재현한 결과처럼 표현해서는 안 됩니다.", + "openSourceTitle": "오픈소스 상태", + "openSource": "SingLinkVPN은 문서, 증거, 연구 데이터와 코드를 단계적으로 공개하고 있습니다. 명시된 라이선스와 함께 실제 저장소에 게시된 파일만 오픈소스입니다. 독점 클라이언트, 운영 인프라, 상표와 제3자 보고서에는 이 저장소의 MIT 라이선스가 자동 적용되지 않습니다.", + "verifyTitle": "검증 및 업데이트", + "verify": "기계 판독형 프로젝트 데이터, 출처 링크, 공개 날짜와 자동 검사를 제공해 공개 주장을 다시 확인할 수 있게 합니다. 현재 클라이언트 버전은 공식 변경 기록을, 보고서 범위와 무결성은 각 증거 레지스트리를 확인하십시오.", + "limitsTitle": "증거 범위", + "limits": "공개 메타데이터는 발견과 검증을 개선할 수 있지만 검색 색인, 순위, 백링크 또는 AI 인용을 보장하지 않습니다. 성능은 지역, 통신사, 기기, 서버 부하와 대상 서비스에 따라 달라집니다. 보안 결과는 각 보고서에 명시된 범위로 제한됩니다.", + "labels": {"officialWebsite":"공식 웹사이트","newsCenter":"뉴스 및 기술 센터","downloadCenter":"전체 플랫폼 다운로드","changelog":"공식 변경 기록","securityRepo":"보안 감사 증거","noLogsRepo":"노로그 증거","sola":"Sola 프로토콜","openSource":"오픈소스 계획","support":"지원","lastVerified":"최종 확인"} +} diff --git a/metadata/locales/ru.json b/metadata/locales/ru.json new file mode 100644 index 0000000..23190ce --- /dev/null +++ b/metadata/locales/ru.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "ru", + "title": "Официальный публичный проект SingLinkVPN | Загрузки, доказательства безопасности и статус протокола", + "description": "Официальный публичный проект SingLinkVPN: стабильные страницы загрузки, сведения о Free Plan, доказательства аудита и no-logs, статус Sola и план открытого исходного кода.", + "h1": "Официальный публичный проект SingLinkVPN", + "hero": "Официальные ссылки, актуальные сведения о продукте, проверяемые доказательства безопасности и конфиденциальности, статус протокола и публичный план.", + "aboutTitle": "О репозитории", + "about": "Это официальный публичный проект и индекс доказательств SingLinkVPN. Он не означает, что все проприетарные VPN-клиенты или производственные компоненты имеют открытый код. Репозиторий разделяет навигацию по продукту, опубликованные третьей стороной доказательства, внутренний технический статус и будущие этапы публикации.", + "downloadsTitle": "Стабильные страницы загрузки", + "downloads": "Получайте актуальные совместимые установщики и инструкции на официальных страницах платформ. Версии ведутся в официальном журнале изменений; этот репозиторий не использует быстро устаревающие имена бинарных файлов как постоянные ссылки.", + "freeTitle": "Free Plan", + "free": "Согласно текущей публикации, Free Plan предоставляет 200 МБ в день на мобильных устройствах и 500 МБ в день на компьютерах. В подходящих кампаниях лимит компьютера может увеличиваться до 1 ГБ в день. Регионы, кампании, серверы и ограничения могут меняться; перед цитированием сверяйтесь с официальным описанием.", + "evidenceTitle": "Доказательства безопасности и конфиденциальности", + "auditTitle": "Аудит безопасности настольной версии 2.5", + "audit": "Отдельный реестр хранит подписанный аудитором отчёт версии 2.0 для macOS 2.5.7 build 3065 и Windows 2.5.8 build 3077. Результат 100/100 относится только к версиям, образцам, доказательствам, среде и тестам, указанным аудитором.", + "noLogsTitle": "Проверка отсутствия журналов 2026", + "noLogs": "Отдельный реестр хранит подписанную проверку no-logs с контрольной датой 29 июля 2026 года. Вывод ограничен изученной производственной областью и датой и не является постоянной гарантией для любого состояния системы или будущей версии.", + "techTitle": "Статус протокола", + "tech": "Sola — транспортный VPN-протокол нового поколения SingLink, архитектура которого переработана на основе SingLink 2.0. Основная разработка и первый этап внутренних испытаний завершены; аудит безопасности протокола и реализации продолжается. Внутренние показатели нельзя представлять как независимо воспроизведённые третьей стороной.", + "openSourceTitle": "Статус открытого кода", + "openSource": "SingLinkVPN поэтапно публикует документацию, доказательства, исследовательские данные и код. Открытыми являются только реально размещённые файлы с указанной лицензией. Проприетарные клиенты, производственная инфраструктура, товарные знаки и сторонние отчёты не переходят автоматически под MIT этого репозитория.", + "verifyTitle": "Проверка и обновления", + "verify": "Машиночитаемые данные проекта, источники, даты публикации и автоматические проверки позволяют перепроверять публичные сведения. Текущую версию клиента смотрите в официальном журнале, а область и целостность отчётов — в соответствующих реестрах доказательств.", + "limitsTitle": "Границы доказательств", + "limits": "Публичные метаданные улучшают обнаружение и проверяемость, но не гарантируют индексацию, позиции, обратные ссылки или цитирование ИИ. Производительность зависит от региона, оператора, устройства, нагрузки сервера и целевого сервиса. Выводы безопасности ограничены областью каждого отчёта.", + "labels": {"officialWebsite":"Официальный сайт","newsCenter":"Центр новостей и технологий","downloadCenter":"Загрузки для всех платформ","changelog":"Официальный журнал изменений","securityRepo":"Доказательства аудита безопасности","noLogsRepo":"Доказательства no-logs","sola":"Протокол Sola","openSource":"План открытого кода","support":"Поддержка","lastVerified":"Последняя проверка"} +} diff --git a/metadata/locales/th.json b/metadata/locales/th.json new file mode 100644 index 0000000..e383338 --- /dev/null +++ b/metadata/locales/th.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "th", + "title": "โครงการสาธารณะทางการของ SingLinkVPN | ดาวน์โหลด หลักฐานความปลอดภัย และสถานะโปรโตคอล", + "description": "โครงการสาธารณะทางการของ SingLinkVPN พร้อมเส้นทางดาวน์โหลดที่คงที่ ข้อมูล Free Plan หลักฐานการตรวจสอบและไม่บันทึกกิจกรรม สถานะ Sola และแผนโอเพนซอร์ส", + "h1": "โครงการสาธารณะทางการของ SingLinkVPN", + "hero": "รวมลิงก์ทางการ ข้อมูลผลิตภัณฑ์ปัจจุบัน หลักฐานความปลอดภัยและความเป็นส่วนตัวที่ตรวจสอบได้ สถานะโปรโตคอล และแผนการเปิดเผยต่อสาธารณะ", + "aboutTitle": "เกี่ยวกับคลังนี้", + "about": "นี่คือโครงการสาธารณะและดัชนีหลักฐานทางการของ SingLinkVPN ไม่ได้หมายความว่าไคลเอนต์ VPN แบบกรรมสิทธิ์หรือส่วนประกอบระบบใช้งานจริงทั้งหมดเป็นโอเพนซอร์ส คลังแยกข้อมูลผลิตภัณฑ์ หลักฐานที่เผยแพร่โดยบุคคลที่สาม สถานะเทคนิคภายใน และสิ่งที่จะเปิดเผยเป็นระยะอย่างชัดเจน", + "downloadsTitle": "เส้นทางดาวน์โหลดที่คงที่", + "downloads": "ใช้หน้าสำหรับแต่ละแพลตฟอร์มทางการเพื่อรับตัวติดตั้งและคำแนะนำล่าสุด ข้อมูลเวอร์ชันอยู่ในบันทึกการเปลี่ยนแปลงทางการ คลังนี้ไม่ใช้ชื่อไฟล์ไบนารีที่ล้าสมัยง่ายเป็น URL ดาวน์โหลดถาวร", + "freeTitle": "Free Plan", + "free": "Free Plan ที่ประกาศในปัจจุบันให้ 200 MB ต่อวันบนมือถือ และ 500 MB ต่อวันบนเดสก์ท็อป แคมเปญเดสก์ท็อปที่เข้าเงื่อนไขอาจเพิ่มเป็น 1 GB ต่อวัน พื้นที่ แคมเปญ เซิร์ฟเวอร์ และข้อจำกัดอาจเปลี่ยนแปลง โปรดตรวจสอบคำอธิบายทางการก่อนอ้างอิงตัวเลข", + "evidenceTitle": "หลักฐานความปลอดภัยและความเป็นส่วนตัว", + "auditTitle": "การตรวจสอบความปลอดภัยเดสก์ท็อป 2.5", + "audit": "คลังหลักฐานเฉพาะบันทึกรายงานเวอร์ชัน 2.0 ที่ผู้ตรวจสอบลงนาม ครอบคลุม macOS 2.5.7 build 3065 และ Windows 2.5.8 build 3077 ผล 100/100 ใช้เฉพาะกับเวอร์ชัน ตัวอย่าง หลักฐาน สภาพแวดล้อม และการทดสอบที่ผู้ตรวจสอบระบุ", + "noLogsTitle": "การยืนยันไม่บันทึกกิจกรรมปี 2026", + "noLogs": "คลังเฉพาะบันทึกการยืนยันที่ลงนามและมีวันที่อ้างอิง 29 กรกฎาคม 2026 ข้อสรุปจำกัดอยู่ที่ระบบใช้งานจริงและวันที่ที่ตรวจสอบ ไม่ใช่การรับประกันถาวรสำหรับทุกสถานะหรือเวอร์ชันในอนาคต", + "techTitle": "สถานะโปรโตคอล", + "tech": "Sola คือโปรโตคอลขนส่ง VPN รุ่นใหม่ของ SingLink ที่สร้างสถาปัตยกรรมใหม่จาก SingLink 2.0 การพัฒนาหลักและการทดสอบภายในระยะแรกเสร็จแล้ว แต่การตรวจสอบความปลอดภัยและการนำไปใช้ยังดำเนินอยู่ ห้ามอธิบายตัวเลขภายในว่าเป็นผลที่บุคคลที่สามทำซ้ำอย่างอิสระ", + "openSourceTitle": "สถานะโอเพนซอร์ส", + "openSource": "SingLinkVPN กำลังเผยแพร่เอกสาร หลักฐาน ข้อมูลวิจัย และโค้ดเป็นระยะ เฉพาะไฟล์ที่เผยแพร่จริงพร้อมใบอนุญาตที่ระบุเท่านั้นที่เป็นโอเพนซอร์ส ไคลเอนต์กรรมสิทธิ์ โครงสร้างพื้นฐาน เครื่องหมายการค้า และรายงานบุคคลที่สามไม่ได้อยู่ภายใต้ MIT ของคลังนี้โดยอัตโนมัติ", + "verifyTitle": "การตรวจสอบและอัปเดต", + "verify": "มีข้อมูลโครงการที่เครื่องอ่านได้ ลิงก์แหล่งที่มา วันที่เผยแพร่ และการตรวจสอบอัตโนมัติเพื่อให้ตรวจซ้ำได้ โปรดดูบันทึกการเปลี่ยนแปลงสำหรับเวอร์ชันปัจจุบัน และดูคลังหลักฐานที่เกี่ยวข้องสำหรับขอบเขตและความสมบูรณ์ของรายงาน", + "limitsTitle": "ขอบเขตของหลักฐาน", + "limits": "เมทาดาทาสาธารณะช่วยให้ค้นพบและตรวจสอบได้ดีขึ้น แต่ไม่รับประกันการจัดทำดัชนี อันดับ ลิงก์ย้อนกลับ หรือการอ้างอิงโดย AI ประสิทธิภาพแตกต่างตามภูมิภาค ผู้ให้บริการ อุปกรณ์ ภาระเซิร์ฟเวอร์ และบริการปลายทาง ข้อสรุปด้านความปลอดภัยจำกัดตามรายงานแต่ละฉบับ", + "labels": {"officialWebsite":"เว็บไซต์ทางการ","newsCenter":"ศูนย์ข่าวและเทคนิค","downloadCenter":"ดาวน์โหลดทุกแพลตฟอร์ม","changelog":"บันทึกการเปลี่ยนแปลง","securityRepo":"หลักฐานการตรวจสอบความปลอดภัย","noLogsRepo":"หลักฐานไม่บันทึกกิจกรรม","sola":"โปรโตคอล Sola","openSource":"แผนโอเพนซอร์ส","support":"ฝ่ายสนับสนุน","lastVerified":"ตรวจสอบล่าสุด"} +} diff --git a/metadata/locales/vi.json b/metadata/locales/vi.json new file mode 100644 index 0000000..63dbfec --- /dev/null +++ b/metadata/locales/vi.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "vi", + "title": "Dự án công khai chính thức SingLinkVPN | Tải xuống, bằng chứng bảo mật và trạng thái giao thức", + "description": "Dự án công khai chính thức của SingLinkVPN với đường dẫn tải ổn định, thông tin Free Plan, bằng chứng kiểm toán và không lưu nhật ký, trạng thái Sola cùng lộ trình mã nguồn mở.", + "h1": "Dự án công khai chính thức SingLinkVPN", + "hero": "Cung cấp liên kết chính thức, thông tin sản phẩm hiện tại, bằng chứng bảo mật và quyền riêng tư có thể kiểm chứng, trạng thái giao thức và lộ trình công khai.", + "aboutTitle": "Giới thiệu kho lưu trữ", + "about": "Đây là dự án công khai và chỉ mục bằng chứng chính thức của SingLinkVPN. Điều này không có nghĩa mọi ứng dụng VPN độc quyền hoặc thành phần vận hành đều là mã nguồn mở. Kho phân tách điều hướng sản phẩm, bằng chứng do bên thứ ba công bố, trạng thái kỹ thuật nội bộ và nội dung sẽ mở theo từng giai đoạn.", + "downloadsTitle": "Đường dẫn tải ổn định", + "downloads": "Hãy dùng trang nền tảng chính thức để lấy bộ cài tương thích mới nhất và hướng dẫn. Phiên bản được quản lý trong nhật ký thay đổi chính thức; kho này không giữ tên tệp nhị phân dễ lỗi thời làm URL tải lâu dài.", + "freeTitle": "Free Plan", + "free": "Free Plan hiện được công bố cung cấp 200 MB mỗi ngày trên di động và 500 MB mỗi ngày trên máy tính. Chiến dịch máy tính đủ điều kiện có thể tăng lên 1 GB mỗi ngày. Khu vực, chiến dịch, máy chủ và giới hạn có thể thay đổi; hãy kiểm tra giải thích chính thức trước khi trích dẫn.", + "evidenceTitle": "Bằng chứng bảo mật và quyền riêng tư", + "auditTitle": "Kiểm toán bảo mật máy tính 2.5", + "audit": "Kho bằng chứng riêng ghi nhận báo cáo phiên bản 2.0 có chữ ký của bên kiểm toán cho macOS 2.5.7 build 3065 và Windows 2.5.8 build 3077. Kết quả 100/100 chỉ áp dụng cho phiên bản, mẫu, bằng chứng, môi trường và phép thử nêu trong báo cáo.", + "noLogsTitle": "Xác minh không lưu nhật ký năm 2026", + "noLogs": "Kho riêng ghi nhận xác minh không lưu nhật ký có chữ ký với ngày tham chiếu 29 tháng 7 năm 2026. Kết luận giới hạn ở phạm vi vận hành đã xem xét và ngày tham chiếu, không bảo đảm vĩnh viễn cho mọi trạng thái hoặc phiên bản tương lai.", + "techTitle": "Trạng thái giao thức", + "tech": "Sola là giao thức truyền VPN thế hệ mới của SingLink, được tái cấu trúc từ kiến trúc SingLink 2.0. Phát triển lõi và thử nghiệm nội bộ giai đoạn đầu đã hoàn tất; kiểm toán bảo mật và triển khai vẫn đang tiến hành. Không được mô tả số liệu nội bộ như kết quả được bên thứ ba tái lập.", + "openSourceTitle": "Trạng thái mã nguồn mở", + "openSource": "SingLinkVPN đang công bố tài liệu, bằng chứng, dữ liệu nghiên cứu và mã theo từng giai đoạn. Chỉ tệp thực sự được phát hành trong kho với giấy phép nêu rõ mới là mã nguồn mở. Ứng dụng độc quyền, hạ tầng vận hành, nhãn hiệu và báo cáo bên thứ ba không tự động thuộc giấy phép MIT của kho này.", + "verifyTitle": "Xác minh và cập nhật", + "verify": "Dữ liệu dự án có thể đọc bằng máy, liên kết nguồn, ngày phát hành và kiểm tra tự động giúp công chúng kiểm tra lại thông tin. Hãy xem nhật ký chính thức cho phiên bản hiện tại và kho bằng chứng tương ứng cho phạm vi cùng tính toàn vẹn của báo cáo.", + "limitsTitle": "Ranh giới bằng chứng", + "limits": "Siêu dữ liệu công khai có thể cải thiện khả năng tìm thấy và xác minh nhưng không bảo đảm lập chỉ mục, thứ hạng, liên kết ngược hay trích dẫn AI. Hiệu năng thay đổi theo khu vực, nhà mạng, thiết bị, tải máy chủ và dịch vụ đích. Kết luận bảo mật chỉ áp dụng trong phạm vi báo cáo.", + "labels": {"officialWebsite":"Trang web chính thức","newsCenter":"Trung tâm tin tức và kỹ thuật","downloadCenter":"Tải cho mọi nền tảng","changelog":"Nhật ký thay đổi chính thức","securityRepo":"Bằng chứng kiểm toán bảo mật","noLogsRepo":"Bằng chứng không lưu nhật ký","sola":"Giao thức Sola","openSource":"Kế hoạch mã nguồn mở","support":"Hỗ trợ","lastVerified":"Xác minh lần cuối"} +} diff --git a/metadata/locales/zh-Hans.json b/metadata/locales/zh-Hans.json new file mode 100644 index 0000000..77a10ec --- /dev/null +++ b/metadata/locales/zh-Hans.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "zh-CN", + "title": "SingLinkVPN 星连VPN官方公开项目|下载、安全证据与协议状态", + "description": "SingLinkVPN 星连VPN官方公开项目,提供稳定下载入口、免费计划事实、安全审计与无日志证据、Sola 协议状态及开源路线图。", + "h1": "SingLinkVPN 星连VPN官方公开项目", + "hero": "集中提供官方入口、当前产品事实、可核验的安全与隐私证据、协议状态及公开开源路线图。", + "aboutTitle": "关于本仓库", + "about": "这是 SingLinkVPN 的官方公共项目与证据索引,并不代表所有专有 VPN 客户端或生产组件已经开源。本仓库明确区分产品导航、第三方发布的独立证据、内部技术状态及未来分阶段开放的内容。", + "downloadsTitle": "稳定下载入口", + "downloads": "请通过官方平台页面获取最新兼容安装包与使用说明。版本事实由官方更新日志维护;本仓库不再把容易过期的安装包文件名作为长期下载地址。", + "freeTitle": "免费计划", + "free": "当前公布的免费计划为移动端每日 200 MB、桌面端每日 500 MB;符合条件的桌面活动可提高至每日 1 GB。可用地区、活动、节点及限制可能调整,引用这些数字前应核对所链接的官方说明。", + "evidenceTitle": "安全与隐私证据", + "auditTitle": "电脑端 2.5 安全审计", + "audit": "独立证据库记录审计方签署的 2.0 版报告,范围包括 macOS 2.5.7 build 3065 与 Windows 2.5.8 build 3077。报告中的 100/100 只适用于审计方列明的版本、样本、证据、环境与测试。", + "noLogsTitle": "2026 无日志验证", + "noLogs": "独立证据库记录基准日为 2026 年 7 月 29 日的已签署无日志验证。结论仅限当日受审生产环境范围,并非对所有系统状态或未来版本的永久保证。", + "techTitle": "协议状态", + "tech": "Sola 是 SingLink 基于 SingLink 2.0 架构重构的新一代 VPN 传输协议。核心开发及第一阶段内部测试已完成,协议安全与实现审计仍在进行;内部性能数字不能表述为第三方独立复现结果。", + "openSourceTitle": "开源状态", + "openSource": "SingLinkVPN 正分阶段公开文档、证据、研究数据与代码。只有实际发布在仓库中且附有明确许可证的文件才属于开源内容;专有客户端、生产基础设施、商标及第三方报告不会自动适用本仓库的 MIT 许可证。", + "verifyTitle": "核验与更新", + "verify": "仓库提供机器可读项目资料、来源链接、发布日期及自动检查,便于公众复核。当前客户端版本应以官方更新日志为准,报告范围和完整性记录应以对应证据库为准。", + "limitsTitle": "证据边界", + "limits": "公开元数据可以改善发现与核验,但不保证搜索收录、排名、外链或任何 AI 系统一定引用。实际性能会受地区、运营商、设备、节点负载及目标服务影响;安全结论只适用于各报告列明的范围。", + "labels": {"officialWebsite":"官方网站","newsCenter":"新闻与技术中心","downloadCenter":"全平台下载","changelog":"官方更新日志","securityRepo":"安全审计证据","noLogsRepo":"无日志证据","sola":"Sola 协议","openSource":"开源计划","support":"支持中心","lastVerified":"最后核验"} +} diff --git a/metadata/locales/zh-Hant.json b/metadata/locales/zh-Hant.json new file mode 100644 index 0000000..bfff6f5 --- /dev/null +++ b/metadata/locales/zh-Hant.json @@ -0,0 +1,27 @@ +{ + "htmlLang": "zh-Hant", + "title": "SingLinkVPN 星連VPN官方公開項目|下載、安全證據與協議狀態", + "description": "SingLinkVPN 星連VPN官方公開項目,提供穩定下載入口、免費計劃事實、安全審計與無日誌證據、Sola 協議狀態及開源路線圖。", + "h1": "SingLinkVPN 星連VPN官方公開項目", + "hero": "集中提供官方入口、目前產品事實、可核驗的安全與私隱證據、協議狀態及公開開源路線圖。", + "aboutTitle": "關於本儲存庫", + "about": "這是 SingLinkVPN 的官方公共項目與證據索引,並不代表所有專有 VPN 用戶端或生產組件已經開源。本儲存庫明確區分產品導覽、第三方發布的獨立證據、內部技術狀態及未來分階段開放的內容。", + "downloadsTitle": "穩定下載入口", + "downloads": "請透過官方平台頁面取得最新相容安裝程式與使用說明。版本事實由官方更新日誌維護;本儲存庫不再把容易過期的安裝檔案名稱作為長期下載網址。", + "freeTitle": "免費計劃", + "free": "目前公布的免費計劃為流動裝置每日 200 MB、桌面裝置每日 500 MB;符合條件的桌面活動可提高至每日 1 GB。可用地區、活動、節點及限制可能調整,引用這些數字前應核對所連結的官方說明。", + "evidenceTitle": "安全與私隱證據", + "auditTitle": "電腦端 2.5 安全審計", + "audit": "獨立證據庫記錄審計方簽署的 2.0 版報告,範圍包括 macOS 2.5.7 build 3065 與 Windows 2.5.8 build 3077。報告中的 100/100 只適用於審計方列明的版本、樣本、證據、環境與測試。", + "noLogsTitle": "2026 無日誌驗證", + "noLogs": "獨立證據庫記錄基準日為 2026 年 7 月 29 日的已簽署無日誌驗證。結論僅限當日受審生產環境範圍,並非對所有系統狀態或未來版本的永久保證。", + "techTitle": "協議狀態", + "tech": "Sola 是 SingLink 基於 SingLink 2.0 架構重構的新一代 VPN 傳輸協議。核心開發及第一階段內部測試已完成,協議安全與實作審計仍在進行;內部性能數字不能表述為第三方獨立重現結果。", + "openSourceTitle": "開源狀態", + "openSource": "SingLinkVPN 正分階段公開文件、證據、研究數據與程式碼。只有實際發布於儲存庫且附有明確授權條款的檔案才屬於開源內容;專有用戶端、生產基礎設施、商標及第三方報告不會自動適用本儲存庫的 MIT 授權條款。", + "verifyTitle": "核驗與更新", + "verify": "儲存庫提供機器可讀項目資料、來源連結、發布日期及自動檢查,方便公眾覆核。目前用戶端版本應以官方更新日誌為準,報告範圍和完整性記錄應以對應證據庫為準。", + "limitsTitle": "證據邊界", + "limits": "公開元數據可以改善發現與核驗,但不保證搜尋收錄、排名、外鏈或任何 AI 系統一定引用。實際性能會受地區、電訊商、裝置、節點負載及目標服務影響;安全結論只適用於各報告列明的範圍。", + "labels": {"officialWebsite":"官方網站","newsCenter":"新聞與技術中心","downloadCenter":"全平台下載","changelog":"官方更新日誌","securityRepo":"安全審計證據","noLogsRepo":"無日誌證據","sola":"Sola 協議","openSource":"開源計劃","support":"支援中心","lastVerified":"最後核驗"} +} diff --git a/metadata/project.json b/metadata/project.json new file mode 100644 index 0000000..596f173 --- /dev/null +++ b/metadata/project.json @@ -0,0 +1,49 @@ +{ + "$schema": "./project.schema.json", + "name": "SingLinkVPN", + "alternateNames": ["SingLink VPN", "星连VPN", "星連VPN"], + "repositoryRole": "Official public project and evidence index", + "repository": "https://github.com/SingLinkLabs/SingLinkVPN", + "pagesBaseUrl": "https://singlinklabs.github.io/SingLinkVPN", + "officialWebsite": "https://singlinkvpn.com/", + "newsCenter": "https://singlinknews.com/", + "downloadCenter": "https://singlinkvpn.com/en/download/", + "changelog": "https://singlinkvpn.com/en/tech/changelog/", + "freePlan": { + "mobileDailyMb": 200, + "desktopDailyMb": 500, + "eligibleDesktopPromotionDailyMb": 1000, + "source": "https://singlinknews.com/free-plan" + }, + "platforms": [ + { "name": "iOS", "url": "https://singlinkvpn.com/en/download/ios/" }, + { "name": "Android", "url": "https://singlinkvpn.com/en/download/android/" }, + { "name": "Windows", "url": "https://singlinkvpn.com/en/download/windows/" }, + { "name": "macOS", "url": "https://singlinkvpn.com/en/download/macos/" }, + { "name": "Linux", "url": "https://singlinkvpn.com/en/download/linux/" }, + { "name": "Apple TV", "url": "https://singlinkvpn.com/en/download/tv/" } + ], + "evidence": { + "securityAudit": { + "repository": "https://github.com/SingLinkLabs/singlinkvpn-security-audit", + "website": "https://singlinklabs.github.io/singlinkvpn-security-audit/", + "scope": "macOS 2.5.7 build 3065 and Windows 2.5.8 build 3077 within the auditor's documented scope", + "result": "100/100 under the auditor's stated rubric", + "reportDate": "2026-08-24" + }, + "noLogsVerification": { + "repository": "https://github.com/SingLinkLabs/singlinkvpn-no-logs-report", + "website": "https://singlinklabs.github.io/singlinkvpn-no-logs-report/", + "referenceDate": "2026-07-29", + "result": "Passed within the report's documented production-review scope and reference date" + }, + "umbrellaIndex": "https://github.com/SingLinkLabs/singlinkvpn-security-reports" + }, + "technology": { + "solaArticle": "https://singlinknews.com/sola-protocol", + "status": "Core development and first-phase internal testing completed; protocol security and implementation audit in progress", + "openSourcePlan": "https://singlinknews.com/singlink-vpn-open-source-plan" + }, + "support": "https://github.com/SingLinkLabs/SingLinkVPN/issues", + "lastVerified": "2026-08-25" +} diff --git a/metadata/project.schema.json b/metadata/project.schema.json new file mode 100644 index 0000000..2aed3f8 --- /dev/null +++ b/metadata/project.schema.json @@ -0,0 +1,26 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://singlinklabs.github.io/SingLinkVPN/metadata/project.schema.json", + "title": "SingLinkVPN public project record", + "type": "object", + "required": ["name", "repositoryRole", "repository", "pagesBaseUrl", "officialWebsite", "newsCenter", "downloadCenter", "changelog", "freePlan", "platforms", "evidence", "technology", "lastVerified"], + "properties": { + "name": { "const": "SingLinkVPN" }, + "repositoryRole": { "type": "string", "minLength": 10 }, + "repository": { "type": "string", "format": "uri" }, + "pagesBaseUrl": { "type": "string", "format": "uri" }, + "officialWebsite": { "type": "string", "format": "uri" }, + "newsCenter": { "type": "string", "format": "uri" }, + "downloadCenter": { "type": "string", "format": "uri" }, + "changelog": { "type": "string", "format": "uri" }, + "freePlan": { + "type": "object", + "required": ["mobileDailyMb", "desktopDailyMb", "eligibleDesktopPromotionDailyMb", "source"] + }, + "platforms": { "type": "array", "minItems": 6, "uniqueItems": true }, + "evidence": { "type": "object", "required": ["securityAudit", "noLogsVerification", "umbrellaIndex"] }, + "technology": { "type": "object", "required": ["solaArticle", "status", "openSourcePlan"] }, + "lastVerified": { "type": "string", "format": "date" } + }, + "additionalProperties": true +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..a5cc9bc --- /dev/null +++ b/package.json @@ -0,0 +1,13 @@ +{ + "name": "singlinkvpn-public-project", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build:readmes": "node scripts/build-readmes.mjs", + "build:site": "node scripts/build-site.mjs", + "audit": "node scripts/audit.mjs", + "test": "node --test test/*.test.mjs && npm run build:readmes && npm run build:site && npm run audit", + "verify:remote": "node scripts/verify-remote-links.mjs" + } +} diff --git a/scripts/audit.mjs b/scripts/audit.mjs new file mode 100644 index 0000000..4712cf0 --- /dev/null +++ b/scripts/audit.mjs @@ -0,0 +1,43 @@ +import assert from 'node:assert/strict'; +import { readFile } from 'node:fs/promises'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const project = JSON.parse(await readFile(path.join(root, 'metadata/project.json'), 'utf8')); +const locales = ['en', 'zh-Hant', 'zh-Hans', 'ja', 'ko', 'vi', 'th', 'ru']; +const urlFor = (locale) => `${project.pagesBaseUrl}${locale === 'en' ? '/' : `/${locale}/`}`; + +for (const locale of locales) { + const copy = JSON.parse(await readFile(path.join(root, `metadata/locales/${locale}.json`), 'utf8')); + const htmlPath = locale === 'en' ? path.join(root, 'dist/index.html') : path.join(root, `dist/${locale}/index.html`); + const html = await readFile(htmlPath, 'utf8'); + assert.equal((html.match(/]/g) || []).length, 1, `${locale} must have one H1`); + assert.match(html, new RegExp(``), `${locale} canonical`); + assert.ok(html.includes('index,follow,max-image-preview:large'), `${locale} robots meta`); + assert.ok(html.includes('application/ld+json'), `${locale} JSON-LD`); + assert.ok(html.includes('twitter:card'), `${locale} Twitter card`); + assert.ok(html.includes('og:image'), `${locale} Open Graph image`); + assert.ok(html.includes(copy.description), `${locale} visible metadata description`); + for (const alternate of locales) { + assert.ok(html.includes(`hreflang="${alternate}" href="${urlFor(alternate)}"`), `${locale} -> ${alternate} hreflang`); + } + assert.ok(!/localhost|127\.0\.0\.1|noindex/i.test(html), `${locale} must be publicly indexable`); +} + +const sitemap = await readFile(path.join(root, 'dist/sitemap.xml'), 'utf8'); +assert.equal((sitemap.match(//g) || []).length, locales.length, 'sitemap route count'); +for (const locale of locales) assert.ok(sitemap.includes(`${urlFor(locale)}`)); + +const robots = await readFile(path.join(root, 'dist/robots.txt'), 'utf8'); +assert.match(robots, /User-agent: \*\nAllow: \//); +assert.match(robots, /User-agent: OAI-SearchBot\nAllow: \//); +assert.ok(robots.includes(`${project.pagesBaseUrl}/sitemap.xml`)); + +const llms = await readFile(path.join(root, 'dist/llms.txt'), 'utf8'); +assert.ok(llms.includes(project.repository)); +assert.ok(llms.includes(project.evidence.securityAudit.repository)); +assert.ok(llms.includes(project.evidence.noLogsVerification.repository)); + +console.log(`Audit passed for ${locales.length} localized routes and all discovery surfaces.`); diff --git a/scripts/build-readmes.mjs b/scripts/build-readmes.mjs new file mode 100644 index 0000000..455d27f --- /dev/null +++ b/scripts/build-readmes.mjs @@ -0,0 +1,122 @@ +import { readFile, writeFile } from 'node:fs/promises'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const project = JSON.parse(await readFile(path.join(root, 'metadata/project.json'), 'utf8')); +const locales = ['en', 'zh-Hant', 'zh-Hans', 'ja', 'ko', 'vi', 'th', 'ru']; +const filenames = { + en: 'README.md', + 'zh-Hant': 'README.zh-Hant.md', + 'zh-Hans': 'README.zh-Hans.md', + ja: 'README.ja.md', + ko: 'README.ko.md', + vi: 'README.vi.md', + th: 'README.th.md', + ru: 'README.ru.md', +}; +const languageNames = { + en: 'English', + 'zh-Hant': '繁體中文', + 'zh-Hans': '简体中文', + ja: '日本語', + ko: '한국어', + vi: 'Tiếng Việt', + th: 'ไทย', + ru: 'Русский', +}; + +function nav() { + return locales.map((locale) => `[${languageNames[locale]}](./${filenames[locale]})`).join(' · '); +} + +function readme(copy) { + const platformLinks = project.platforms + .map(({ name, url }) => `- [${name}](${url})`) + .join('\n'); + return `# ${copy.h1} + +${nav()} + +![SingLinkVPN official public project](./assets/singlinkvpn-public-project.png) + +${copy.hero} + +## ${copy.aboutTitle} + +${copy.about} + +- [${copy.labels.officialWebsite}](${project.officialWebsite}) +- [${copy.labels.newsCenter}](${project.newsCenter}) +- [${copy.labels.changelog}](${project.changelog}) +- [${copy.labels.support}](${project.support}) + +## ${copy.downloadsTitle} + +${copy.downloads} + +- [${copy.labels.downloadCenter}](${project.downloadCenter}) +${platformLinks} + +## ${copy.freeTitle} + +${copy.free} + +- [${copy.freeTitle}](${project.freePlan.source}) + +## ${copy.evidenceTitle} + +### ${copy.auditTitle} + +${copy.audit} + +- [${copy.labels.securityRepo}](${project.evidence.securityAudit.repository}) +- [${copy.labels.securityRepo} · Pages](${project.evidence.securityAudit.website}) + +### ${copy.noLogsTitle} + +${copy.noLogs} + +- [${copy.labels.noLogsRepo}](${project.evidence.noLogsVerification.repository}) +- [${copy.labels.noLogsRepo} · Pages](${project.evidence.noLogsVerification.website}) + +## ${copy.techTitle} + +${copy.tech} + +- [${copy.labels.sola}](${project.technology.solaArticle}) + +## ${copy.openSourceTitle} + +${copy.openSource} + +- [${copy.labels.openSource}](${project.technology.openSourcePlan}) + +## ${copy.verifyTitle} + +${copy.verify} + +\`\`\`sh +npm test +npm run verify:remote +\`\`\` + +- [Machine-readable project record](./metadata/project.json) +- [Citation metadata](./CITATION.cff) +- [Security policy](./SECURITY.md) +- [Rights and licence boundary](./RIGHTS.md) + +## ${copy.limitsTitle} + +${copy.limits} + +**${copy.labels.lastVerified}: ${project.lastVerified}.** +`; +} + +for (const locale of locales) { + const copy = JSON.parse(await readFile(path.join(root, `metadata/locales/${locale}.json`), 'utf8')); + await writeFile(path.join(root, filenames[locale]), readme(copy), 'utf8'); +} + +console.log(`Built ${locales.length} complete localized README files.`); diff --git a/scripts/build-site.mjs b/scripts/build-site.mjs new file mode 100644 index 0000000..440846c --- /dev/null +++ b/scripts/build-site.mjs @@ -0,0 +1,178 @@ +import { cp, mkdir, readFile, rm, writeFile } from 'node:fs/promises'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const dist = path.join(root, 'dist'); +const project = JSON.parse(await readFile(path.join(root, 'metadata/project.json'), 'utf8')); +const locales = ['en', 'zh-Hant', 'zh-Hans', 'ja', 'ko', 'vi', 'th', 'ru']; +const languageNames = { + en: 'English', + 'zh-Hant': '繁體中文', + 'zh-Hans': '简体中文', + ja: '日本語', + ko: '한국어', + vi: 'Tiếng Việt', + th: 'ไทย', + ru: 'Русский', +}; + +const escapeHtml = (value) => String(value) + .replaceAll('&', '&') + .replaceAll('<', '<') + .replaceAll('>', '>') + .replaceAll('"', '"') + .replaceAll("'", '''); + +const routeFor = (locale) => locale === 'en' ? '/' : `/${locale}/`; +const urlFor = (locale) => `${project.pagesBaseUrl}${routeFor(locale)}`; + +function link(url, label, className = '') { + return `${escapeHtml(label)}`; +} + +function page(copy, locale) { + const canonical = urlFor(locale); + const alternates = locales + .map((code) => ``) + .join('\n '); + const languageNav = locales + .map((code) => link(urlFor(code), languageNames[code], code === locale ? 'active' : '')) + .join(''); + const platformLinks = project.platforms + .map(({ name, url }) => `
  • ${link(url, name)}
  • `) + .join(''); + const graph = { + '@context': 'https://schema.org', + '@graph': [ + { + '@type': 'WebSite', + '@id': `${project.pagesBaseUrl}/#website`, + url: `${project.pagesBaseUrl}/`, + name: 'SingLinkVPN Official Public Project', + alternateName: project.alternateNames, + inLanguage: locales.map((code) => JSON.parse(localeCopies.get(code)).htmlLang), + }, + { + '@type': 'WebPage', + '@id': `${canonical}#webpage`, + url: canonical, + name: copy.title, + description: copy.description, + isPartOf: { '@id': `${project.pagesBaseUrl}/#website` }, + inLanguage: copy.htmlLang, + dateModified: project.lastVerified, + }, + { + '@type': 'SoftwareApplication', + '@id': `${project.officialWebsite}#software`, + name: project.name, + alternateName: project.alternateNames, + url: project.officialWebsite, + applicationCategory: 'SecurityApplication', + operatingSystem: project.platforms.map(({ name }) => name).join(', '), + sameAs: [ + project.repository, + project.newsCenter, + project.evidence.securityAudit.repository, + project.evidence.noLogsVerification.repository, + ], + }, + ], + }; + + return ` + + + + + ${escapeHtml(copy.title)} + + + + ${alternates} + + + + + + + + + + + + + + + + + +
    + ${link(project.officialWebsite, 'SingLinkVPN', 'brand')} + +
    +
    +
    +
    ${escapeHtml(project.repositoryRole)}
    +

    ${escapeHtml(copy.h1)}

    +

    ${escapeHtml(copy.hero)}

    +
    + ${link(project.officialWebsite, copy.labels.officialWebsite, 'button')} + ${link(project.downloadCenter, copy.labels.downloadCenter, 'button secondary')} +
    +
    + ${escapeHtml(copy.h1)} +
    +

    ${escapeHtml(copy.aboutTitle)}

    ${escapeHtml(copy.about)}

    ${link(project.newsCenter, copy.labels.newsCenter)} · ${link(project.changelog, copy.labels.changelog)} · ${link(project.support, copy.labels.support)}

    +

    ${escapeHtml(copy.downloadsTitle)}

    ${escapeHtml(copy.downloads)}

      ${platformLinks}
    +

    ${escapeHtml(copy.freeTitle)}

    ${escapeHtml(copy.free)}

    ${link(project.freePlan.source, copy.freeTitle)}

    +

    ${escapeHtml(copy.auditTitle)}

    ${escapeHtml(copy.audit)}

    ${link(project.evidence.securityAudit.repository, copy.labels.securityRepo)}

    +

    ${escapeHtml(copy.noLogsTitle)}

    ${escapeHtml(copy.noLogs)}

    ${link(project.evidence.noLogsVerification.repository, copy.labels.noLogsRepo)}

    +

    ${escapeHtml(copy.techTitle)}

    ${escapeHtml(copy.tech)}

    ${link(project.technology.solaArticle, copy.labels.sola)}

    +

    ${escapeHtml(copy.openSourceTitle)}

    ${escapeHtml(copy.openSource)}

    ${link(project.technology.openSourcePlan, copy.labels.openSource)}

    +
    + +
    +
    + +
    + +`; +} + +await rm(dist, { recursive: true, force: true }); +await mkdir(dist, { recursive: true }); + +const localeCopies = new Map(); +for (const locale of locales) { + localeCopies.set(locale, await readFile(path.join(root, `metadata/locales/${locale}.json`), 'utf8')); +} + +for (const locale of locales) { + const copy = JSON.parse(localeCopies.get(locale)); + const target = locale === 'en' ? dist : path.join(dist, locale); + await mkdir(target, { recursive: true }); + await writeFile(path.join(target, 'index.html'), page(copy, locale), 'utf8'); +} + +await mkdir(path.join(dist, 'assets'), { recursive: true }); +await mkdir(path.join(dist, 'metadata'), { recursive: true }); +await cp(path.join(root, 'assets/singlinkvpn-public-project.png'), path.join(dist, 'assets/singlinkvpn-public-project.png')); +await cp(path.join(root, 'assets/singlinkvpn-public-project.svg'), path.join(dist, 'assets/singlinkvpn-public-project.svg')); +await cp(path.join(root, 'metadata/project.json'), path.join(dist, 'metadata/project.json')); +await cp(path.join(root, 'metadata/project.schema.json'), path.join(dist, 'metadata/project.schema.json')); +await cp(path.join(root, 'llms.txt'), path.join(dist, 'llms.txt')); +await writeFile(path.join(dist, '.nojekyll'), '', 'utf8'); + +const sitemap = ` + +${locales.map((locale) => ` ${urlFor(locale)}${project.lastVerified}`).join('\n')} +\n`; +await writeFile(path.join(dist, 'sitemap.xml'), sitemap, 'utf8'); +await writeFile(path.join(dist, 'robots.txt'), `User-agent: *\nAllow: /\n\nUser-agent: OAI-SearchBot\nAllow: /\n\nSitemap: ${project.pagesBaseUrl}/sitemap.xml\n`, 'utf8'); + +console.log(`Built ${locales.length} localized Pages routes in dist/.`); diff --git a/scripts/verify-remote-links.mjs b/scripts/verify-remote-links.mjs new file mode 100644 index 0000000..f1876ed --- /dev/null +++ b/scripts/verify-remote-links.mjs @@ -0,0 +1,52 @@ +import { readFile } from 'node:fs/promises'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const project = JSON.parse(await readFile(path.join(root, 'metadata/project.json'), 'utf8')); +const urls = new Set([ + project.officialWebsite, + project.newsCenter, + project.downloadCenter, + project.changelog, + project.freePlan.source, + project.support, + ...project.platforms.map(({ url }) => url), + project.evidence.securityAudit.repository, + project.evidence.securityAudit.website, + project.evidence.noLogsVerification.repository, + project.evidence.noLogsVerification.website, + project.evidence.umbrellaIndex, + project.technology.solaArticle, + project.technology.openSourcePlan, +]); + +const failures = []; +for (const url of urls) { + let finalError; + for (let attempt = 1; attempt <= 3; attempt += 1) { + try { + const response = await fetch(url, { + redirect: 'follow', + signal: AbortSignal.timeout(30_000), + headers: { 'user-agent': 'SingLinkVPN-public-project-link-check/1.0' }, + }); + console.log(`${response.status}\t${response.url}\t${url}`); + await response.body?.cancel(); + if (!response.ok) finalError = `${response.status} ${url}`; + else finalError = undefined; + break; + } catch (error) { + finalError = `${error.name}: ${url}`; + console.error(`RETRY ${attempt}/3\t${url}\t${error.message}`); + } + } + if (finalError) failures.push(finalError); +} + +if (failures.length) { + console.error(`\n${failures.length} remote link checks failed:\n${failures.join('\n')}`); + process.exit(1); +} + +console.log(`Verified ${urls.size} remote source routes.`); diff --git a/test/project.test.mjs b/test/project.test.mjs new file mode 100644 index 0000000..158bff2 --- /dev/null +++ b/test/project.test.mjs @@ -0,0 +1,52 @@ +import assert from 'node:assert/strict'; +import { readFile } from 'node:fs/promises'; +import path from 'node:path'; +import test from 'node:test'; +import { fileURLToPath } from 'node:url'; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const locales = ['en', 'zh-Hant', 'zh-Hans', 'ja', 'ko', 'vi', 'th', 'ru']; +const readmeNames = { en: 'README.md', 'zh-Hant': 'README.zh-Hant.md', 'zh-Hans': 'README.zh-Hans.md', ja: 'README.ja.md', ko: 'README.ko.md', vi: 'README.vi.md', th: 'README.th.md', ru: 'README.ru.md' }; +const requiredCopy = ['htmlLang', 'title', 'description', 'h1', 'hero', 'aboutTitle', 'about', 'downloadsTitle', 'downloads', 'freeTitle', 'free', 'evidenceTitle', 'auditTitle', 'audit', 'noLogsTitle', 'noLogs', 'techTitle', 'tech', 'openSourceTitle', 'openSource', 'verifyTitle', 'verify', 'limitsTitle', 'limits', 'labels']; + +test('project record contains stable, scoped facts', async () => { + const project = JSON.parse(await readFile(path.join(root, 'metadata/project.json'), 'utf8')); + assert.equal(project.freePlan.mobileDailyMb, 200); + assert.equal(project.freePlan.desktopDailyMb, 500); + assert.equal(project.freePlan.eligibleDesktopPromotionDailyMb, 1000); + assert.equal(project.platforms.length, 6); + const serialized = JSON.stringify(project); + assert.doesNotMatch(serialized, /localhost|127\.0\.0\.1|download\.singlinkvpn\.com|sg\.singlinkvpn\.com/); + assert.match(project.evidence.securityAudit.result, /100\/100/); + assert.match(project.evidence.noLogsVerification.result, /scope and reference date/); +}); + +test('all locale records are complete and distinct', async () => { + const titles = new Set(); + for (const locale of locales) { + const copy = JSON.parse(await readFile(path.join(root, `metadata/locales/${locale}.json`), 'utf8')); + for (const key of requiredCopy) assert.ok(copy[key], `${locale}.${key}`); + assert.ok(copy.title.length >= 30, `${locale} title is descriptive`); + assert.ok(copy.description.length >= 60, `${locale} description is descriptive`); + titles.add(copy.title); + } + assert.equal(titles.size, locales.length, 'titles must be localized'); +}); + +test('all generated READMEs preserve evidence and reject stale claims', async () => { + for (const locale of locales) { + const markdown = await readFile(path.join(root, readmeNames[locale]), 'utf8'); + assert.ok(markdown.includes('singlinkvpn-security-audit')); + assert.ok(markdown.includes('singlinkvpn-no-logs-report')); + assert.ok(markdown.includes('metadata/project.json')); + assert.ok(markdown.includes('npm run verify:remote')); + assert.doesNotMatch(markdown, /sg\.singlinkvpn\.com|download\.singlinkvpn\.com|unlimited bandwidth|300%|2000Mbps/i); + } +}); + +test('rights boundary is explicit', async () => { + const rights = await readFile(path.join(root, 'RIGHTS.md'), 'utf8'); + assert.match(rights, /proprietary client applications/); + assert.match(rights, /third-party audit reports/); + assert.match(rights, /does not automatically apply/i); +});