Giter VIP home page Giter VIP logo

go-windows-proxy's Introduction

Go Windows Proxy

Description

I have some bad experience using Windows 10 proxy settings in my old machine and want to make it easy to access either for win 10 or win 11

Current problem with proxy settings :

  • Must search it or find it
  • Must open settings -> Proxy settings
  • Must click windows logo then search for "Proxy Settings"
  • It's hard for non-technical users

Sometimes, I ask why it didn't included direcly in Network / Wi-Fi settings.

So I create my own...

It must be easy to access and to use.

DEBUG

To try this version please build your own version or find the latest releases

go build -o wproxy.exe

Then you can open wproxy.exe

Expect to show the menu list hardcoded

Users can navigate

You can see your proxy status

I have not implement testing here

go-windows-proxy's People

Contributors

wahyusa avatar

Watchers

 avatar

go-windows-proxy's Issues

CLI: Configurable proxy address

Goals

Users can configure their proxy address through a single command or a configuration file.

But not really directly modifying system proxy settings.

TODO

  • Open code editor
  • Create or modify main.go
  • User can set their proxy through command with argument wproxy addr=26.26.26.26:10809
  • User can set their proxy setting ON / OFF (dummy) wproxy on wproxy off or wproxy addr=26.26.26.26:10809 on or similar things as long as it using native Go without external package.
  • Change the "Settings" menu ti "Address" User choose that menu then prompt to input proxy addr, after that user can go back to home to chose ON / OFF

Personal notes

Possible problem to refactor

  • Invalid address/URL
  • Fake status in dummy config wproxy.ini vs Regedit value status, fixed by just add new status `Exact Status | Config Status"

CLI: Create working executable CLI app that show the core feature menu

Goals

Build executable file usually in .exe format that can be opened / run by users then showing the hard coded menu list and proxy status in CLI interface.

TODO

  • Open code editor
  • Create or modify main.go
  • User can choose each menu
  • User can navigate back to home
  • User can choose to exit from menu or CTRL + C
  • Build the project in to executable file
  • Open it and expect it satisfied the task goals

Personal notes

I believe it will using infinite loop.

I must use Golang native and internal package rather than using external package .

But if it takes too much time, better use external package and build fast, ship fast, get feedback fast.

CLI: Showing the app status and proxy status

Goals

Get and show proxy status / address in terminal app.

TODO

  • Open code editor
  • Create or modify main.go
  • User can see their proxy status / address

Personal notes

There is already CLI tools to do this something net blablabla

But I always found that it didn't work, sometimes it didn't change the proxy settings or address.

I already know that proxy address and settings are saved in Windows Registry / regedit.

This might be end up in to just executing specific command to get proxy settings information from windows registry.

Initialize basic project structure

I believe will need to create specific branch for each version.

I plan to have 3 version for this app

  • CLI Version
  • Tray Based App
  • GUI App

I will start with the easiest one CLI based app.

Then it will be like this for now:

Branch: cli => Main CLI Version
Branch: cli-dev => Development branch for CLI Version

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.