A modern IP information service inspired by ifconfig.me, built with Go and Fiber.
- Get detailed information about your connection
- Clean and responsive web interface
- RESTful API endpoints
- Command-line interface support
- Docker support
- High performance using Fiber framework
- Go 1.21+
- Fiber - Web framework
- HTML/CSS for frontend
- Docker for containerization
Endpoint | Description |
---|---|
/ |
Returns IP address for curl, web interface for browsers |
/ip |
Returns only the IP address |
/ua |
Returns User Agent |
/lang |
Returns Accept-Language |
/encoding |
Returns Accept-Encoding |
/mime |
Returns accepted MIME types |
/charset |
Returns Accept-Charset |
/forwarded |
Returns X-Forwarded-For |
/all |
Returns all information in plain text |
/all.json |
Returns all information in JSON format |
- Go 1.21 or higher
- Docker (optional)
- Clone the repository:
git clone https://github.com/tinchoram/ifconfig.git
cd ifconfig
- Install dependencies:
go mod download
- Run the application:
go run main.go
The service will be available at http://localhost:3000
- Build the Docker image:
docker build -t ifconfig .
- Run the container:
docker run -p 3000:3000 ifconfig
Get your IP address:
curl localhost:3000
Get all information in JSON format:
curl localhost:3000/all.json
Get User Agent:
curl localhost:3000/ua
.
├── Dockerfile
├── README.md
├── main.go
├── go.mod
├── go.sum
├── views/
│ └── index.html
└── public/
└── css/
└── styles.css
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m '[Module] Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
@tinchoram
- GitHub: @tinchoram
Give a ⭐️ if this project helped you!
- Make sure to handle CORS and security considerations in production
- The service is designed to be lightweight and fast
- Contributions and suggestions are welcome
Made with ❤️ by @tinchoram