# Xget
***[ζ±θ―](README.md)***
[](https://zread.ai/xixu-me/Xget)
[](https://deepwiki.com/xixu-me/Xget)
[](#-ecosystem-integration)
[](#-ecosystem-integration)
[](#cloudflare-workers)
[](#github)
[](#gitlab)
[](#gitea)
[](#codeberg)
[](#sourceforge)
[](#aosp-android-open-source-project)
[](#hugging-face)
[](#civitai-ai-model-platform)
[](#npm-package-management-acceleration)
[](#python-package-management-acceleration)
[](#conda-package-management-acceleration)
[](#maven-package-management-acceleration)
[](#apache-software-download-acceleration)
[](#gradle-package-management-acceleration)
[](#homebrew-package-management-acceleration)
[](#ruby-package-management-acceleration)
[](#r-package-management-acceleration)
[](#perl-package-management-acceleration)
[](#texlatex-package-management-acceleration)
[](#go-module-acceleration)
[](#nuget-package-management-acceleration)
[](#rust-package-management-acceleration)
[](#php-package-management-acceleration)
[](#debianubuntu-apt-configuration)
[](#debianubuntu-apt-configuration)
[](#fedora-dnf-configuration)
[](#rocky-linux-dnf-configuration)
[](#opensuse-zypper-configuration)
[](#arch-linux-pacman-configuration)
[](#arxiv-paper-download)
[](#f-droid-repository-mirror)
[](#jenkins-plugin-download)
[](#ai-inference-api-acceleration)
[](#container-image-acceleration)
An ultra-high-performance, secure, all-in-one acceleration engine for developer resources whose performance far surpasses traditional accelerators, delivering a unified, efficient acceleration experience across multiple platforms, including code repositories, package management, AI inference APIs, container images, models and datasets, and more.
The technical in-depth analysis article has been posted: ***[A Deep Dive into Xget: A High-Performance, Multi-Protocol, and Secure Acceleration Engine for Developer Resources](https://blog.xi-xu.me/2025/10/07/deep-dive-into-xget-technology-en.html)***.
## π― Quick Start
**Pre-deployed instances (no reliability guaranteed): `xget.xi-xu.me`** - Out of the box, no deployment required!
**URL Converter:**[**`xuc.xi-xu.me`**](https://xuc.xi-xu.me) - One-click conversion of any URL that supports the platform to an accelerated format of Xget!
> **β‘ Experience the fast download now**: No registration required, no configuration required, you can experience the average download speed directly!
## π Core Advantages β Why Choose Xget?
### β‘ Blazing Performance β Breaking Traditional Bottlenecks
- **β‘ Millisecond response**: Cloudflare Global 330+ edge nodes, average response time < 50ms
- **π HTTP/3 Extreme Speed ββProtocol**: Enable the latest HTTP/3 protocol, reduce connection latency by 40%, and increase transmission speed by 30%.
- **π¦ Intelligent Multiple Compression**: gzip, deflate, brotli triple compression algorithm, transmission efficiency is improved by 60%
- **π Zero-delay pre-connection**: Connection warms up and stays active, eliminates handshake overhead, and achieves second-level response
- **β‘ Parallel shard download**: Full support for HTTP Range requests, multi-threaded download speed doubles
- **π― Intelligent routing optimization**: Automatically select the optimal transmission path to avoid network congestion nodes
### π Deep Multi-Platform Integration
- **One-stop multi-platform support**: Unified support for code repository, package manager, AI inference provider, container registry, model and dataset hosting platform
- **Intelligent recognition and conversion**: Automatically identify the platform prefix and convert it to the correct URL structure for the target platform
- **Consistent acceleration experience**: You can enjoy a unified and stable and fast download experience regardless of file type or source
### π Enterprise-Grade Security
- **Multi-layer security header**:
- `Strict-Transport-Security`: Force HTTPS transmission to prevent man-in-the-middle attacks
- `X-Frame-Options: DENY`: Prevent click hijacking attacks
- `X-XSS-Protection`: Built-in XSS protection mechanism
- `Content-Security-Policy`: Strict Content Security Policy
- `Referrer-Policy`: Controlling the leakage of reference information
- **Request verification mechanism**:
- HTTP method whitelist: General requests are limited to GET/HEAD, Git operations dynamically allow POST
- Path length limit: Prevents excessively long URL attacks (maximum 2048 characters)
- Input Cleanup: Prevent path traversal and injection attacks
- **Timeout Protection**: 30-second request timeout to prevent resource exhaustion and malicious requests
### π Modern Architecture and Reliability
- **Intelligent retry mechanism**:
- Maximum 3 retry, linear delay strategy (1000ms Γ retry times)
- Automatic error recovery to improve download success rate
- Timeout detection and interrupt handling
- **Efficient Caching Policy**:
- 1800 seconds (30 minutes) default cache time, significantly reducing source station pressure
- Git operation skips cache to ensure real-time
- Edge Cache Based on Cloudflare Cache API
- **Performance Monitoring System**:
- Built-in `PerformanceMonitor` class, real-time tracking of requests for each stage
- Provide detailed performance data through the `X-Performance-Metrics` response header
- Support cache hit rate statistics and optimization suggestions
### π― Full Git Protocol Compatibility
- **Smart Protocol Detection**:
- Automatically identify Git-specific endpoints (`/info/refs`, `/git-upload-pack`, `/git-receive-pack`)
- Detect Git client User-Agent mode
- Support `service=git-upload-pack` and other query parameters
- **Full operation support**:
- `git clone`: Full repository clone, support for shallow clones and branch specifications
- `git push`: Code push and branch management
- `git pull/fetch`: incremental update and remote synchronization
- `git submodule`: submodule recursive cloning
- **Protocol Optimization**:
- Keep Git-specific request headers and authentication information
- Intelligent User-Agent processing (default `git/2.34.1`)
- Support Git LFS large file transfer
### π± Ecosystem Integration
- **Special browser extension**: [Xget Now](https://github.com/xixu-me/Xget-Now) provides a seamless experience
- Automatic URL redirection without manual URL modification
- Support custom Xget instance domain names
- Multi-platform preferences and black and white list management
- Local processing to ensure privacy and security
- **Download tool compatible**: Perfectly support mainstream download tools such as wget, cURL, aria2, IDM, etc.
- **CI/CD integration**: Can be used directly in GitHub Actions, GitLab CI and other environments
## π URL Conversion Rules
Using pre-deployed instances **`xget.xi-xu.me`** or your own deployed instance, simply replace the domain name and add the platform prefix:
### Convert format
| Platform | Platform Prefix | Original URL Format | Accelerated URL Format |
|------|----------|--------------|--------------|
| GitHub | `gh` | `https://github.com/...` | `https://xget.xi-xu.me/gh/...` |
| GitLab | `gl` | `https://gitlab.com/...` | `https://xget.xi-xu.me/gl/...` |
| Gitea | `gitea` | `https://gitea.com/...` | `https://xget.xi-xu.me/gitea/...` |
| Codeberg | `codeberg` | `https://codeberg.org/...` | `https://xget.xi-xu.me/codeberg/...` |
| SourceForge | `sf` | `https://sourceforge.net/...` | `https://xget.xi-xu.me/sf/...` |
| AOSP | `aosp` | `https://android.googlesource.com/...` | `https://xget.xi-xu.me/aosp/...` |
| Hugging Face | `hf` | `https://huggingface.co/...` | `https://xget.xi-xu.me/hf/...` |
| Civitai | `civitai` | `https://civitai.com/...` | `https://xget.xi-xu.me/civitai/...` |
| npm | `npm` | `https://registry.npmjs.org/...` | `https://xget.xi-xu.me/npm/...` |
| PyPI | `pypi` | `https://pypi.org/...` | `https://xget.xi-xu.me/pypi/...` |
| conda | `conda` | `https://repo.anaconda.com/...` and `https://conda.anaconda.org/...` | `https://xget.xi-xu.me/conda/...` and `https://xget.xi-xu.me/conda/community/...` |
| Maven | `maven` | `https://repo1.maven.org/...` | `https://xget.xi-xu.me/maven/...` |
| Apache | `apache` | `https://downloads.apache.org/...` | `https://xget.xi-xu.me/apache/...` |
| Gradle | `gradle` | `https://plugins.gradle.org/...` | `https://xget.xi-xu.me/gradle/...` |
| Homebrew | `homebrew` | `https://github.com/Homebrew/...` | `https://xget.xi-xu.me/homebrew/...` |
| RubyGems | `rubygems` | `https://rubygems.org/...` | `https://xget.xi-xu.me/rubygems/...` |
| CRAN | `cran` | `https://cran.r-project.org/...` | `https://xget.xi-xu.me/cran/...` |
| CPAN | `cpan` | `https://www.cpan.org/...` | `https://xget.xi-xu.me/cpan/...` |
| CTAN | `ctan` | `https://tug.ctan.org/...` | `https://xget.xi-xu.me/ctan/...` |
| Go module | `golang` | `https://proxy.golang.org/...` | `https://xget.xi-xu.me/golang/...` |
| NuGet | `nuget` | `https://api.nuget.org/...` | `https://xget.xi-xu.me/nuget/...` |
| Rust Crates | `crates` | `https://crates.io/...` | `https://xget.xi-xu.me/crates/...` |
| Packagist | `packagist` | `https://repo.packagist.org/...` | `https://xget.xi-xu.me/packagist/...` |
| Debian | `debian` | `https://deb.debian.org/...` | `https://xget.xi-xu.me/debian/...` |
| Ubuntu | `ubuntu` | `https://archive.ubuntu.com/...` | `https://xget.xi-xu.me/ubuntu/...` |
| Fedora | `fedora` | `https://dl.fedoraproject.org/...` | `https://xget.xi-xu.me/fedora/...` |
| Rocky Linux | `rocky` | `https://download.rockylinux.org/...` | `https://xget.xi-xu.me/rocky/...` |
| openSUSE | `opensuse` | `https://download.opensuse.org/...` | `https://xget.xi-xu.me/opensuse/...` |
| Arch Linux | `arch` | `https://geo.mirror.pkgbuild.com/...` | `https://xget.xi-xu.me/arch/...` |
| arXiv | `arxiv` | `https://arxiv.org/...` | `https://xget.xi-xu.me/arxiv/...` |
| F-Droid | `fdroid` | `https://f-droid.org/...` | `https://xget.xi-xu.me/fdroid/...` |
| Jenkins plugin | `jenkins` | `https://updates.jenkins.io/...` | `https://xget.xi-xu.me/jenkins/...` |
| AI Inference Provider | `ip` | See [AI Inference Provider](#ai-Inference Provider) | See [AI Inference Provider](#ai-Inference Provider) |
| Container Registration | `cr` | See [Container Registration] (#Container Registration) | See [Container Registration] (#Container Registration) |
### Examples of conversion of each platform
#### GitHub
```url
# Original URL
https://github.com/microsoft/vscode/archive/refs/heads/main.zip
# After conversion (add gh prefix)
https://xget.xi-xu.me/gh/microsoft/vscode/archive/refs/heads/main.zip
```
#### GitLab
```url
# Original URL
https://gitlab.com/gitlab-org/gitlab/-/archive/master/gitlab-master.zip
# After conversion (add gl prefix)
https://xget.xi-xu.me/gl/gitlab-org/gitlab/-/archive/master/gitlab-master.zip
```
#### Gitea
```url
# Original URL
https://gitea.com/gitea/gitea/archive/master.zip
# After conversion (add gitea prefix)
https://xget.xi-xu.me/gitea/gitea/gitea/archive/master.zip
```
#### Codeberg
```url
# Original URL
https://codeberg.org/forgejo/forgejo/archive/forgejo.zip
# After conversion (add codeberg prefix)
https://xget.xi-xu.me/codeberg/forgejo/forgejo/archive/forgejo.zip
```
#### SourceForge
```url
# Original URL
https://sourceforge.net/projects/sevenzip/files/7-Zip/23.01/7z2301-x64.exe/download
# After conversion (add sf prefix)
https://xget.xi-xu.me/sf/projects/sevenzip/files/7-Zip/23.01/7z2301-x64.exe/download
```
#### AOSP (Android open source project)
```url
# AOSP project original URL
https://android.googlesource.com/platform/frameworks/base
# After conversion (add aosp prefix)
https://xget.xi-xu.me/aosp/platform/frameworks/base
# AOSP Device Tree Original URL
https://android.googlesource.com/device/google/pixel
# After conversion (add aosp prefix)
https://xget.xi-xu.me/aosp/device/google/pixel
```
#### Hugging Face
```url
# Original URL of model file
https://huggingface.co/microsoft/DialoGPT-medium/resolve/main/pytorch_model.bin
# After conversion (add hf prefix)
https://xget.xi-xu.me/hf/microsoft/DialoGPT-medium/resolve/main/pytorch_model.bin
# Dataset file original URL
https://huggingface.co/datasets/rajpurkar/squad/resolve/main/plain_text/train-00000-of-00001.parquet
# After conversion (add hf prefix)
https://xget.xi-xu.me/hf/datasets/rajpurkar/squad/resolve/main/plain_text/train-00000-of-00001.parquet
```
#### Civitai
```url
# AI model download original URL
https://civitai.com/api/download/models/128713
# After conversion (add civitai prefix)
https://xget.xi-xu.me/civitai/api/download/models/128713
# Model API Original URL
https://civitai.com/api/v1/models/7240
# After conversion (add civitai prefix)
https://xget.xi-xu.me/civitai/api/v1/models/7240
# Model Version API Original URL
https://civitai.com/api/v1/model-versions/128713
# After conversion (add civitai prefix)
https://xget.xi-xu.me/civitai/api/v1/model-versions/128713
```
#### npm
```url
# Original URL of package file
https://registry.npmjs.org/react/-/react-18.2.0.tgz
# After conversion (add npm prefix)
https://xget.xi-xu.me/npm/react/-/react-18.2.0.tgz
# Package metadata original URL
https://registry.npmjs.org/lodash
# After conversion (add npm prefix)
https://xget.xi-xu.me/npm/lodash
```
#### PyPI
```url
# Python package file original URL
https://pypi.org/packages/source/r/requests/requests-2.31.0.tar.gz
# After conversion (add pypi prefix)
https://xget.xi-xu.me/pypi/packages/source/r/requests/requests-2.31.0.tar.gz
# Wheel file original URL
https://pypi.org/packages/py3/r/requests/requests-2.31.0-py3-none-any.whl
# After conversion (add pypi prefix)
https://xget.xi-xu.me/pypi/packages/py3/r/requests/requests-2.31.0-py3-none-any.whl
```
#### conda
```url
# The default channel package file original URL
https://repo.anaconda.com/pkgs/main/linux-64/numpy-1.24.3-py311h08b1b3b_1.conda
# After conversion (add conda prefix)
https://xget.xi-xu.me/conda/pkgs/main/linux-64/numpy-1.24.3-py311h08b1b3b_1.conda
# Community Channel Metadata Original URL
https://conda.anaconda.org/conda-forge/linux-64/repodata.json
# After conversion (add conda/community prefix)
https://xget.xi-xu.me/conda/community/conda-forge/linux-64/repodata.json
```
#### Maven
```url
# Maven Central Repository JAR file original URL
https://repo1.maven.org/maven2/org/springframework/spring-core/5.3.21/spring-core-5.3.21.jar
# After conversion (add maven prefix)
https://xget.xi-xu.me/maven/maven2/org/springframework/spring-core/5.3.21/spring-core-5.3.21.jar
# Maven metadata raw URL
https://repo1.maven.org/maven2/org/apache/commons/commons-lang3/maven-metadata.xml
# After conversion (add maven prefix)
https://xget.xi-xu.me/maven/maven2/org/apache/commons/commons-lang3/maven-metadata.xml
```
#### Apache software download
```url
# Apache software download original URL
https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
# After conversion (add apache prefix)
https://xget.xi-xu.me/apache/kafka/3.6.1/kafka_2.13-3.6.1.tgz
# Apache Maven Download Original URL
https://downloads.apache.org/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz
# After conversion (add apache prefix)
https://xget.xi-xu.me/apache/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz
# Apache Spark Download Original URL
https://downloads.apache.org/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgz
# After conversion (add apache prefix)
https://xget.xi-xu.me/apache/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgz
```
#### Gradle
```url
# Gradle plugin portal JAR file original URL
https://plugins.gradle.org/m2/org/gradle/gradle-hello-world-plugin/0.2/gradle-hello-world-plugin-0.2.jar
# After conversion (add gradle prefix)
https://xget.xi-xu.me/gradle/m2/org/gradle/gradle-hello-world-plugin/0.2/gradle-hello-world-plugin-0.2.jar
# Gradle plugin metadata raw URL
https://plugins.gradle.org/m2/com/github/ben-manes/gradle-versions-plugin/0.51.0/gradle-versions-plugin-0.51.0.module
# After conversion (add gradle prefix)
https://xget.xi-xu.me/gradle/m2/com/github/ben-manes/gradle-versions-plugin/0.51.0/gradle-versions-plugin-0.51.0.module
```
#### Homebrew
```url
# Homebrew Formula Repository Original URL
https://github.com/Homebrew/homebrew-core/raw/HEAD/Formula/g/git.rb
# After conversion (add homebrew prefix)
https://xget.xi-xu.me/homebrew/homebrew-core/raw/HEAD/Formula/g/git.rb
# Homebrew API Original URL
https://formulae.brew.sh/api/formula/git.json
# After conversion (add homebrew/api prefix)
https://xget.xi-xu.me/homebrew/api/formula/git.json
# Homebrew Bottles Original URL
https://ghcr.io/v2/homebrew/core/git/manifests/2.39.0
# After conversion (add homebrew/bottles prefix)
https://xget.xi-xu.me/homebrew/bottles/v2/homebrew/core/git/manifests/2.39.0
```
#### RubyGems
```url
# RubyGems package file original URL
https://rubygems.org/gems/rails-7.0.4.gem
# After conversion (add rubygems prefix)
https://xget.xi-xu.me/rubygems/gems/rails-7.0.4.gem
# RubyGems API Original URL
https://rubygems.org/api/v1/gems/nokogiri.json
# After conversion (add rubygems prefix)
https://xget.xi-xu.me/rubygems/api/v1/gems/nokogiri.json
```
#### CRAN
```url
# CRAN package file original URL
https://cran.r-project.org/src/contrib/ggplot2_3.5.2.tar.gz
# After conversion (add cran prefix)
https://xget.xi-xu.me/cran/src/contrib/ggplot2_3.5.2.tar.gz
# CRAN package metadata raw URL
https://cran.r-project.org/web/packages/dplyr/DESCRIPTION
# After conversion (add cran prefix)
https://xget.xi-xu.me/cran/web/packages/dplyr/DESCRIPTION
```
#### CPAN (Perl Package Management)
```url
# CPAN module original URL
https://www.cpan.org/modules/by-module/DBI/DBI-1.643.tar.gz
# After conversion (add cpan prefix)
https://xget.xi-xu.me/cpan/modules/by-module/DBI/DBI-1.643.tar.gz
# CPAN Author Package Original URL
https://www.cpan.org/authors/id/T/TI/TIMB/DBI-1.643.tar.gz
# After conversion (add cpan prefix)
https://xget.xi-xu.me/cpan/authors/id/T/TI/TIMB/DBI-1.643.tar.gz
```
#### CTAN (TeX/LaTeX Package Management)
```url
# CTAN package file original URL
https://tug.ctan.org/tex-archive/macros/latex/contrib/beamer.zip
# After conversion (add ctan prefix)
https://xget.xi-xu.me/ctan/tex-archive/macros/latex/contrib/beamer.zip
# CTAN font file original URL
https://tug.ctan.org/tex-archive/fonts/cm/pk/ljfour/public/cm/dpi600/cmr10.pk
# After conversion (add ctan prefix)
https://xget.xi-xu.me/ctan/tex-archive/fonts/cm/pk/ljfour/public/cm/dpi600/cmr10.pk
```
#### Go module
```url
# Go module proxy original URL
https://proxy.golang.org/github.com/gin-gonic/gin/@v/v1.9.1.zip
# After conversion (add golang prefix)
https://xget.xi-xu.me/golang/github.com/gin-gonic/gin/@v/v1.9.1.zip
# Go module information original URL
https://proxy.golang.org/github.com/gorilla/mux/@v/list
# After conversion (add golang prefix)
https://xget.xi-xu.me/golang/github.com/gorilla/mux/@v/list
```
#### NuGet
```url
# NuGet package download original URL
https://api.nuget.org/v3-flatcontainer/newtonsoft.json/13.0.3/newtonsoft.json.13.0.3.nupkg
# After conversion (add nuget prefix)
https://xget.xi-xu.me/nuget/v3-flatcontainer/newtonsoft.json/13.0.3/newtonsoft.json.13.0.3.nupkg
# NuGet package metadata raw URL
https://api.nuget.org/v3/registration5-semver1/microsoft.aspnetcore.app/index.json
# After conversion (add nuget prefix)
https://xget.xi-xu.me/nuget/v3/registration5-semver1/microsoft.aspnetcore.app/index.json
```
#### Rust Crates
```url
# Crate Download Original URL
https://crates.io/api/v1/crates/serde/1.0.0/download
# After conversion (add crates prefix)
https://xget.xi-xu.me/crates/serde/1.0.0/download
# Crate metadata raw URL
https://crates.io/api/v1/crates/serde
# After conversion (add crates prefix)
https://xget.xi-xu.me/crates/serde
# Crate Search for original URL
https://crates.io/api/v1/crates?q=serde
# After conversion (add crates prefix)
https://xget.xi-xu.me/crates/?q=serde
```
#### Packagist
```url
# Packagist package metadata raw URL
https://repo.packagist.org/p2/symfony/console.json
# After conversion (add packagist prefix)
https://xget.xi-xu.me/packagist/p2/symfony/console.json
# Packagist package list original URL
https://repo.packagist.org/packages/list.json
# After conversion (add packagist prefix)
https://xget.xi-xu.me/packagist/packages/list.json
```
#### Linux Distribution
```url
# Debian package original URL
https://deb.debian.org/debian/pool/main/c/curl/curl_7.88.1-10+deb12u4_amd64.deb
# After conversion (add debian prefix)
https://xget.xi-xu.me/debian/debian/pool/main/c/curl/curl_7.88.1-10+deb12u4_amd64.deb
# Ubuntu package original URL
https://archive.ubuntu.com/ubuntu/pool/main/g/git/git_2.34.1-1ubuntu1.9_amd64.deb
# After conversion (add ubuntu prefix)
https://xget.xi-xu.me/ubuntu/ubuntu/pool/main/g/git/git_2.34.1-1ubuntu1.9_amd64.deb
# Fedora package original URL
https://dl.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/n/nginx-1.24.0-1.fc39.x86_64.rpm
# After conversion (adding fedora prefix)
https://xget.xi-xu.me/fedora/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/n/nginx-1.24.0-1.fc39.x86_64.rpm
# Rocky Linux package original URL
https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/Packages/b/bash-5.1.8-6.el9.x86_64.rpm
# After conversion (add rocky prefix)
https://xget.xi-xu.me/rocky/pub/rocky/9/BaseOS/x86_64/os/Packages/b/bash-5.1.8-6.el9.x86_64.rpm
# openSUSE package original URL
https://download.opensuse.org/distribution/leap/15.5/repo/oss/x86_64/vim-9.0.1572-150500.20.8.1.x86_64.rpm
# After conversion (add opensuse prefix)
https://xget.xi-xu.me/opensuse/distribution/leap/15.5/repo/oss/x86_64/vim-9.0.1572-150500.20.8.1.x86_64.rpm
# Arch Linux package original URL
https://geo.mirror.pkgbuild.com/core/os/x86_64/linux-6.6.10.arch1-1-x86_64.pkg.tar.zst
# After conversion (add arch prefix)
https://xget.xi-xu.me/arch/core/os/x86_64/linux-6.6.10.arch1-1-x86_64.pkg.tar.zst
```
#### arXiv
```url
# arXiv Paper PDF Original URL
https://arxiv.org/pdf/2301.07041.pdf
# After conversion (add arxiv prefix)
https://xget.xi-xu.me/arxiv/pdf/2301.07041.pdf
# arXiv paper source code original URL
https://arxiv.org/e-print/2301.07041
# After conversion (add arxiv prefix)
https://xget.xi-xu.me/arxiv/e-print/2301.07041
```
#### F-Droid
```url
# F-Droid App APK Original URL
https://f-droid.org/repo/org.fdroid.fdroid_1016050.apk
# After conversion (add fdroid prefix)
https://xget.xi-xu.me/fdroid/repo/org.fdroid.fdroid_1016050.apk
# F-Droid application metadata raw URL
https://f-droid.org/api/v1/packages/org.fdroid.fdroid
# After conversion (add fdroid prefix)
https://xget.xi-xu.me/fdroid/api/v1/packages/org.fdroid.fdroid
```
#### Jenkins plugin
```url
# Jenkins Update Center Original URL
https://updates.jenkins.io/update-center.json
# After conversion (add jenkins prefix)
https://xget.xi-xu.me/jenkins/update-center.json
# Jenkins plugin download original URL
https://updates.jenkins.io/download/plugins/maven-plugin/3.27/maven-plugin.hpi
# After conversion (add jenkins prefix)
https://xget.xi-xu.me/jenkins/download/plugins/maven-plugin/3.27/maven-plugin.hpi
```
#### AI Inference Providers
Xget supports API acceleration for many mainstream AI inference providers, using the `ip/[AI inference provider prefix]` format:
| AI Inference Provider | AI Inference Provider Prefix | Original URL Format | Accelerated URL Format |
|-------------|----------|-------------|-------------|
| OpenAI | `openai` | `https://api.openai.com/...` | `https://xget.xi-xu.me/ip/openai/...` |
| Anthropic | `anthropic` | `https://api.anthropic.com/...` | `https://xget.xi-xu.me/ip/anthropic/...` |
| Gemini | `gemini` | `https://generativelanguage.googleapis.com/...` | `https://xget.xi-xu.me/ip/gemini/...` |
| Vertex AI | `vertexai` | `https://aiplatform.googleapis.com/...` | `https://xget.xi-xu.me/ip/vertexai/...` |
| Cohere | `cohere` | `https://api.cohere.ai/...` | `https://xget.xi-xu.me/ip/cohere/...` |
| Mistral AI | `mistralai` | `https://api.mistral.ai/...` | `https://xget.xi-xu.me/ip/mistralai/...` |
| xAI | `xai` | `https://api.x.ai/...` | `https://xget.xi-xu.me/ip/xai/...` |
| GitHub Models | `githubmodels` | `https://models.github.ai/...` | `https://xget.xi-xu.me/ip/githubmodels/...` |
| NVIDIA API | `nvidiaapi` | `https://integrate.api.nvidia.com/...` | `https://xget.xi-xu.me/ip/nvidiaapi/...` |
| Perplexity | `perplexity` | `https://api.perplexity.ai/...` | `https://xget.xi-xu.me/ip/perplexity/...` |
| Groq | `groq` | `https://api.groq.com/...` | `https://xget.xi-xu.me/ip/groq/...` |
| Cerebras | `cerebras` | `https://api.cerebras.ai/...` | `https://xget.xi-xu.me/ip/cerebras/...` |
| SambaNova | `sambanova` | `https://api.sambanova.ai/...` | `https://xget.xi-xu.me/ip/sambanova/...` |
| HF Inference | `huggingface` | `https://router.huggingface.co/...` | `https://xget.xi-xu.me/ip/huggingface/...` |
| Together | `together` | `https://api.together.xyz/...` | `https://xget.xi-xu.me/ip/together/...` |
| Replicate | `replicate` | `https://api.replicate.com/...` | `https://xget.xi-xu.me/ip/replicate/...` |
| Fireworks | `fireworks` | `https://api.fireworks.ai/...` | `https://xget.xi-xu.me/ip/fireworks/...` |
| Nebius | `nebius` | `https://api.studio.nebius.ai/...` | `https://xget.xi-xu.me/ip/nebius/...` |
| Jina | `jina` | `https://api.jina.ai/...` | `https://xget.xi-xu.me/ip/jina/...` |
| Voyage AI | `voyageai` | `https://api.voyageai.com/...` | `https://xget.xi-xu.me/ip/voyageai/...` |
| Fal AI | `falai` | `https://fal.run/...` | `https://xget.xi-xu.me/ip/falai/...` |
| Novita | `novita` | `https://api.novita.ai/...` | `https://xget.xi-xu.me/ip/novita/...` |
| Burncloud | `burncloud` | `https://ai.burncloud.com/...` | `https://xget.xi-xu.me/ip/burncloud/...` |
| OpenRouter | `openrouter` | `https://openrouter.ai/...` | `https://xget.xi-xu.me/ip/openrouter/...` |
| Poe | `poe` | `https://api.poe.com/...` | `https://xget.xi-xu.me/ip/poe/...` |
| Featherless AI | `featherlessai` | `https://api.featherless.ai/...` | `https://xget.xi-xu.me/ip/featherlessai/...` |
| Hyperbolic | `hyperbolic` | `https://api.hyperbolic.xyz/...` | `https://xget.xi-xu.me/ip/hyperbolic/...` |
```url
# OpenAI API Original URL
https://api.openai.com/v1/chat/completions
# After conversion (add ip/openai prefix)
https://xget.xi-xu.me/ip/openai/v1/chat/completions
# Anthropic API Original URL
https://api.anthropic.com/v1/messages
# After conversion (add ip/anthropic prefix)
https://xget.xi-xu.me/ip/anthropic/v1/messages
# Gemini API Original URL
https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent
# After conversion (add ip/gemini prefix)
https://xget.xi-xu.me/ip/gemini/v1beta/models/gemini-2.5-flash:generateContent
# HF Inference API Original URL
https://router.huggingface.co/hf-inference/models/openai/whisper-large-v3
# After conversion (add ip/huggingface prefix)
https://xget.xi-xu.me/ip/huggingface/hf-inference/models/openai/whisper-large-v3
```
For application scenarios, see [AI Inference API Acceleration](#ai-inference-api-acceleration).
#### Container Registries
Xget supports multiple container registries, using the `cr/[Container registry prefix]` format:
| Container Registry | Container Registry Prefix | Original URL Format | Accelerated URL Format |
|----------|------|--------------|--------------|
| Quay.io | `quay` | `https://quay.io/...` | `https://xget.xi-xu.me/cr/quay/...` |
| Google Container Registry | `gcr` | `https://gcr.io/...` | `https://xget.xi-xu.me/cr/gcr/...` |
| Microsoft Container Registry | `mcr` | `https://mcr.microsoft.com/...` | `https://xget.xi-xu.me/cr/mcr/...` |
| Amazon Public Elastic Container Registration | `ecr` | `https://public.ecr.aws/...` | `https://xget.xi-xu.me/cr/ecr/...` |
| GitHub Container Registry | `ghcr` | `https://ghcr.io/...` | `https://xget.xi-xu.me/cr/ghcr/...` |
| GitLab Container Registry | `gitlab` | `https://registry.gitlab.com/...` | `https://xget.xi-xu.me/cr/gitlab/...` |
| Red Hat Registry | `redhat` | `https://registry.redhat.io/...` | `https://xget.xi-xu.me/cr/redhat/...` |
| Oracle Container Registration | `oracle` | `https://container-registry.oracle.com/...` | `https://xget.xi-xu.me/cr/oracle/...` |
| Cloudsmith | `cloudsmith` | `https://docker.cloudsmith.io/...` | `https://xget.xi-xu.me/cr/cloudsmith/...` |
| DigitalOcean Registration | `digitalocean` | `https://registry.digitalocean.com/...` | `https://xget.xi-xu.me/cr/digitalocean/...` |
| VMware Registry | `vmware` | `https://projects.registry.vmware.com/...` | `https://xget.xi-xu.me/cr/vmware/...` |
| Kubernetes Registry | `k8s` | `https://registry.k8s.io/...` | `https://xget.xi-xu.me/cr/k8s/...` |
| Heroku Registration | `heroku` | `https://registry.heroku.com/...` | `https://xget.xi-xu.me/cr/heroku/...` |
| SUSE Registration | `suse` | `https://registry.suse.com/...` | `https://xget.xi-xu.me/cr/suse/...` |
| openSUSE Registration | `opensuse` | `https://registry.opensuse.org/...` | `https://xget.xi-xu.me/cr/opensuse/...` |
| Gitpod Registry | `gitpod` | `https://registry.gitpod.io/...` | `https://xget.xi-xu.me/cr/gitpod/...` |
```url
# GitHub Container Registration Original URL
https://ghcr.io/v2/nginxinc/nginx-unprivileged/manifests/latest
# After conversion (add cr/ghcr prefix)
https://xget.xi-xu.me/cr/ghcr/v2/nginxinc/nginx-unprivileged/manifests/latest
# Google Container Registration Original URL
https://gcr.io/v2/distroless/base/manifests/latest
# After conversion (add cr/gcr prefix)
https://xget.xi-xu.me/cr/gcr/v2/distroless/base/manifests/latest
```
For application scenarios, see [Container Mirror Acceleration] (#Container Mirror Acceleration).
## π― Application Scenarios
### Git Operations and Configuration
#### Git Operation
```bash
# Clone the repository
git clone https://xget.xi-xu.me/gh/microsoft/vscode.git
# Clone the specified branch
git clone -b main https://xget.xi-xu.me/gh/facebook/react.git
# shallow clone (last latest submissions only)
git clone --depth 1 https://xget.xi-xu.me/gh/torvalds/linux.git
# Clone the GitLab repository
git clone https://xget.xi-xu.me/gl/gitlab-org/gitlab.git
# Clone the Git repository
git clone https://xget.xi-xu.me/gitea/gitea/gitea.git
# Clone Codeberg repository
git clone https://xget.xi-xu.me/codeberg/forgejo/forgejo.git
# Clone SourceForge repository
git clone https://xget.xi-xu.me/sf/projects/mingw-w64/code.git
# Clone AOSP repository
git clone https://xget.xi-xu.me/aosp/platform/frameworks/base.git
# Add a remote repository
git remote add upstream https://xget.xi-xu.me/gh/[owner]/[repository].git
# Pull update
git pull https://xget.xi-xu.me/gh/microsoft/vscode.git main
# Submodule recursive cloning
git clone --recursive https://xget.xi-xu.me/gh/[username]/[repository-with-submodules].git
```
#### Git global acceleration configuration
```bash
# Configure Git for a specific domain name using Xget
git config --global url."https://xget.xi-xu.me/gh/".insteadOf "https://github.com/"
git config --global url."https://xget.xi-xu.me/gl/".insteadOf "https://gitlab.com/"
git config --global url."https://xget.xi-xu.me/gitea/".insteadOf "https://gitea.com/"
git config --global url."https://xget.xi-xu.me/codeberg/".insteadOf "https://codeberg.org/"
git config --global url."https://xget.xi-xu.me/sf/".insteadOf "https://sourceforge.net/"
git config --global url."https://xget.xi-xu.me/aosp/".insteadOf "https://android.googlesource.com/"
# Verify configuration
git config --global --get-regexp url
# Now all git clones on related platforms will automatically use Xget
git clone https://github.com/microsoft/vscode.git # Automatically converted to an Xget URL
git clone https://gitlab.com/gitlab-org/gitlab.git # Automatically converted to an Xget URL
git clone https://codeberg.org/forgejo/forgejo.git # Automatically converted to an Xget URL
git clone https://android.googlesource.com/platform/frameworks/base.git # Automatically converted to an Xget URL
```
### Mainstream download tool integration
#### wget download
```bash
# Download a single file
wget https://xget.xi-xu.me/gh/microsoft/vscode/archive/refs/heads/main.zip
# Breakpoint continuous transmission
wget -c https://xget.xi-xu.me/hf/microsoft/DialoGPT-large/resolve/main/pytorch_model.bin
# Batch download
wget -i urls.txt # urls.txt contains multiple Xget URLs
```
#### cURL Download
```bash
# Basic download
curl -L -O https://xget.xi-xu.me/gh/golang/go/archive/refs/tags/go1.22.0.tar.gz
# Show progress bar
curl -L --progress-bar -o model.bin https://xget.xi-xu.me/hf/openai/whisper-large-v3/resolve/main/pytorch_model.bin
# Set up user agent
curl -L -H "User-Agent: MyApp/1.0" https://xget.xi-xu.me/gl/gitlab-org/gitlab-runner/-/archive/main/gitlab-runner-main.zip
```
#### aria2 multi-threaded download
```bash
# Download large files from multiple threads
aria2c -x 16 -s 16 https://xget.xi-xu.me/hf/microsoft/DialoGPT-large/resolve/main/pytorch_model.bin
# Breakpoint continuous transmission
aria2c -c https://xget.xi-xu.me/gh/microsoft/vscode/archive/refs/heads/main.zip
# Download configuration files in batches
aria2c -i download-list.txt # file containing multiple Xget URLs
```
### Hugging Face Mirror
```python
import os
from transformers import AutoTokenizer, AutoModelForCausalLM
# Set environment variables so that the transformers library automatically uses Xget images
os.environ['HF_ENDPOINT'] = 'https://xget.xi-xu.me/hf'
# Define the model name
model_name = 'microsoft/DialoGPT-medium'
print(f"Downloading model from mirror: {model_name}")
# Use AutoModelForCausalLM to load conversation generation models
# Since the environment variable is set above, no additional parameters need to be added here
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
print("Model and tokenizer loaded successfully!")
# You can now use tokenizer and model
# For example:
# new_user_input_ids = tokenizer.encode("Hello, how are you?", return_tensors='pt')
# chat_history_ids = model.generate(new_user_input_ids, max_length=1000, pad_token_id=tokenizer.eos_token_id)
# print(tokenizer.decode(chat_history_ids[:, new_user_input_ids.shape[-1]:][0], skip_special_tokens=True))
```
### Civitai AI Model Platform
```python
import requests
# Setting up API Basic URL Use Xget
base_url = "https://xget.xi-xu.me/civitai"
# Get model information
def get_model_info(model_id):
"""Fetch Civitai model metadata"""
url = f"{base_url}/api/v1/models/{model_id}"
response = requests.get(url)
return response.json()
# Download the model
def download_model(model_version_id, output_path):
"""Download the Civitai model file"""
download_url = f"{base_url}/api/download/models/{model_version_id}"
print(f"Downloading model version {model_version_id}...")
response = requests.get(download_url, stream=True)
response.raise_for_status()
with open(output_path, 'wb') as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
print(f"Model saved to: {output_path}")
# Example of usage
model_id = 7240 # Example model ID
model_info = get_model_info(model_id)
print(f"Model name: {model_info['name']}")
# Download the first model version
if model_info['modelVersions']:
version_id = model_info['modelVersions'][0]['id']
download_model(version_id, f"model_{version_id}.safetensors")
```
### npm package management acceleration
#### Configure npm using Xget mirroring
```bash
# Temporary use of Xget mirrors
npm install --registry https://xget.xi-xu.me/npm/
# Global configuration npm mirroring
npm config set registry https://xget.xi-xu.me/npm/
# Verify configuration
npm config get registry
```
#### Use in the project
```bash
# Configure project-level mirroring in .npmrc file
echo "registry=https://xget.xi-xu.me/npm/" > .npmrc
# Installation dependencies
npm install
# Or use yarn
yarn config set registry https://xget.xi-xu.me/npm/
yarn install
```
### Python package management acceleration
#### Configure pip using Xget mirroring
```bash
# Temporary use of Xget mirrors
pip install requests -i https://xget.xi-xu.me/pypi/simple/
# Global configuration pip mirroring
pip config set global.index-url https://xget.xi-xu.me/pypi/simple/
pip config set global.trusted-host xget.xi-xu.me
# Verify configuration
pip config list
```
#### Use in the project
```bash
# Create a pip.conf file (Linux/macOS)
mkdir -p ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
index-url = https://xget.xi-xu.me/pypi/simple/
trusted-host = xget.xi-xu.me
EOF
# Or create pip.conf in the project root directory
cat > pip.conf << EOF
[global]
index-url = https://xget.xi-xu.me/pypi/simple/
trusted-host = xget.xi-xu.me
EOF
# Install using configuration files
pip install -r requirements.txt --config-file pip.conf
```
#### Specify the image in requirements.txt
```txt
# requirements.txt
--index-url https://xget.xi-xu.me/pypi/simple/
--trusted-host xget.xi-xu.me
requests>=2.25.0
numpy>=1.21.0
pandas>=1.3.0
matplotlib>=3.4.0
```
### conda package management acceleration
#### Configure conda using Xget mirroring
```bash
# Configure the default channel mirroring
conda config --add default_channels https://xget.xi-xu.me/conda/pkgs/msys2
conda config --add default_channels https://xget.xi-xu.me/conda/pkgs/r
conda config --add default_channels https://xget.xi-xu.me/conda/pkgs/main
# Configure all community channel images (recommended)
conda config --set channel_alias https://xget.xi-xu.me/conda/community
# Or configure specific community channels
conda config --add channels https://xget.xi-xu.me/conda/community/conda-forge
conda config --add channels https://xget.xi-xu.me/conda/community/bioconda
# Set channel priority
conda config --set channel_priority strict
# Verify configuration
conda config --show
```
#### Configure in .condarc
The .condarc file can be placed in the user's home directory (`~/.condarc`) or in the project root directory:
```yaml
default_channels:
- https://xget.xi-xu.me/conda/pkgs/main
- https://xget.xi-xu.me/conda/pkgs/r
- https://xget.xi-xu.me/conda/pkgs/msys2
channel_alias: https://xget.xi-xu.me/conda/community
channel_priority: strict
show_channel_urls: true
```
#### Use environment files
The complete image URL can be directly specified in the environment file:
```yaml
# environment.yml
name: myproject
channels:
- https://xget.xi-xu.me/conda/pkgs/main
- https://xget.xi-xu.me/conda/pkgs/r
- https://xget.xi-xu.me/conda/community/bioconda
- https://xget.xi-xu.me/conda/community/conda-forge
dependencies:
- python=3.11
- numpy>=1.24.0
- pandas>=2.0.0
- matplotlib>=3.7.0
- scipy>=1.10.0
- pip
- pip:
- requests>=2.28.0
```
```bash
# Create an environment using environment files
conda env create -f environment.yml
# Update the environment
conda env update -f environment.yml
```
### Maven package management acceleration
#### Configure Maven to use Xget mirroring
```xml