Skip to content

NOT an issue, just a suggestion #11

@RamzArzFarsi

Description

@RamzArzFarsi

You currently have multiple GitHub directories, each containing a script to easily install a censorship circumvention tool, and you've named these scripts to reference the tool they install (Conduit manager, Torware, paqctl).

Create a new GitHub directory and choose a more general name for it that only references general concepts such as "liberty" or "unrestricted internet access". My suggestion for a name: "FIRE" (which is an acronym for "Fuck Internet Restrictions Everywhere").
This will include a combination of all your scripts.

Here is what the user sees in the FIRE's main menu:

  1. Setup Wizard
  2. Setup as client
  3. Setup as server
  4. Info & Help (General info and FAQ)
  5. Exit

Setup Wizard: Asks the user whether they want to bypass censorship themselves (be a client) or want to help others bypass censorship (be a server).
If the user is a client, it will ask them which country they are in (or auto-detect the user's country based on IP and ask the user to confirm it). Then it will automatically set aside all methods that are known not to work in the user's region, setting up the remaining services. And finally, it cycles through all configured bypassing methods, automatically testing the connection for each, until it finds the method with the best performance and keeps the connection using that method while still keeping other enabled but inactive methods as fallback (in case the current method gets blocked).
If the user is a server, it will present a list of countries where the internet is highly censored (China, Russia, Belarus, Iran, etc.) and ask the user whom (people of which country) they would like to help (multiple choices are allowed). It rearranges the list of bypassing methods based on how effective they are for the country or countries the user wants to help and starts configuring the servers from the top of the list until no further service can be enabled due to system resource limitations (CPU, RAM, and internet bandwidth).

Setup as client: It shows a list of bypassing methods that the user can manually choose from. Any client selected by the user will be installed. The user must manually type in the settings they like to have during the installation dialogue or confirm that they want to use the default value for each setting.
The list would be something like this:

  1. Tor
  2. Psiphon
  3. Lantern
  4. paqet
  5. Slipstream
  6. DNSTT
  7. GFW-Knocker

x. [Any number of other methods you want to add]
c. Auto-Connect (to whatever installed method that works)
u. Uninstall
i. Info & Help (Client-related info and FAQ)
g. Donate (shows your cryptocurrency wallet addresses to receive donations)

  1. Go Back

Setup as server: It shows a list of bypassing methods that the user can manually choose from. Any method selected by the user will be installed as a server. The user must manually type in the settings they like to have during the installation dialogue or confirm that they want to use the default value for each setring.
The list would be something like this:

  1. Tor Relay (entry, middle, exit)
  2. Tor Bridge (obfs4)
  3. Tor Snowflake
  4. Conduit
  5. Unbounded
  6. paqet
  7. Slipstream
  8. DNSTT
  9. GFW-Knocker

x. [Any number of other methods you want to add]
d. Dashboard (summarized stats)
m. Monitoring (in-depth stats)
s. Stop all
r. Restart
n. Reinstall
u. Uninstall
i. Info & Help (Server-related info and FAQ)
g. Donate (shows your cryptocurrency wallet addresses to receive donations)

  1. Go Back

A more comprehensive version of what you've started building is potentially world-changing.
Love your work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions