kne

kneesocks

Put some nice SOCKS on your HTTP only program

Showing:

Popularity

Downloads/wk

2

GitHub Stars

67

Maintenance

Last Commit

5yrs ago

Contributors

1

Package

Dependencies

3

Size (min+gzip)

21.1KB

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

kneesocks

npm version build status

Put some nice SOCKS on your HTTP only program

Motivation

Driven by my burning desire to tunnel npm install requests through a SOCKSv5 proxy (eg. shadowsocks). Since npm only support HTTP proxy, I wrote this simple command line module to fire up a HTTP Proxy server, then use it to tunnel requests to my SOCKS proxy.

Features

  • Supports HTTP and HTTPS requests
  • Built-in DNS cache
  • 150 loc, does nothing else

Install

npm install kneesocks --production -g

Usage

kneesocks port1 port2, eg. kneesocks 10001 10002

  • port1 is the port your HTTP proxy server listen to on localhost.
  • port2 is the port of your existing SOCKS proxy, also on localhost.

Then you can set your npm config:

  • npm config set http http://127.0.0.1:10001
  • npm config set https-proxy http://127.0.0.1:10001

To revert proxy config, use npm config delete http and npm config delete https-proxy.

To debug, use DEBUG=proxy kneesocks port1 port2

Limit

  • Node v0.10+ required (Node v0.11+ preferred).
  • Probably not the best solution for day-to-day browsing, due to lack of remote dns and websocket support.
  • If you don't mind building binaries, use DeleGate or Polipo instead.

License

MIT

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial