{"id":13467329,"url":"https://github.com/ycd/dstp","last_synced_at":"2025-04-10T06:16:47.579Z","repository":{"id":38687345,"uuid":"425524682","full_name":"ycd/dstp","owner":"ycd","description":"🧪 Run common networking tests against any site.","archived":false,"fork":false,"pushed_at":"2025-01-11T00:15:10.000Z","size":3547,"stargazers_count":1001,"open_issues_count":0,"forks_count":29,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-06T07:02:07.400Z","etag":null,"topics":["dns","golang","network-monitoring","networking","ping"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ycd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-07T14:24:44.000Z","updated_at":"2025-03-28T03:07:05.000Z","dependencies_parsed_at":"2025-02-12T11:00:33.309Z","dependency_job_id":null,"html_url":"https://github.com/ycd/dstp","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ycd%2Fdstp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ycd%2Fdstp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ycd%2Fdstp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ycd%2Fdstp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ycd","download_url":"https://codeload.github.com/ycd/dstp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248166857,"owners_count":21058481,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dns","golang","network-monitoring","networking","ping"],"created_at":"2024-07-31T15:00:55.134Z","updated_at":"2025-04-10T06:16:47.544Z","avatar_url":"https://github.com/ycd.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003ch1\u003edstp\u003c/h1\u003e\n\n[dstp](https://github.com/ycd/dstp), run common networking tests against your site.\n\n![dstp gif](assets/dstp.png)\n\n\u003c/div\u003e\n\n\n---\n\n## Usage\n\n```\nUsage: dstp [OPTIONS] [ARGS]\nOptions:\n        -a, --addr   \u003cstring\u003e  The URL or the IP address to run tests against      [REQUIRED]\n        -o, --out    \u003cstring\u003e  The type of the output, either json or plaintext    [Default: plaintext] \n        -p           \u003cint\u003e     Number of ping packets                              [Default: 3]\n        -t           \u003cint\u003e     Give up on ping after this many seconds             [Default: 2s per ping packet]\n        --port       \u003cstring\u003e  Port for testing TLS and HTTPS connectivity         [Default: 443]\n        --dns        \u003cstring\u003e  Custom DNS server to use for DNS resolution         [No default]\n        -h, --help             Show this message and exit.\n```\n\n## Motivation\n\nA comment on [lobste.rs](https://lobste.rs/s/qtsklv/how_do_you_tell_if_problem_is_caused_by_dns#c_1nqkdp), in a thread\nabout DNS gave a great idea and thought a robust tool like that might come in handy!\n\n## Installation\n\n### Packages\n\n#### Homebrew\n\nFor Homebrew on macOS, install the [`ycd/tap/dstp`](https://github.com/ycd/homebrew-tap#readme) formula.\n\n```zsh\nbrew install ycd/tap/dstp\n```\n\n#### Go Install\n\n```zsh\ngo install github.com/ycd/dstp/cmd/dstp@latest\n```\n\n#### NixOS/nix\n\nYou can install dstp using one of these methods:\n\n1. Using `nix-shell` or `nix shell` (recommended for trying it out):\n```bash\nnix shell nixpkgs#dstp\n```\n\n2. Adding to your NixOS configuration (system-wide installation):\n```nix\n# configuration.nix or home-manager configuration\n{\n  # ...\n  environment.systemPackages = with pkgs; [\n    dstp\n  ];\n}\n```\n\n3. Or using `nix profile` (for individual user installation):\n```bash\nnix profile install nixpkgs#dstp\n```\n\n#### Arch Linux\n\n```bash\ngit clone https://aur.archlinux.org/dstp.git\ncd dstp\nmakepkg -sri\n```\n\n### Downloads\n\nBinary downloads of example are available from [the releases section on GitHub](https://github.com/ycd/dstp/releases/)\nfor 64-bit Windows, macOS, and Linux targets. They contain the compiled executable.\n\n| platform     |\n| ----------- | \n| [macOS ARM 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Darwin_arm64.tar.gz)\n| [macOS 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Darwin_amd64.tar.gz)\n| [Linux 32-Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Linux_386.tar.gz)\n| [Linux ARM 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Linux_arm64.tar.gz)\n| [Linux 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Linux_amd64.tar.gz)\n| [Windows 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Windows_amd64.zip)\n| [Windows 32 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Windows_386.zip)\n| [Windows ARM 64 Bit](https://github.com/ycd/dstp/releases/download/v0.4.23/dstp_0.4.23_Windows_arm64.zip)\n\n### Installation from source\n\n0. Verify that you have Go 1.17+ installed (The source code uses _( `//go:build` )_ conditional compilation directives\n   that is introduced in Go 1.17.)\n\n   ```\n   $ go version\n   ```\n\n   If `go` is not installed, follow instructions on [the Go website](https://golang.org/doc/install).\n\n1. Clone this repository\n\n   ```\n   $ git clone https://github.com/ycd/dstp \n   $ cd dstp\n   ```\n\n2. Build and install\n\n   #### Unix/Linux\n   ```\n   # May require you to use sudo\n   $ go build cmd/dstp/dstp.go\n   $ cp dstp /usr/local/bin/dstp\n   ```\n\n   #### Mac/BSD\n   ```\n   # May require you to use sudo\n   $ make\n   $ cp dstp /usr/local/bin/dstp\n   ```\n\n3. Verify installation\n\n   ```\n   $ dstp -h \n\n   Usage: dstp [OPTIONS] [ARGS]\n   Options:\n         -a, --addr   \u003cstring\u003e  The URL or the IP address to run tests against      [REQUIRED]\n         -o, --out    \u003cstring\u003e  The type of the output, either json or plaintext    [Default: plaintext]\n         -p           \u003cint\u003e     Number of ping packets                              [Default: 3]\n         -t           \u003cint\u003e     Give up on ping after this many seconds             [Default: 2s per ping packet]\n         --port       \u003cstring\u003e  Port for testing TLS and HTTPS connectivity         [Default: 443]\n         -h, --help             Show this message and exit.\n   ```\n\n---\n\n## Appendix\n\nThe command `dstp` may collide with `docker stop`command if you are using the docker plugin with oh-my-zsh. \n\nTo fix this, you can add the following command at the end of your `.zshrc` file:\n\n```zsh\nunalias dstp\n```\n\n## Contributing\n\nAll kinds of Pull Requests and Feature Requests are welcomed!\n\n## Licence\n\ndstp's source code is licenced under the [MIT License](https://choosealicense.com/licenses/mit/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fycd%2Fdstp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fycd%2Fdstp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fycd%2Fdstp/lists"}