Inspired by DevToys
XDev helps with daily development tasks like formatting JSON, base64 encoding / decoding and others. No need to use many untrustworthy websites to do simple tasks with your data.
- Clone the repository:
git clone https://github.com/ahelmy/xdev.git- Navigate to the project directory:
cd xdev- Build from source:
go build -o xdev- Start the application:
./xdevRequirements:
- go >= 1.20
You can use it directly by:
go install github.com/ahelmy/xdev@mainif go/bin is not in your path, either add it or use ~/go/bin
xdev -hDeveloper Swiss Army Knife tools X for anything.
Usage:
xdev [flags]
xdev [command]
Available Commands:
base64decoder Decode base64 string. Alias: b64d
base64encoder Encode string to base64. Alias: b64e
completion Generate the autocompletion script for the specified shell
hash Hash a string
help Help about any command
json JSON indentation and minification
json2yaml Convert JSON to YAML. Alias: j2y
jwt Decode or encode a JWT string.
password Password generator. Alias: pwd
properties2yaml Convert Java Properties to YAML, Alias: p2y
server Start a web server, Alias: s
time Time command to covert and manupulate time
ulid Generate a ulid string
url URL encode/decode.
uuid Generate a uuid string, and uuid conversion
yaml2json Convert YAML to JSON. Alias: y2j
yaml2properties Convert YAML to Java Properties, Alias: y2p
Flags:
-h, --help help for xdev
-v, --version Print the version number
Use "xdev [command] --help" for more information about a command.
The project devided into layers, the core (internal) which contains all logic and outside layers of different consumers (command line, APIs, webUI, terminal).
If you want to use Xdev as server running in docker container you can use https://hub.docker.com/r/ahelmy0/xdev
Environment
-
PORTServer port, default: 8000 -
VERBOSETo enable verbose mode.
Healthcheck endpoint for liveness & readiness
GET /api/health
readinessProbe:
httpGet:
path: /api/health
initialDelaySeconds: 10
periodSeconds: 10
livenessProbe:
httpGet:
path: /api/health
initialDelaySeconds: 10
periodSeconds: 10
List of features:
- UUID, ULID Generator, conversion
- JWT encoding / decoding
- Base64 encoding / decoding
- JSON indention / minifying
- Password generator
- JSON to Yaml
- Yaml to JSON
- URL encoding / decoding
- Add hashing (SHA256, MD5, ...)
- Time conversion
- Yaml2Properties
Next
- Text differences.
- Add
choco,brewandlinuxpackage managers download.
...
If you are interested to fix an issue or to add new feature, you can just open a pull request.
Licensed with Apache 2.0









