Rename the project after the web service that it uses
2
.github/workflows/build.yml
vendored
|
@ -1,4 +1,4 @@
|
|||
name: photon
|
||||
name: myip.wtf
|
||||
|
||||
on:
|
||||
push:
|
||||
|
|
2
.github/workflows/tests.yml
vendored
|
@ -1,4 +1,4 @@
|
|||
name: photon
|
||||
name: myip.wtf
|
||||
|
||||
on:
|
||||
push:
|
||||
|
|
53
README.md
|
@ -1,52 +1,39 @@
|
|||
## About
|
||||
|
||||
Photon is a Chromium extension that provides information about
|
||||
the public IP address you are using to connect to the internet. When
|
||||
the extension's icon is clicked, the extension makes a request to the
|
||||
[clean.wtfismyip.com](https://clean.wtfismyip.com)
|
||||
web service to discover information about your public IP address, and
|
||||
then displays that information in a simple HTML view.
|
||||
myip.wtf relays information about your public IP address
|
||||
from
|
||||
[clean.myip.wtf.com/json](https://clean.myip.wtf.com/json)
|
||||
to your browser.
|
||||
|
||||
## Features
|
||||
## Demo
|
||||
|
||||
* Displays a public IP address.
|
||||
* Displays the Internet Service Provider (ISP) associated with a public IP address.
|
||||
* Displays the city associated with a public IP address.
|
||||
* Displays the country associated with a public IP address.
|
||||
* Displays whether or not a public IP address is a Tor exit node.
|
||||
<p>
|
||||
<img src="https://raw.githubusercontent.com/0x1eef/myip.wtf/main/share/myip.wtf/myip.wtf.png">
|
||||
</p>
|
||||
|
||||
## Install
|
||||
|
||||
Produce the "build" directory:
|
||||
* Produce the `build/` directory
|
||||
|
||||
git clone https://github.com/0x1eef/photon.git
|
||||
cd photon
|
||||
git clone https://github.com/0x1eef/myip.wtf
|
||||
cd myip.wtf
|
||||
npm i
|
||||
npm run build
|
||||
|
||||
Add the extension to Chrome:
|
||||
|
||||
* Visit `chrome://extensions`.
|
||||
* Check "Developer mode" (top right hand corner).
|
||||
* Click "Load unpacked extension".
|
||||
* Choose the "build/" directory from the file dialog.
|
||||
* Done.
|
||||
* Load the extension
|
||||
* Visit `chrome://extensions`.
|
||||
* Check `Developer mode` (top right hand corner).
|
||||
* Click `Load unpacked extension`.
|
||||
* Choose the `build/` directory from the file dialog.
|
||||
* Done.
|
||||
|
||||
## Sources
|
||||
|
||||
* [Source code (GitHub)](https://github.com/0x1eef/photon#readme)
|
||||
* [Source code (GitLab)](https://gitlab.com/0x1eef/photon#about)
|
||||
* [GitHub](https://github.com/0x1eef/myip.wtf#readme)
|
||||
* [GitLab](https://gitlab.com/0x1eef/myip.wtf#about)
|
||||
|
||||
## Screenshots
|
||||
|
||||
<p>
|
||||
<img src="https://raw.githubusercontent.com/0x1eef/photon/main/share/photon/photon.png">
|
||||
</p>
|
||||
|
||||
## <a id="license"> License </a>
|
||||
## License
|
||||
|
||||
[BSD Zero Clause](https://choosealicense.com/licenses/0bsd/).
|
||||
<br>
|
||||
See [LICENSE](./LICENSE).
|
||||
|
||||
|
||||
|
|
8
package-lock.json
generated
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "photon",
|
||||
"version": "0.2.1",
|
||||
"name": "myip.wtf",
|
||||
"version": "0.3.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "photon",
|
||||
"version": "0.2.1",
|
||||
"name": "myip.wtf",
|
||||
"version": "0.3.0",
|
||||
"dependencies": {
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "photon",
|
||||
"version": "0.2.1",
|
||||
"name": "myip.wtf",
|
||||
"version": "0.3.0",
|
||||
"dependencies": {
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0"
|
||||
|
|
BIN
share/myip.wtf/myip.wtf.png
Normal file
After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 11 KiB |
|
@ -9,7 +9,7 @@
|
|||
<body>
|
||||
<div id="root"></div>
|
||||
<footer>
|
||||
Powered by <a href="https://clean.wtfismyip.com">clean.wtfismyip.com</a>
|
||||
Powered by <a href="https://clean.myip.wtf">clean.myip.wtf</a>
|
||||
</footer>
|
||||
<script src="/js/index.js"></script>
|
||||
</body>
|
||||
|
|
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 321 B |
BIN
src/images/icons/wtf128x128.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
src/images/icons/wtf16x16.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
src/images/icons/wtf256x256.png
Normal file
After Width: | Height: | Size: 55 KiB |
BIN
src/images/icons/wtf48x48.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
BIN
src/images/icons/wtf64x64.png
Normal file
After Width: | Height: | Size: 10 KiB |
|
@ -4,7 +4,7 @@ import { TResponse, Response } from "~/lib/response";
|
|||
type Maybe<T> = T | null;
|
||||
|
||||
export function useWebService(): [Maybe<TResponse>, Maybe<Error>] {
|
||||
const endpoint = "https://clean.wtfismyip.com/json";
|
||||
const endpoint = "https://clean.myip.wtf/json";
|
||||
const [response, setResponse] = useState<Maybe<TResponse>>(null);
|
||||
const [error, setError] = useState<Maybe<Error>>(null);
|
||||
const options: RequestInit = {cache: "no-store"};
|
||||
|
|
|
@ -1,15 +1,18 @@
|
|||
{
|
||||
"manifest_version": 3,
|
||||
"name": "Photon",
|
||||
"name": "myip.wtf",
|
||||
"version": "0.3.0",
|
||||
"description": "Provides information about your public IP address.",
|
||||
"description": "Relays information about your public IP address from myip.wtf to your browser",
|
||||
"action": {
|
||||
"default_popup": "/html/browseraction.html"
|
||||
},
|
||||
"permissions": [],
|
||||
"icons": {
|
||||
"16": "images/icons/icon16.png",
|
||||
"128": "images/icons/icon128.png"
|
||||
"16": "images/icons/wtf16x16.png",
|
||||
"48": "images/icons/wtf48x48.png",
|
||||
"64": "images/icons/wtf64x64.png",
|
||||
"128": "images/icons/wtf128x128.png",
|
||||
"256": "images/icons/wtf256x256.png"
|
||||
},
|
||||
"permissions": [],
|
||||
"default_locale": "en"
|
||||
}
|
||||
|
|