All-in-one free tools for developers and everyday users. No sign-up, no tracking, no nonsense.
Live: ubegui.my.id
| Tool | Slug |
|---|---|
| Base64 Encode/Decode | /tools/base64 |
| URL Encoder/Decoder | /tools/url-codec |
| HTML Entity Encode/Decode | /tools/html-entity |
| Image to Base64 | /tools/image-to-base64 |
| Hex Encode/Decode | /tools/hex-codec |
| Percent (URI) Encoding | /tools/percent-encode |
| Tool | Slug |
|---|---|
| Hash Generator | /tools/hash |
| JWT Decoder | /tools/jwt-decoder |
| TOTP Generator | /tools/totp |
| CSP Header Builder | /tools/csp-builder |
| Tool | Slug |
|---|---|
| JSON Formatter | /tools/json-formatter |
| XML Formatter | /tools/xml-formatter |
| SQL Formatter | /tools/sql-formatter |
| Markdown Preview | /tools/markdown-preview |
| YAML Formatter | /tools/yaml-formatter |
| TOML Formatter | /tools/toml-formatter |
| Tool | Slug |
|---|---|
| UUID Generator | /tools/uuid |
| Password Generator | /tools/password |
| Lorem Ipsum | /tools/lorem-ipsum |
| QR Code Generator | /tools/qrcode |
| Nano ID Generator | /tools/nano-id |
| Fake Data Generator | /tools/fake-data |
| Tool | Slug |
|---|---|
| Regex Tester | /tools/regex |
| Cron Expression | /tools/cron |
| String Escape | /tools/string-escape |
| chmod Calculator | /tools/chmod |
| .env Parser | /tools/env-parser |
| .gitignore Generator | /tools/gitignore |
| Tool | Slug |
|---|---|
| Timestamp Converter | /tools/timestamp |
| Color Converter | /tools/color |
| Number Base Converter | /tools/number-base |
| CSV to JSON | /tools/csv-json |
| Unit Converter | /tools/unit-converter |
| CSS Unit Converter | /tools/css-unit |
| Tool | Slug |
|---|---|
| Text Analyzer | /tools/text |
| Text Diff | /tools/diff |
| Case Converter | /tools/case-converter |
| Slug Generator | /tools/slug-generator |
| Tool | Slug |
|---|---|
| Open Graph Checker | /tools/opengraph |
| HTTP Status Codes | /tools/http-status |
| HTML Meta Tag Generator | /tools/meta-tag |
- Node.js + Express
- EJS templates
- Tailwind CSS
- Vanilla JS (no frontend framework)
npm install
npm run setup # download fonts + build Tailwind CSS
npm start # production modeFor development with auto-reload:
npm run dev # nodemon + Tailwind watch (runs concurrently)Copy .env.example to .env and adjust before starting:
cp .env.example .envKey env vars:
| Variable | Default | Notes |
|---|---|---|
PORT |
3000 |
Port the server listens on |
NODE_ENV |
production |
Set to development to disable HSTS and relax CORS |
SITE_URL |
— | Used for sitemap and canonical tags |
CORS_ORIGIN |
— | Allowed origin in production, ignored in dev |
alwiztool/
├── locales/ # en.json, id.json
├── public/
│ ├── css/ # compiled style.css goes here
│ └── js/
│ ├── app.js
│ └── modules/ # one file per tool
├── src/
│ ├── config/
│ │ └── tools.js # master list of all tools
│ ├── css/
│ │ └── input.css
│ ├── middleware/
│ └── routes/
├── views/
│ ├── partials/
│ └── tools/ # one .ejs file per tool
└── server.js
Supports English (en) and Indonesian (id). Language is set via ?lang=en or ?lang=id and stored in a cookie.
The t object works both as a function (t('nav.home')) and as a plain object (t.nav.home) — both are fine inside templates.
- Add an entry to the
toolsarray insrc/config/tools.js - Add translation keys to
locales/en.jsonandlocales/id.jsonunder thetoolsobject - Create
views/tools/your-slug.ejs - Create
public/js/modules/your-slug.jsfor client-side logic - If the tool needs server-side work, add an endpoint to
src/routes/api.js
The route is automatically handled by the wildcard in src/routes/index.js — no need to register it manually.
This script is licensed under the Apache License 2.0. See the LICENSE file for more details.
Built by AlwizBA
