Developer Tools
What this screen is for
Tools collects the utilities that support development without belonging to any one environment: setting up your machine, generating Dockerfiles from templates, scanning images, load testing, and running test suites.
Unlike Deploy, nothing here changes what is running. These are things you use before something ships, or about something that already has.
Before you start
| To do this | You need |
|---|---|
| Tools › Local Setup | the local-env access permission |
| Tools › Templates Library | the local-env Dockerfile read permission |
| Tools › Security Scanner | signed in |
| Tools › Stress Testing | the K6 access permission |
| Tools › Test Runner | the Test Runner access permission |
Opening it
Tools in the sidebar. Each entry is gated separately, so a partly-populated submenu is normal.
📸 Screenshot Placeholder: The Tools submenu expanded in the sidebar. Mark: (1) Local Setup, (2) Templates Library, (3) Security Scanner, (4) Stress Testing, (5) Test Runner.
What is it for?
Developer Tools bring together practical utilities to make your daily work on the Fenwave platform easier.
Who is it for?
All developers using Fenwave
Accessing the Tools
- Click on “Tools” or “Developer Tools” in the menu
- OR go to
/developer-tools
Available Features
1. Secret Generator
What it does: Create secure secrets (tokens, API keys, passwords)
How to use it:
- Go to Tools → “Secret Generator”
- Choose the type:
- API Key: Random API key
- Password: Secure password
- Token: Unique token
- Configure length and characters
- Click on “Generate”
- Copy the generated secret
Example usage:
- Create an API key for your service
- Generate a strong password
- Create a token for integration
2. Base64 Encoder/Decoder
What it does: Encode or decode data in Base64
How to use it:
- Go to Tools → “Base64”
- Encode:
- Paste your text
- Click “Encode”
- Copy the result
- Decode:
- Paste the Base64
- Click “Decode”
- Read the original text
Example usage:
- Encode credentials for configuration
- Decode a Base64 secret
3. UUID Generator
What it does: Create unique identifiers (UUID/GUID)
How to use it:
- Go to Tools → “UUID Generator”
- Click on “Generate”
- Copy the created UUID
Example usage:
- Unique ID for database
- Correlation ID for logs
- Session identifier
4. JSON Validator
What it does: Check and format JSON
How to use it:
- Go to Tools → “JSON Validator”
- Paste your JSON
- Click on “Validate”
- Results:
- ✅ Valid: Correct JSON, nicely formatted
- ❌ Invalid: Shows error and line number
Example usage:
- Check a JSON config file
- Format badly indented JSON
- Debug JSON syntax errors
5. Password Generator
What it does: Create secure passwords
How to use it:
- Go to Tools → “Password Generator”
- Configure:
- Length (8-128 characters)
- Include uppercase
- Include numbers
- Include symbols
- Click on “Generate”
- Copy the password
Example usage:
- Create a password for an account
- Generate a secret for authentication
- Password for database
6. Timestamp Converter
What it does: Convert between Unix timestamp and readable date
How to use it:
- Go to Tools → “Timestamp Converter”
- Timestamp → Date:
- Enter the timestamp (e.g.,
1704067200) - See the date:
2024-01-01 00:00:00 UTC
- Enter the timestamp (e.g.,
- Date → Timestamp:
- Select a date
- Get the corresponding timestamp
Example usage:
- Debug logs with timestamps
- Convert API dates
- Calculate durations
7. Hash Generator
What it does: Create hashes (MD5, SHA-1, SHA-256)
How to use it:
- Go to Tools → “Hash Generator”
- Enter your text
- Choose the algorithm:
- MD5 (fast, less secure)
- SHA-1
- SHA-256 (recommended)
- SHA-512 (very secure)
- Click on “Generate”
- Copy the hash
Example usage:
- Verify file integrity
- Create checksums
- Hash passwords (with salt!)
8. Diff Calculator
What it does: Compare two texts and see the differences
How to use it:
- Go to Tools → “Text Diff”
- Paste text 1
- Paste text 2
- Click on “Compare”
- See differences in color:
- Green: Additions
- Red: Deletions
- White: Unchanged
Example usage:
- Compare two config versions
- See changes in a file
- Debug data
Best Practices
✅ DO:
- Use strong passwords (16+ characters)
- Store secrets in Kubernetes Secrets (not in code)
- Use SHA-256 or SHA-512 for hashing
- Always validate JSON before using it
❌ DON’T:
- Store secrets in plain text in GitHub
- Use MD5 for security (obsolete)
- Reuse the same passwords
- Commit generated secrets
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+C / Cmd+C |
Copy |
Ctrl+V / Cmd+V |
Paste |
Ctrl+A / Cmd+A |
Select all |
Use Cases
Case 1: Create a secret for Kubernetes
- Generate a password:
- Length: 32 characters
- All character types
- Encode in Base64:
- Copy the password
- Use the Base64 encoder
- Create Kubernetes Secret:
- Use the Base64 value
- Via Kubernetes Admin
Case 2: Debug a timestamp in logs
- Copy the timestamp from logs:
1704067200 - Use Timestamp Converter
- See the date:
2024-01-01 - Understand when the event occurred
Case 3: Validate a JSON configuration
- Copy JSON from file
- Use JSON Validator
- If error: see the problematic line
- Fix and revalidate
- Copy the formatted JSON
Security
⚠️ Important:
- Tools run in your browser (no data sent to server)
- Generated secrets are NOT saved
- Copy them immediately to a password manager
- Never share your secrets
Next Steps
- Create environments with Branch Environments
- Manage Kubernetes secrets with Kubernetes Admin
- Automate with Pipeline Builder
Need Help?
- 📚 Complete documentation
- 💬 Contact the platform team
- 🐛 Report issues
Scenario
Setting up a new machine and taking a service through to a load test.
- Local Setup — install the agent and connect it. Nothing else here depends on it, but everything local does.
- Templates Library — if the service has no Dockerfile, start from a template rather than a blank file.
- Security Scanner — scan the built image before it reaches an environment, not after.
- Deploy it to dev.
- Test Runner — run the suite against it. Runs execute on Argo Workflows, so a run that never starts is a CI/CD problem rather than a test problem.
- Stress Testing — only once it is correct. Load testing something that does not work yet measures nothing.
Step 6’s ordering is the point: correctness first, then behaviour under load.
When it doesn’t work
| Symptom | Cause | How to check | Fix |
|---|---|---|---|
| The Tools menu is missing entirely | You hold none of the tool access permissions | Access Explorer | Ask for the one you need |
| Some entries are missing | Each tool is gated separately | Access Explorer | Expected; request the specific tool |
| Test runs never start | Argo Workflows is not connected or untested | Settings › Development › CI/CD | Add and test that integration |
Next
- Local Setup — start here on a new machine