IT-Tools

A unified collection of 88 web-based developer utilities — from JSON formatting to subnet calculation — all self-hostable, keyboard-searchable, and offline-ready.

39.7Kstars
5.1Kforks
GNU GPLv3
Vue

IT Tools is an open-source platform that brings together over 88 practical web utilities for developers and IT professionals in a single, fast, and searchable interface. Instead of hopping between a dozen bookmarked sites to encode a Base64 string, parse a JWT, calculate a subnet mask, or generate a UUID, everything lives in one place with a consistent UX and persistent favorites.

The tool collection spans cryptography (bcrypt, HMAC, RSA key generation, AES encryption), data conversion (JSON/YAML/TOML/CSV/XML transformations), networking (IPv4/IPv6 calculators, MAC address lookup, subnet expansion), developer utilities (crontab generator, Docker Compose converter, SQL formatter, chmod calculator), text processing (case conversion, diff, NATO alphabet, Unicode converter), and more — all running entirely in the browser with no backend calls and no data leaving your machine.

The application is built with Vue 3 and TypeScript, ships as a PWA with offline support, and supports nine languages. Self-hosting is a single Docker command, and the modular architecture makes contributing a new tool straightforward enough that the project has attracted contributions from dozens of developers. A generator script scaffolds the boilerplate for a new tool in seconds.

IT Tools is continuously deployed to it-tools.tech via Vercel, but the same image runs equally well on Cloudron, Tipi, Unraid, or any nginx-capable server, making it a popular homelab addition for teams that want developer utilities available on their private network without relying on external services.

What You Get

  • Format conversion suite - Bidirectional converters for JSON↔YAML, JSON↔TOML, JSON↔CSV, JSON↔XML, and YAML↔TOML with syntax-highlighted output and clipboard integration.
  • Cryptography toolkit - bcrypt hash generation and verification, HMAC generator supporting MD5 through SHA-512, RSA key pair generator, AES/DES/Triple-DES encryption and decryption, and BIP39 mnemonic phrase generator, all computed client-side.
  • Network calculators - IPv4 subnet calculator with CIDR notation, IPv4 range expander, IPv4 address converter across decimal/binary/hex/octet formats, MAC address OUI lookup, and IPv6 ULA generator.
  • JWT parser and decoder - Decodes JWT header and payload fields, displays all claims including expiration status, and highlights token structure without requiring the signing secret.
  • UUID and ULID generators - RFC 4122 UUID v1/v4/v5 with namespace support and bulk generation, plus ULID generator for time-sortable unique identifiers.
  • Crontab expression builder - Visual crontab generator with real-time human-readable description output via cronstrue and syntax validation to eliminate scheduling errors.
  • Docker run to Compose converter - Converts docker run CLI commands into valid docker-compose.yml format using composerize-ts, preserving ports, volumes, environment variables, and restart policies.
  • OTP code generator and validator - Produces TOTP and HOTP one-time passwords compatible with Google Authenticator and displays an enrollment QR code for authenticator apps.
  • Regex tester with cheatsheet - Live regex matching with capture group display, flag toggles (global, case-insensitive, multiline), and an inline syntax reference cheatsheet.
  • WiFi QR code generator - Creates scannable WiFi login QR codes supporting WPA/WPA2, WEP, and WPA2-EAP with phase-2 authentication, with customizable foreground and background colors and downloadable PNG output.

Common Use Cases

  • Private developer portal - A team self-hosts IT Tools on their intranet via Docker so developers can use encoding, hashing, and conversion utilities without sending sensitive data to external websites.
  • JWT debugging during API development - A backend developer pastes a JWT from a Postman response into the parser mid-debugging to inspect claims and check expiration without installing a browser extension.
  • Infrastructure network planning - A DevOps engineer uses the subnet calculator to design CIDR block allocations for a VPC, then the chmod calculator to verify file permission masks in a provisioning script.
  • Config format migration - A platform engineer converts Helm values from YAML to JSON to feed a tool that only accepts JSON, then converts the modified output back to YAML using the bidirectional converters.
  • Security credential generation - A security engineer generates RSA key pairs for an mTLS configuration and uses bcrypt to verify password hashes found in a legacy config file.
  • Offline air-gapped environments - A developer installs IT Tools as a PWA on their laptop for use in environments where external network access is restricted, retaining access to all encoding and cryptography tools without internet connectivity.

Under The Hood

