diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/404.html b/404.html new file mode 100644 index 000000000..0966533ef --- /dev/null +++ b/404.html @@ -0,0 +1,3750 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + ++ In Iran, internet access is heavily censored, even more so after Mahsa + Amini's death and + subsequent protests. + Consequently, everyday individuals have faced restrictions in accessing the open internet since then. +
++ The Hiddify project aims to provide people with straightforward and affordable ways to access the + unrestricted + internet on a broad scale. +
++ Our developers bring our vision to life through Hiddify + Manager and Hiddify app. +
++ Our designers create stunning visuals and improve the UX of Hiddify products through usability testing. +
++ We curate engaging and informative content including our + comprehensive Wiki & YouTube tutorials. +
++ We are always available to help answer your questions in our Telegram group. +
++ We are always looking for specialists to help make Hiddify better. Please send us your resume. +
++ Join our dynamic development team! We're actively seeking Python, Kotlin, and Flutter developers to + innovate + with us. Shape the future of technology—let's build it together. +
++ Are you skilled in creating captivating videos for YouTube, adept at video editing, and passionate about + crafting visually stunning content for social channels? We want you to be part of our journey in + redefining + creativity. +
++ Elevate user experiences with our design team! We're in search of a UX/UI design expert to play a + pivotal + role in enhancing user interactions across our diverse range of Hiddify products. If you have a keen eye + for + design, a passion for improving user journeys, and expertise in UX/UI, we want you to be a part of our + creative force. +
+
+ The easiest way to support us is to click on the star (⭐)
at the top of our
+ GitHub page.
+
+ We also need financial support for our services. All of
our activities are
+ done
+ voluntarily and
+ financial
+ support
will be spent on the development of the project.
+ To contribute, please visit our donation page on GitHub.
+
optional title
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+abstract
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+info
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+tip
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+success
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+question
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+warning
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+failure
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+danger
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+bug
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+example
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+quote
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod +nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor +massa, nec semper lorem quam in massa.
+inline end info
+Lorem ipsum dolor sit amet, consectetur +adipiscing elit. Nulla et euismod nulla. +Curabitur feugiat, tortor non consequat +finibus, justo purus auctor massa, nec +semper lorem quam in massa.
+Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat
+inline bug
+Lorem ipsum dolor sit amet, consectetur +adipiscing elit. Nulla et euismod nulla. +Curabitur feugiat, tortor non consequat +finibus, justo purus auctor massa, nec +semper lorem quam in massa.
+Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat +Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat +Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat +Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat +Lorem ipsum dolor sit amet, consectetur + adipiscing elit. Nulla et euismod nulla. + Curabitur feugiat, tortor non consequat
+Lorem ipsum dolor sit amet, (1) consectetur adipiscing elit.
+Lorem ipsum dolor sit amet, (1) consectetur adipiscing elit.
+Phasellus posuere in sem ut cursus (1)
+Lorem ipsum1 dolor sit amet, consectetur adipiscing elit.2
+def bubble_sort(items):
+ for i in range(len(items)):
+ for j in range(len(items) - 1 - i):
+ if items[j] > items[j + 1]:
+ items[j], items[j + 1] = items[j + 1], items[j] # (1)!
+
tabs in block
+ +Remove :
from the second row to align to left or right
Method | +Description | +
---|---|
GET |
+Fetch resource | +
PUT |
+Update resource | +
DELETE |
+Delete resource | +
graph LR
+ A[Start] --> B{Error?};
+ B -->|Yes| C[Hmm...];
+ C --> D[Debug];
+ D --> B;
+ B ---->|No| E[Yay!];
+sequenceDiagram
+ autonumber
+ Alice->>John: Hello John, how are you?
+ loop Healthcheck
+ John->>John: Fight against hypochondria
+ end
+ Note right of John: Rational thoughts!
+ John-->>Alice: Great!
+ John->>Bob: How about you?
+ Bob-->>John: Jolly good!
+stateDiagram-v2
+ state fork_state <<fork>>
+ [*] --> fork_state
+ fork_state --> State2
+ fork_state --> State3
+
+ state join_state <<join>>
+ State2 --> join_state
+ State3 --> join_state
+ join_state --> State4
+ State4 --> [*]
+classDiagram
+ Person <|-- Student
+ Person <|-- Professor
+ Person : +String name
+ Person : +String phoneNumber
+ Person : +String emailAddress
+ Person: +purchaseParkingPass()
+ Address "1" <-- "0..1" Person:lives at
+ class Student{
+ +int studentNumber
+ +int averageMark
+ +isEligibleToEnrol()
+ +getSeminarsTaken()
+ }
+ class Professor{
+ +int salary
+ }
+ class Address{
+ +String street
+ +String city
+ +String state
+ +int postalCode
+ +String country
+ -validate()
+ +outputAsLabel()
+ }
+Text can be deleted and replacement text added. This can also be
+combined into onea single operation. Highlighting is also
+possible and comments can be added inline.
Formatting can also be applied to blocks by putting the opening and closing +tags on separate lines and adding new lines between the tags and the content.
+ +Text can be deleted and replacement text added. This can also be
+combined into onea single operation. Highlighting is also
+possible and comments can be added inline.
Formatting can also be applied to blocks by putting the opening and closing +tags on separate lines and adding new lines between the tags and the content.
+ +Ctrl+Alt+Del
+Set up in 5 minutes
+Install mkdocs-material
with pip
and get up
+and running in minutes
It's just Markdown
+Focus on your content and generate a responsive and searchable static site
+ +Made to measure
+Change the colors, fonts, language, icons, logo and more with a few lines
+ +Open Source, MIT
+Material for MkDocs is licensed under MIT and available on [GitHub]
+ +Search icons from https://squidfunk.github.io/mkdocs-material/reference/icons-emojis/
++
++Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor massa, nec semper lorem quam in massa.
+ +Vivamus id mi enim. Integer id turpis sapien. Ut condimentum lobortis + sagittis. Aliquam purus tellus, faucibus eget urna at, iaculis venenatis + nulla. Vivamus a pharetra leo.
+Vivamus venenatis porttitor tortor sit amet rutrum. Pellentesque aliquet + quam enim, eu volutpat urna rutrum a. Nam vehicula nunc mauris, a + ultricies libero efficitur sed.
+Morbi eget dapibus felis. Vivamus venenatis porttitor tortor sit amet + rutrum. Pellentesque aliquet quam enim, eu volutpat urna rutrum a.
+Nulla et rhoncus turpis. Mauris ultricies elementum leo. Duis efficitur + accumsan nibh eu mattis. Vivamus tempus velit eros, porttitor placerat nibh + lacinia sed. Aenean in finibus diam.
+Lorem ipsum dolor sit amet, consectetur adipiscing elit
+This app is developed for cases where there is no desktop, such as servers, and it supports all processors.
+To download this app, go to here and download the file related to your processor.
+To use it, the following command should be used.
+ +Here, put your desired configuration instead of <config file>
.
Put your subscription link here instead of <sublink>
.
For this, you must first extract the settings related to your HiddifyApp.
+Extract HiddifyApp settings
Config Options
and click the three-dot menu.Export Settings to Clipboard
option to save the settings to the clipboard.Now you can save these settings in a file with json
extension.
You can also put these settings in Github and use its link as URL
.
Here, put your config file or sublink instead of <config file or sublink>
and enter the configuration file related to HiddifyApp that you extracted in the previous step instead of <HiddifyApp config file>
.
Here, put your config file or sublink instead of <config file or sublink>
and put the link of the desired settings in HiddifyApp instead of <HiddifyApp config URL>
.
In another article, we explained how to download and install HiddifyCli on an OpenWrt router. In this article, we will guide you on enabling free internet access for the clients behind that router.
+There are two main methods to allow clients behind the router to use free internet:
+If you want devices connected to the router (like laptops, phones, and other devices) to use the proxy 127.0.0.1:12334, you can configure the following settings to make this proxy accessible as a central service for the entire network.
+The proxy 127.0.0.1:12334 configured on the router is, by default, only accessible on the router itself. To allow clients to access it, the port must be opened on the router’s LAN interface.
+You need to direct incoming traffic on this port to the proxy:
+iptables -t nat -A PREROUTING -i br-lan -p tcp --dport 12334 -j DNAT --to-destination 127.0.0.1:12334
+iptables -A FORWARD -i br-lan -p tcp --dport 12334 -j ACCEPT
+
Explanation:
+br-lan
: The LAN interface of the router.12334
: HiddifyCli proxy port.
Save the Iptables Rules:
+To save and apply the rules after every reboot, run the following command:
+ +Connected devices need to configure manual proxy settings. Follow these steps for different platforms:
+192.168.1.1
).12334
.Save the settings.
+Android:
+192.168.1.1
).12334
.Save the settings.
+iOS:
+12334
as the Port.Save the settings.
+macOS:
+192.168.1.1
).12334
.To verify the proxy settings: +- Open a web browser on the client device and attempt to access a website that is otherwise blocked without a proxy. +- If successful, the configuration was applied correctly.
+PAC File URL:
+ +The PAC file allows you to define routes and exceptions for using the proxy.
+To route all internet traffic through Socks5 Proxy, you can use tools like redsocks
or iptables
. Follow these steps:
First, install the necessary tools. redsocks
is used to route traffic through the Socks5 Proxy.
Create a configuration file for redsocks
at /etc/redsocks.conf
:
Add the following content:
+base {
+log_debug = off;
+log_info = on;
+log = "syslog:daemon";
+daemon = on;
+user = "nobody";
+group = "nogroup";
+redirector = iptables;
+}
+
+redsocks {
+local_ip = 127.0.0.1;
+local_port = 12345; # Local port for proxy traffic
+ip = 127.0.0.1; # Socks5 server address
+port = 12334; # Socks5 server port
+type = socks5;
+}
+
Explanation:
+- local_ip
and local_port
: Redsocks listens here for traffic.
+- ip
and port
: Address and port of the Socks5 Proxy.
Create a script named redsocks-routing
in /etc/init.d/
:
Add the following content to the script:
+#!/bin/sh /etc/rc.common
+START=99
+STOP=10
+
+start() {
+iptables -t nat -N REDSOCKS
+iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
+iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
+iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
+iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
+iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345
+
+iptables -t nat -A OUTPUT -p tcp -j REDSOCKS
+iptables -t nat -A PREROUTING -p tcp -j REDSOCKS
+}
+
+stop() {
+iptables -t nat -F REDSOCKS
+iptables -t nat -X REDSOCKS
+}
+
Enable and start the script:
+ +Enable and start redsocks
:
To apply the changes, reboot the router:
+ +Check if redsocks
is working:
+- Check process status:
By following these configurations: +1. Proxy Method: Clients behind the router can manually use the proxy for free internet. +2. Routing Method: All TCP traffic from the router and connected clients is routed through the Socks5 Proxy.
+For UDP traffic, additional tools like dns2socks
or advanced redsocks
settings may be required.
For this, you just need to install git on your system.
+Open one of the following based on your operating system.
+Install git on Windows
Then unzip the downloaded file and install it.
+Then follow the installation wizard to the end with Next
and Yes
. It is recommended not to change the default settings.
By default, the installation location of git
is in this path.
C:/Program Files/Git
It means that in the next stages, the projects will be placed in this direction. The work is done.
+To check the version of git
installed, open command prompt
and run the following command.
git
is installed in the user's Home
folder.Install git on Mac
git
version, open the terminal and run the following command.
+Install git on Linux
In most distributions of the Linux operating system, git is installed by default and you do not need to do anything special. But if you need to install it for any reason, you should search and find the appropriate command for that distribution. Next is the installation command related to the famous Ned distribution.
+Debian/Ubuntu +
+Fedora +
+Arch +
+In all distributions, git is installed in the Home
path of the user.
+- Run this command to check the version of git installed in the terminal.
+
git
to develop Hiddify appfork
the project. For this, if you intend to fork
the project, execute the following command.Hiddify-develop
. Now run the following commands.
+
+- Now apply your desired changes to the files using any tool. It is recommended to use VSCode
.
+- Do not forget that the path of all the files in the mentioned folders is in the installation stage.
+- Now, when you have applied your desired changes, you must also register the changes in git
. Therefore, run the following commands in the terminal in order.
+- First, announce the changes to git
with the following command.
+
+There is no problem if the explanations of this section are many, and by the way, it is recommended that the explanations be as complete and comprehensive as possible.
+At this point, the changes have been successfully imported into the git
system. Now you need to push the changes to GitHub
. To do this, run the following command.
Here, your GitHub account details will be asked. You need to enter your username
and password
on GitHub.
https://github.com/<your_username>/hiddify-app
banner
that informs you that your branch
is one step ahead of the main project. To merge
the changes with the main project, click Contribute
and Open a pull request
.The app is developed using Flutter and Go. For more information you can read through our Contribution Guidelines for development.
+ +This app is a multi-platform client based on Sing-box that serves as a universal proxy toolchain. This app offers a wide range of capabilities. It also supports a large number of protocols. The app is free to use, ad-free, and open-source. It provides a secure and private tool for getting access to the free internet.
+🚀 Supporting a wide range of protocols such as: +ECH, Sing-box, V2ray, Xray, Vless, Vmess, Trojan, Reality, gRPC, WebSocket, Quic, TUIC, Hysteria, Hysteria2, Shadowtls, SSH, Clash, Clash meta
+🟡 Supporting different subscription links like: Clash, Sing-box, Shadowsocks
+ +For reading the tutorial follow this article.
+Choose one of the following based on your operating system.
+Install on Windows (click)
First download the program from here.
+Now run the downloaded file. This Windows security message will appear and you must click Yes
.
More info
.Run Anyway
to open the file.Next
.Next
.Install
to start installing the program.Finish
.Now the program is running. If it does not run, run its shortcut on the desktop.
+The first time it will ask you for your language and location settings. Click on Language
to change the language and click on Region
to change the region and choose the options you want and run the program.
Enable Analytics
help us collect data to improve the app
In the next step, the program will open.
+++Note: As you know, Windows 7 is no longer supported by Microsoft. Therefore, you may encounter problems when installing this program on Windows 7. It is possible that your problem will be solved by installing this package, but if you still could not install the program, we recommend using Windows 10 with 64-bit architecture.
+
Install on Mac (click)
First, download the program from here.
+Then find the downloaded file in Downloads
and open it.
Applications
. With this, the application file will be transferred to the Applications
section.Applications
. Double click on it to run.App Store
.Security and Privacy
section and click Open Anyway
in the General
tab.Open
.Applications
section again and open the program easily.Language
to change the language and click on Region
to change the region and choose the options you want and run the program.Enable Analytics
help us collect data to improve the app
The program opens like this.
+Applications
section.Install on Linux (click)
Assume that the downloaded file is in Downloads in the Home folder, so run the following command.
+ +rwxr-xr-x 1 user user 26272960 Sep 30 07:55 ~/Downloads/hiddify-linux-x64.AppImage
It means that it has x or executable permission and you can run it easily. Otherwise, you can run the following command in the terminal to add executive access.
+Language
to change the language and click on Region
to change the region and choose the options you want and run the program.Enable Analytics
help us collect data to improve the appIn order to know how to use this app please take a look at this article.
+This app is a multi-platform client based on Sing-box that serves as a universal proxy toolchain. This app offers a wide range of capabilities. It also supports a large number of protocols. The app is free to use, ad-free, and open-source. It provides a secure and private tool for getting access to the free internet.
+🚀 Supporting a wide range of protocols such as: +ECH, Sing-box, V2ray, Xray, Vless, Vmess, Trojan, Reality, gRPC, WebSocket, Quic, TUIC, Hysteria, Hysteria2, Shadowtls, SSH, Clash, Clash meta
+🟡 Supporting different subscription links like: Clash, Sing-box, Shadowsocks
+ +For reading the tutorial follow this article.
+For installing this app please take a look at this article.
+Tap to Start Anti-Filter
, the link related to your profile will be loaded in the app.Copy Link
to copy the profile link.+
button on the top left on the Home
menu, so that the page of adding a new profile appears.++Method 1: Click
+Add from clipboard
. The copied link will be added automatically.
++Method 2: Click on
+Add manually
, on the next page enter a desired name in theName
field and copy the link in theURL
field. Then hit theSave
button.
All Configs
.Copy
to copy the config.Add from clipboard
.Home
page.Proxies
menu.On this page, the proxies or configs related to the profile, are displayed or you can see the individual configs added to the software.
+The VPN automatically connects to the best proxy based on the test, but you can also choose the desired proxy manually.
+Settings
menu, you can see the General
settings.Language
menu.Theme Mode
you can choose your desired theme from dark, light or device mode.Pure Black
button makes the device theme deeply black.Start on Boot
button is used to run the program when the operating system starts up for the first time.Silent Start
button causes a window not to be displayed when the software is running, and the software is only displayed in the bottom toolbar after execution.Opening the app with admin privilege on Windows
+- If the program was previously open with non-admin privilege, close the program. That is, right-click on the program icon in the lower toolbar and click Exit
.
+- Now, on the desktop or in the list of Start
programs, right-click on the program icon and click Run as administrator
.
Opening the app with admin privilege on Mac
Exit
.Applications
. Right click on the program icon and click Show contents
.MacOS
folder and grab the HiddifyNext
file and drop it on the terminal. With this, the address of this file will be placed in the terminal.ctrl+a
to go to the start of the line in terminal. Now type sudo
. For example, you will havesudo \Applications\HiddifyNext.app\Contents\MacOS\HiddifyNext
Enter
to run the program with admin privilege.Opening the app with root privilege on Linux
Exit
.Downloads
folder in Home
, then execute the following command to run the program with root privilege.++Note: If the program is in a different path, change the above command accordingly.
+
Settings
menu.Config Options
in the Advanced
section.Enable TUN
button.Home
menu and tap the Connect button
until it turns green.To install HiddifyCli on OpenWrt, follow all the steps below in order. This guide includes downloading, extracting, installing, and full configuration.
+To download the version suitable for your router’s architecture, use the following command for direct download:
+Explanation:
+{ARCH}
with your router’s architecture (e.g., mips
, arm
, or x86_64
). After downloading, extract the file using the following command:
+ +Command Explanation:
+x-
extracts the file. v-
displays extraction details. z-
opens gzip-compressed files. f-
specifies the file name. /tmp/
is the extraction path (you can replace it with your preferred directory). Move the HiddifyCli
executable file to /usr/bin/
using:
To enable execution for the file, enter the following command:
+ + +To create an automatic service:
+1. Create a file named HiddifyCli
in /etc/init.d/
:
Run the following commands to enable and start the service:
+ + +Rename the file extension to .conf
(e.g., config.conf
).
Move the Config File to /root/
on the Router:
Restart the router to apply the changes:
+ + +After rebooting, the HiddifyCli service will be active, and the Socks5 Proxy will be available at:
+ + +In another article, we will explain how to enable free internet access for clients behind the router.
+ +Recently, a feature called UDP Turn Relay is used in messengers to bypass filtering. That is, in this case, messengers are used as intermediate servers (relay) and traffic is sent to the main server through them. This can be used for messengers that are active inside Iran and support this protocol, or for foreign messengers that are not filtered. The diagram of free internet connection in this case is as follows.
+Note that this feature only works for configurations that are on the UDP protocol. This means that this feature can be used on Hysteria2 or TUIC v5, but it cannot be used for reality.
+To use it, just put the parameters of that messenger at the end of your config link according to the command below.
+ +Where user
is the username to connect to the protocol in the desired messenger. pass
is also the password for this account in that messenger. Also, host
is the host-name for connecting to the messenger, and port
is the port for connecting to the messenger. The realm
parameter is related to the authentication area inside the host-name. That is, which area of the messenger can be authenticated with this account.
For example, in Bale messenger (an Iranian Messenger), these parameters are as follows.
+ +First, you convert this information to UTF-8 using an Encoder. For example, you can use this Encoder, the output of which is as follows:
+ +Now if we have a hysteria configuration based on UDP as follows:
+hysteria2://87543215-15ac-54f6-3895-34e4e931f5b4@45.120.34.46:11464?hiddify=1&obfs=salamander&obfs-password=bdgf!huy678559j89GrTu&sni=www.speedtest.net&insecure=1#test
+
Finally, we add the encoded information related to the relay (messenger) at the end of the hysteria link. For this, we first put an &
and copy the link exactly before #
as below:
hysteria2://87543215-15ac-54f6-3895-34e4e931f5b4@45.120.34.46:11464?hiddify=1&obfs=salamander&obfs-password=bdgf!huy678559j89GrTu&sni=www.speedtest.net&insecure=1&relay=turn%3A%2F%2Fbalelivekit%3AGygZPHQSgAV7L5L8%40meet-turn.bale.sh%3A443%3Frealm%3Dbale.ai#test
+
You can import this link in the Hiddify-Next program and because this program supports the UDP Turn Relay protocol, you can use this feature.
+NOTE!
+Bale messenger disabled the said feature after a short time. Based on the contents explained above, you should find a messenger that supports this feature from the list of internal messengers of Iran or non-filtered external messengers.
+WARP is a service based on WireGuard provided by Cloudflare. By using this protocol, you can bypass the filtering system through creating a proxy. The HiddifyApp also supports this protocol. Below are the instructions for setting up and using this protocol.
+In the HiddifyApp, various parameters can be set, which are explained in order below.
+There are 6 main modes and 2 advanced modes that create a header (noise) for WARP to help bypass filtering.
+These headers are defined with the IFPM parameter in WARP. For example: ifpm=m4
or ifpm=h04ad5d
or ifpm=g04ad5d
Tip
+The recommended mode is m4
.
These parameters are as follows:
+ifp
, which is defined as a range, and each time a random number within this range is selected. For example: ifp=40-80
means between 40 to 80 noise packets are created randomly.ifps
parameter, which is also defined as a range, and each time a random size within this range is selected. For example: ifps=40-100
means each time a noise packet with a random size between 40 to 100 bits is created.ifpd
parameter, which is also defined as a range, and each time the packets are sent with a random delay within this range. For example: ifpd=4-8
means the packets are sent with a random delay between 4 to 8 seconds. Obviously, the smaller this range, the better.IP configuration settings are done in several ways:
+188.114.97.170
[]
. For example: [2a01:4ef:f0:10a5::1]
To create a display name or remark the config, a #
can be used at the end of the config followed by the desired name. The name should be a single piece. For example:
warp://auto#NAME
With this feature, you can use two different WARPs and place one at the end of the other. In this way, you first connect to the first WARP, then connect to the second WARP from there, and the final IP becomes the IP of the second WARP. To use this feature, the detour
parameter should be used, and it should be added at the end of the first WARP with &&
, followed by the second WARP. For example:
warp://auto&&detour=WARP://auto
The WARP config can be built using this formula. In this case, a fixed config is imported into the software.
+warp://License@IP:port?ifp=n1-n2&ifps=s1-s2&ifpd=d1-d2&ifpm=mode#name
Example:
+warp://auto?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m4#m4
In this case, a WARP config with the display name m4
is imported into the software.
You can also detour two WARPs. For example:
+warp://auto?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m4#m4&&detour=WARP://188.114.97.170:894?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m3#m3
In this case, a config with the name m4
and a detoured config for WARP in WARP (WoW) with the name m3
is created in the software.
Finally, it is recommended to check out sample WARP configs from here and here.
+Final Tip
+We extend the protocol defined here.
+Supports quick import of configuration files using URL Scheme:
+ +<sublink>
is either clash link, singbox link, v2ray sublink, or single proxy link
hiddify://import/https://hiddify.com/autosub#name
+hiddify://import/trojan://your_password@aws-ar-buenosaires-1.f1cflineb.com:443#name
+
# http_WS_direct_vless تست
+vless://64177752-4266-4e00-94e3-1b8ececc6623@ip.sslip.io:80?security=none&sni=ip.sslip.io&type=ws&alpn=http/1.1&path=/2LBLzR6NsjNkCN830caotU&host=ip.sslip.io&encryption=none&fp=chrome&headerType=None#http_WS_direct_vless_تست
+
+# http_WS_direct_vmess تست
+vmess://64177752-4266-4e00-94e3-1b8ececc6623@ip.sslip.io:80?security=none&sni=ip.sslip.io&type=ws&alpn=http/1.1&path=/2LBLzR6NsjNkCN830caotU&host=ip.sslip.io&encryption=none&fp=chrome&headerType=None#http_WS_direct_vless_تست
+
+
+# ssconfig
+ssconf://s3.amazonaws.com/beedynconprd/ng4lf90ip01zstlyle4r0t56x1qli4cvmt2ws6nh0kdz1jpgzyedogxt3mpxfbxi.json#BeePass",
+
+# Reality
+vless://409f106a-b2f2-4416-b186-5429c9979cd9@54.38.144.4:2053?encryption=none&flow=&fp=chrome&pbk=SbVKOEMjK0sIlbwg4akyBg5mL5KZwwB-ed4eEE7YnRc&security=reality&serviceName=xyz&sid=&sni=discordapp.com&type=grpc#رایگان | REALITY | @EliV2ray | FR🇫🇷 | 0️⃣1️⃣
+
+# Vless
+vless://25da296e-1d96-48ae-9867-4342796cd742@172.67.149.95:443?encryption=none&fp=chrome&host=vless.229feb8b52a0e7e117ea76f8b591bcb3.workers.dev&path=%2F%3Fed%3D2048&security=tls&sni=vless.229feb8b52a0e7e117ea76f8b591bcb3.workers.dev&type=ws#رایگان | VLESS | @Helix_Servers | US🇺🇸 | 0️⃣1️⃣
+
+# Vmess
+vmess://eyJhZGQiOiI1MS4xNjEuMTMwLjE3MyIsImFpZCI6IjAiLCJhbHBuIjoiIiwiZnAiOiIiLCJob3N0IjoiIiwiaWQiOiJkNDNlZTVlMy0xYjA3LTU2ZDctYjJlYS04ZDIyYzQ0ZmRjNjYiLCJuZXQiOiJ0Y3AiLCJwYXRoIjoiIiwicG9ydCI6IjgwODAiLCJzY3kiOiJjaGFjaGEyMC1wb2x5MTMwNSIsInNuaSI6IiIsInRscyI6IiIsInR5cGUiOiJub25lIiwidiI6IjIiLCJwcyI6Ilx1MDYzMVx1MDYyN1x1MDZjY1x1MDZhZlx1MDYyN1x1MDY0NiB8IFZNRVNTIHwgQFdhdGFzaGlfVlBOIHwgQVVcdWQ4M2NcdWRkZTZcdWQ4M2NcdWRkZmEgfCAwXHVmZTBmXHUyMGUzMVx1ZmUwZlx1MjBlMyJ9"
+
+# ss
+ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTp0T3dPeXZsWGlZNUFUSkFVT3BYTlBO@5.35.34.107:55990#%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86+%7C+SS+%7C+%40iP_CF+%7C+RU%F0%9F%87%B7%F0%9F%87%BA+%7C+0%EF%B8%8F%E2%83%A31%EF%B8%8F%E2%83%A3"
+
+# TUIC
+tuic://3618921b-adeb-4bd3-a2a0-f98b72a674b1:dongtaiwang@108.181.24.7:23450?allow_insecure=1&alpn=h3&congestion_control=bbr&sni=www.google.com&udp_relay_mode=native#رایگان | TUIC | @V2rayCollector | CA🇨🇦 | 0️⃣1️⃣
+
+# Hysteria1
+hysteria://host:443?protocol=udp&auth=123456&peer=sni.domain&insecure=1&upmbps=100&downmbps=100&alpn=hysteria&obfs=xplus&obfsParam=123456#remarks",
+
+# Hysteria2
+hysteria2://letmein@example.com/?insecure=1&obfs=salamander&obfs-password=gawrgura&pinSHA256=deadbeef&sni=real.example.com
+
+# SSH
+ssh://user:pass@server:22/?pk=pk&hk=hk"
+
+# Trojan
+trojan://your_password@aws-ar-buenosaires-1.f1cflineb.com:443?host=aws-ar-buenosaires-1.f1cflineb.com&path=%2Ff1rocket&security=tls&sni=aws-ar-buenosaires-1.f1cflineb.com&type=ws#رایگان | TROJAN | @VmessProtocol | RELAY🚩 | 0️⃣1️⃣"
+
+#Wireguard
+wg://[server]:222/?pk=[private_key]&local_address=10.0.0.2/24&peer_pk=[peer_public_key]&pre_shared_key=[pre_shared_key]&workers=[workers]&mtu=[mtu]&reserved=0,0,0
+
#normal exmaple
+hiddify://import/https://raw.githubusercontent.com/yebekhe/TelegramV2rayCollector/fe3637db4ece53e56ac99ea09dbefa34466f280f/sub/normal/mix
+
+#base64 example
+hiddify://import/https://raw.githubusercontent.com/yebekhe/TelegramV2rayCollector/fe3637db4ece53e56ac99ea09dbefa34466f280f/sub/base64/mix
+
hiddify://import/https://raw.githubusercontent.com/yebekhe/TelegramV2rayCollector/fe3637db4ece53e56ac99ea09dbefa34466f280f/singbox/sfasfi/mixLite.json
+
hiddify://import/https://raw.githubusercontent.com/yebekhe/TelegramV2rayCollector/d6ce7b907eeb58abf503c283af192e7bc915d143/clash/mix.yml
+
We use the first item from the following list if it is not empty or null
+.txt
.json
.yaml
or .yml
will be removedYou can use base64 encoded UTF8 name for profile title that allows you to have emoji in profile title 😍 +However you use also the ascii name in the header. Example:
+ +It will show the profile title asI ❤️ Hiddify
+
+It will show the profile title as I love Hiddify
+If the Profile-Title
is not set for backward compatibility with clash configs we use the value corresponding to filename
as the configuration file name, otherwise use the last part of the URL as the configuration file name. Any .txt
, .yaml
or .yml
will be removed
If there is a profile-update-interval
field in the response header, the configuration file automatic update interval is set to the corresponding value, in hours
If the subscription-userinfo
field exists in the response header, its corresponding traffic and expiration information will be displayed in the Profiles module, specification reference here
subscription-userinfo: upload=455727941; download=6174315083; totl=1073741824000; expire=1671815872
+
If the profile-web-page-url
field exists in the response header, the Open web page
option will be displayed in the profile, allowing the user to jump to the corresponding portal home page
If the support-url
field exists in the response header, the support
option will be displayed in the profile, allowing the user to jump to the corresponding portal home page
If the moved-permanently-to
field exists in the response header, this will update the subscription url. It is useful when your sublink is blocked or you want to change the domain.
If the DNS
field exists in the response header, and the user did not set his/her own preferred DNS, the application will use this DNS server. (In the clash profile this setting can be override)
In this example: +
پروفایل یک = <name>
+usage=<download>+<upload> (if more than 80% of total :yellow, more than 100% :red)
+total=<total>
+روزباقیمانه=relative date of <expire> (if less than 7 days: yellow, less than zero: red)
+مشاهده= open browser with <profile-web-page-url>
+
The usage information will be fetched by HEAD option whenever user open the application or every 1 minute (when user is focused in the application) +If any of those fields are empty the corresponding data will not be shown.
+You can add headers in the first 10 lines of the file with skip characters such as //
for json or #
for Yaml and sub links
E.g.,
+#profile-title: Hiddify
+#profile-title: base64:base64string
+#profile-update-interval: 1
+#subscription-userinfo: upload=455727941; download=6174315083; total=1073741824000; expire=1671815872
+#support-url: https://t.me/hiddify
+#profile-web-page-url: https://hiddify.com
+
If you want to use Fragment in your links, you have to consider the following parameters
+ +For example, you just need to put the following information in your links
+&fragment=10-100,100-200,hellotls
If you want to setup Mux parameters in your link
+mux : "smux/h2mux/yamux"
+mux_max : "number" e.g. 6
+mux_min : "number" e.g. 2
+mux_pad : "true/false"
+mux_down : "number in mbps" e.g. 100
+mux_up : "number in mbps" e.g. 200
+
Here:
+mux
can be one of smux
, yamux
, h2mux
mux_max
is the maximum number of connections.
mux_min
is the minimum number of streams.
mux_pad
is a true or false parameter which turns on or off this feature on MUX. It Should be the same with the server.
mux_down
is the download bandwidth for MUX in mbps.
mux_up
is the upload bandwidth for MUX in mbps.
Example: mux=smux&mux_max=4&mux_min=0&mix_pad=false&mux_up=10&mux_down=10
test
+test2
+ +Hiddify is a VPN client app that serves as a +universal proxy tool-chain which offers a wide +range of features and protocols. The appropriate and detailed information are accessible here. This page +contains +tutorial guides related to this project.
++ HiddifyApp is a client based on Sing-box that serves as a + universal proxy tool-chain which offers a wide + range + of features and protocols. The appropriate and detailed information are accessible here. This page + contains + tutorial guides related to this project. +
+HiddifyApp is a client based on Sing-box that serves as a universal proxy tool-chain which offers a wide range of features and protocols. The appropriate and detailed information are accessible here. This page contains tutorial guides related to this project.
+{"use strict";/*!
+ * escape-html
+ * Copyright(c) 2012-2013 TJ Holowaychuk
+ * Copyright(c) 2015 Andreas Lubbe
+ * Copyright(c) 2015 Tiancheng "Timothy" Gu
+ * MIT Licensed
+ */var _a=/["'&<>]/;Pn.exports=Aa;function Aa(e){var t=""+e,r=_a.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i