Architecture IT Tools is organized as a feature-registry monolith where each tool is a fully self-contained unit consisting of a declaration file, a Vue component, optional service logic, and optional tests, all discoverable through a central categories array. The defineTool() factory establishes a uniform contract for path routing, lazy component loading, keyword search metadata, and recency flagging, meaning any new tool integrates by adding a single import and array entry with no modifications to global layout or routing infrastructure. The Pinia store computes derived state — favorites, category groupings, and new-tool flags — reactively from the static tool registry, enabling persistent personalization without a backend. Vue Router handles navigation with each tool’s path field as the route, and lazy imports ensure only the active tool’s bundle loads in the browser, keeping initial load times fast regardless of the growing tool count.

Tech Stack The application is built on Vue 3 with the Composition API and TypeScript throughout, using Pinia for reactive global state and Vue Router for SPA navigation. UnoCSS provides utility-first atomic styling with no runtime overhead, and Naive UI supplies the component library alongside a custom component layer that enforces project-specific conventions. Vite drives the build pipeline with plugins for compile-time auto-imports of Vue and VueUse primitives, icon tree-shaking via unplugin-icons, PWA generation, and markdown rendering. The app ships as a static SPA deployed on Vercel, with an nginx-based Docker container for self-hosted deployments. Internationalization is handled by vue-i18n with nine language translations compiled at build time for zero runtime parsing overhead. Testing combines Vitest in jsdom for unit tests and Playwright for full browser end-to-end validation.

Code Quality The codebase has extensive test coverage across service modules, with over 30 unit test files and a Playwright suite covering critical tool behaviors. TypeScript is enforced strictly — vue-tsc runs as part of the production build pipeline, so type errors prevent deployment rather than silently shipping broken code. The withDefaultOnError utility pattern handles runtime exceptions defensively, surfacing safe defaults to the UI rather than propagating errors. ESLint with @antfu/eslint-config enforces consistent style across the codebase. The FormatTransformer.vue shared component dramatically reduces duplication across the numerous format-conversion tools by making input-transform-output a single-prop pattern. The compile-time auto-import setup keeps components lean but requires contributors to understand what is globally available without explicit imports, which adds a small onboarding cost.

What Makes It Unique IT Tools’ most distinctive contribution is the discipline of its tool architecture: the defineTool() factory combined with a generator script that scaffolds a complete new tool in seconds ensures every contribution is consistent, discoverable, and independently testable without touching shared infrastructure. The FormatTransformer abstraction reduces dozens of nearly-identical format-conversion components to a single parameterized interface. The WiFi QR code generator stands out by supporting WPA2-EAP with phase-2 authentication — a requirement for enterprise wireless networks that most web-based QR generators ignore entirely. Running entirely in the browser with PWA and offline support means the tools remain available without internet connectivity, which is meaningful for homelab and restricted-network deployments where external SaaS tools are not an option.

Self-Hosting

IT Tools is licensed under the GNU General Public License v3.0 (GPL-3.0), a strong copyleft license. You can use, modify, and self-host it freely — including for commercial internal use — but if you distribute a modified version outside your organization, you must release those modifications under the same GPL-3.0 license. For teams deploying it on an internal network for their own employees, the copyleft terms create no practical constraints, since internal deployment does not constitute distribution.

Running IT Tools yourself is intentionally lightweight. The entire application is a static frontend with no database, no user authentication system, and no backend API. Deployment is a single docker run command pointing to the public image on Docker Hub or GitHub Container Registry, and the container runs nginx to serve the pre-built static assets. Because all state — favorites, preferences — lives in the browser’s localStorage, there is nothing to back up on the server side. Updates are as simple as pulling a new image tag and restarting the container. The operational burden is minimal: you need a container host and a reverse proxy if you want HTTPS, but otherwise there is no infrastructure to maintain beyond keeping the container running.

Compared to using the hosted version at it-tools.tech, self-hosting gives you full control over data privacy — no tool input ever leaves your network — and the ability to operate in air-gapped or internet-restricted environments. What you give up is zero-maintenance updates: the hosted version is continuously deployed from the main branch via Vercel, while your self-hosted instance only updates when you pull a new image. There is no paid cloud tier, no SLA, and no official support contract for any deployment model — the project is entirely community-maintained.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack

No spam. Unsubscribe anytime.

Join 750+ subscribers
No spam. Unsubscribe anytime.

Search