GithubHelp home page GithubHelp logo

corentinth / it-tools Goto Github PK

View Code? Open in Web Editor NEW
11.1K 66.0 1.4K 11.55 MB

Collection of handy online tools for developers, with great UX.

Home Page: https://it-tools.tech

License: GNU General Public License v3.0

JavaScript 1.56% Vue 50.21% HTML 0.48% TypeScript 47.57% Dockerfile 0.09% EJS 0.08%
vuejs tools tool converter website frontend developer-tools developer-productivity productivity javascript

it-tools's Introduction

logo

Useful tools for developer and people working in IT. Have a look !.

Functionalities and roadmap

Please check the issues to see if some feature listed to be implemented.

You have an idea of a tool? Submit a feature request!

Self host

Self host solutions for your homelab

From docker hub:

docker run -d --name it-tools --restart unless-stopped -p 8080:80 corentinth/it-tools:latest

From github packages:

docker run -d --name it-tools --restart unless-stopped -p 8080:80 ghcr.io/corentinth/it-tools:latest

Other solutions:

Contribute

Recommended IDE Setup

VSCode with the following extensions:

with the following settings:

{
  "editor.formatOnSave": false,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "i18n-ally.localesPaths": ["locales", "src/tools/*/locales"],
  "i18n-ally.keystyle": "nested"
}

Type Support for .vue Imports in TS

TypeScript cannot handle type information for .vue imports by default, so we replace the tsc CLI with vue-tsc for type checking. In editors, we need TypeScript Vue Plugin (Volar) to make the TypeScript language service aware of .vue types.

If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a Take Over Mode that is more performant. You can enable it by the following steps:

  1. Disable the built-in TypeScript Extension
    1. Run Extensions: Show Built-in Extensions from VSCode's command palette
    2. Find TypeScript and JavaScript Language Features, right click and select Disable (Workspace)
  2. Reload the VSCode window by running Developer: Reload Window from the command palette.

Project Setup

pnpm install

Compile and Hot-Reload for Development

pnpm dev

Type-Check, Compile and Minify for Production

pnpm build

Run Unit Tests with Vitest

pnpm test

Lint with ESLint

pnpm lint

Create a new tool

To create a new tool, there is a script that generate the boilerplate of the new tool, simply run:

pnpm run script:create:tool my-tool-name

It will create a directory in src/tools with the correct files, and a the import in src/tools/index.ts. You will just need to add the imported tool in the proper category and develop the tool.

Contributors

Big thanks to all the people who have already contributed!

contributors

Credits

Coded with ❤️ by Corentin Thomasset.

This project is continuously deployed using vercel.com.

Contributor graph is generated using contrib.rocks.

IT Tools - Collection of handy online tools for devs, with great UX | Product Hunt IT Tools - Collection of handy online tools for devs, with great UX | Product Hunt

License

This project is under the GNU GPLv3.

it-tools's People

Contributors

aurelien-morice avatar avioli avatar bastantoine avatar cgoit avatar corentinth avatar epicnesstwo avatar hieudt-2054 avatar hoangsvit avatar ironwilldevops avatar jmmanzano avatar lemon8866 avatar lovesinatra avatar lzb16 avatar marcelocg avatar marvin-j97 avatar mblaschke avatar motui avatar myztillx avatar oceansdeep7 avatar raulmora22 avatar renovate[bot] avatar rmtsrc avatar rursache avatar sbordeyne avatar sharevb avatar steltek avatar swishkin avatar tsonglew avatar whackablemole avatar yohn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

it-tools's Issues

[FEAT] New tool: regular expression evaluator (regex)

Is your feature request related to a problem? Please describe.
I would like to have a tool similar to => https://regex101.com/
It has too many features but you can start with a simple regular expression evaluator. The user will provide a regular expression and a sample text. The tool will tell if the regular expression is valid, apply to the text, show it the expression matches the text. Show the "match groups" if the expression has groups.

Describe the solution you'd like
I would like to have a tool similar to => https://regex101.com/

Describe alternatives you've considered
.

Additional context
.

[FEAT] Disable star banner

Is your feature request related to a problem? Please describe.
I'm running a self-hosted version of your software and I would like to disable/hide this banner. It's just to save space.
image

Describe the solution you'd like
Add an environment variable in the Docker image or some parameter to hide the banner.

Describe alternatives you've considered
.

Additional context
.

[FEAT] API for tools

Is your feature request related to a problem? Please describe.
this thing is awesome already, but it'd be 10 times more useful if it had an HTTP API so anyone could integrate this into shell scripts or apps.

Describe the solution you'd like
HTTP API which could be used i.e. with Curl.

Describe alternatives you've considered
none

Additional context
I haven't found any info about API. if it already exist, correct me please.

Generate OTP codes for Multi-Factor Authentication

Is your feature request related to a problem? Please describe.
MFA is a popular feature, and having a UI to produce OTP codes can be helpful for testing/debugging.

Describe the solution you'd like
There are plenty of libs that provide OTP functionality. For example, https://github.com/yeojz/otplib. It works in the browser.
There is a website that does precisely this 😄 https://get2fa.dev/ We can copy its look

Describe alternatives you've considered
As I said https://get2fa.dev/ or mobile app.

[FEAT] Allow tool configuration via url parameters

Is your feature request related to a problem? Please describe.
I'm always trying to save time by automating repetitive tasks, and when using direct links to this site it would be helpful if some settings could be set via the url.

Describe the solution you'd like
I'd like to be able to set settings via the url; eg: https://it-tools.tech/token-generator/?length=32 for a token generator that initiates with a 32-character length by default.

Additional context
This would obviously not work for every tool in the site, but for the ones with configuration options it would come in handy.

[Feature] Create multiple UUIDs

Is your feature request related to a problem? Please describe.
Manually creating a set of multiple UUIDs is tedious when only being able to create a single one at a time.

Describe the solution you'd like
A textbox to enter a amount of UUIDs that should be created

Describe alternatives you've considered
None

Additional context
Example design
image

Actual usage when copying multiple values:
mockdata_example

[FEAT] Pre-Compiled Releases

Hello,

The entirety of this great tool-set runs in HTML/JS so why can't we have pre-compiled releases for people who don't want to make thing harder than they need to be? :) Drop in any webserver and use it.

Thank you.

[FEAT] More Tools

Good, first of all, I'm sorry that this issue doesn't fit very well with the template. I just saw your project on the website https://noted.lol and I found it quite an interesting project.

I've been reading and you are looking for more tools to add. If you are missing examples you could look at this site.

https://10015.io/

It's a website that contains several tools that you could replicate in your project.

I have also seen issue #269 , when you have the internationalisation ready, I will support you by translating the application into Spanish. I have been supporting quite a few projects on the language issue.

One last thing, you could improve the QR code generator in several ways, like adding logos, styles, etc. Here is another website as an example.

https://qr.io/

I can only congratulate you for the project, I hope it gets a lot of support.

XLM/JSON/YAML converter

Is your feature request related to a problem? Please describe.
I sometimes get DMARC reports in XML format but it doesn't happen enough to warrant a separate service to parse.
I often just do a quick google search for XML to JSON converter to make it more readable.

Something similar to https://codebeautify.org/xmltojson would be a nice feature.

[BUG] Dark mode should not invert QR codes

Describe the bug
QR codes, such as the one displayed on the OTP page, are inverted in dark mode. Although this works with some tools like Google Authenticator (verified manually) many barcode scanners do not recognize inverted QR codes, such as this barcode scanner app.

To Reproduce
Steps to reproduce the behavior:

  1. Go to https://it-tools.tech/otp-generator
  2. Flip between light and dark mode
  3. Observe the QR code inverts
  4. (Optional) try scanning the barcode with the Barcode Scanner app

Expected behavior
The QR code shouldn't change based on the dark mode state.

[BUG] RSA Generator doesn't work in Docker

Describe the bug
RSA Generator doesn't work when self-hosted in Docker

To Reproduce
Deploy docker container
Attempt to create RSA Key

  • This works correctly on Web hosted version

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
2023/03/25 23:59:28 [error] 30#30: *9 open() "/usr/share/nginx/html/forge/prime.worker.js" failed (2: No such file or directory), client: 192.168.18.120, server: localhost, request: "GET /forge/prime.worker.js HTTP/1.1", host: "192.168.xxx.xxx:5545", referrer: "http://192.168.xxx.xxx:5545/rsa-key-pair-generator"

Additional context
Add any other context about the problem here.

[FEAT] Publish releases with changelog in GitHub

Is your feature request related to a problem? Please describe.
I'm self-hosting this awesome tool and I would like to keep the track of new versions and changes. I'm aware you have a changelog file with the changes, but I can't subscribe to get notifications.
Currently I'm subscribed to the releases in GitHub and I get notifications when you publish a tag. The problem is I have to go to this repository and check the changelog file.
image

Describe the solution you'd like
Publish GitHub releases with the changelog. You should keep the changelog file too.

Describe alternatives you've considered
.

Additional context
.

[FEAT] Networking Tools

Hey,

Me again! A section of tools dedicated to networking would be great.

As a start, I've copied, edited and perfected an "IP Range Expander" and a Subnet Calculator and hosted them here https://tcb13.com/demo/subnet/

Would you approve the integration of those tools after a proper code cleanup?

Thank you.

[FEAT] New tool JSON ABC and Diff

Is your feature request related to a problem? Please describe.
New tool JSON ABC and Diff. Comparing JSON files could be time consuming since the JSON keys can be in different order. In this case usual diff tools don't work well.
The tool must receive 2 JSON files. You should apply JSON sort (#306) and beautify to both JSONs. Compare both files and show the differences. This could be useful for a future "text diff" tool (#294).

image

Describe the solution you'd like

Describe alternatives you've considered
.

Additional context
.

Integer base converter not accepting characters

When trying to convert a hexadecimal number to other bases, the input field doesn't accept alphabet characters that are part of the hexadecimal digits (a, b, c, d, e and f).
Additionally, the + and - button don't consider these characters, essentially skipping numbers that are accepted in this base.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the integer base converter tool (https://it-tools.tech/base-converter)
  2. Set 16 as the input base
  3. Try to enter any of the alphabet characters that are accepted in the hexadecimal base (e.g. "a")
  4. The input is marked as invalid

Expected behavior
The converter should accept this hexadecimal number and covert it properly (e.g. "a" base-16 = "10" base-10).

Screenshots
Invalid "a" parsing

Correct "9" parsing

Added 1 to "9", going to 0x10 which is 16 instead of 0xa which is 10

Configuration:

  • Device: Mac
  • OS: MacOS
  • Browser: Safari (but I reproduced it in Chrome too)

[FEAT] Manual Sorting and storage of favorites order

Is your feature request related to a problem? Please describe.

Not a problem per-se but a nice convenience feature. Having my most used tools pinned at the top of the page, it would be nice to be able to order them when I pin a new favorite.

For example the new ipv4 subnet calculator I just pinned is at the bottom of the list of my favorites and to have it at the top of my pinned tools I'll need to write down the order I'd like them in, unpin them all, then re-pin in my preferred order and repeat this process anytime I'd like to modify the pinned tools.

Describe the solution you'd like

I'd like to be able to manually sort the order of my pinned (favorite) tools and have that stored persistently by the browser. A nice drag-and-drop interaction would be a plus from a usability standpoint.

Describe alternatives you've considered

Currently I'm having to unpin all of my favorites and re-pin them in my preferred order and repeat this process anytime my preferences change. Not the worst inconvenience by any stretch, but certainly something that could make the UX a bit better.

Additional context

No additional context, but I'd sincerely like to thank the author and contributors to this project, you are doing great work here. I found mention of it on noted.lol and immediately knew it would be a boon and I am overjoyed with the project so far. So thank you again.

[BUG] docker run converter not working correctly on selfhosted version

Describe the bug
Using the docker run command from the It-tools github homepage gives the following docker-compose file:

version: '3.3'
services:
    run:
        ports:
            - '8080:80'
        container_name: it-tools
        image: run

To Reproduce
Steps to reproduce the behavior:

  1. Go to the it-tools github homepage
  2. Copy the docker run command: docker run -d -p 8080:80 --name it-tools -it corentinth/it-tools
  3. Paste in the docker run converter field
  4. See the incorrect docker-compose result

Expected behavior
Expected to see the image name translated correctly from the docker run command

Configuration (please complete the following information):

  • Host Device: dell t3600
  • Host OS: Ubuntu 22.10
  • Client Browser: Brave 1.49.120
  • Version: latest

[BUG] Incorrect Roman number conversion - Roman to Arabic

Describe the bug
Roman number converter - Conversion from roman to arabic incorrect

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Roman numeral converter'
  2. Add 'IVX' to 'Roman to Arabic'
  3. You will see '4'. IVX is not valid roman numerical
  4. Can be done with other values such as 'IXX' which is also invalid

Expected behavior
Correct conversion

Screenshots
image

[FEAT] Make sections in sider collapsible and remember state

Describe the solution you'd like
Since I don't use some sections at all, I'd like to be able to collapse them. On a reload of the page, the state should persist.

Describe alternatives you've considered
Another solution would be to create a "whitelist" mode, where only marked/favorite apps appear in the sidebar.

Additional context
I did a test with replacing the div of n-menu-item-group with details and n-menu-item-group-title with summary, which worked just fine.

Page colors interactive view [FEAT]

I think it would be great to have a tool where you could see the colors you have picked for page back ground, text , links etc and have them update as you make different choices for them. Something I was looking for today and never found just what I was looking for.

SVG Image Placeholder

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
Something like the following would be good - https://codepen.io/andreasnylin/full/PgGxQv

Describe alternatives you've considered
Rather have your site be the all in one place.

Additional context
It helps with building out some website and quickly putting an image block where we would expect it.
And it could add onto your base 64 features as well.

[FEAT] - Docker command to docker-compose converter

Is your feature request related to a problem? Please describe.
I am quite often confronted with documentations proposing Docker commands. Having complex architectures, I prefer to use docker-compose files. The integration of this tool would allow to have the hand on the data in the case of a self-hosting.

Describe the solution you'd like
the idea is to propose a converter of Docker commands into Docker-compose.yml and vice versa. Different projects of this type already exist. So it should not require long development.

Alternatives
composerize

[FEAT] Docker Image

Is there a Dockerfile for this? I'd like to build an image for it if possible.

[BUG] Docker build failed

I got the following error when I try to build the Docker image locally:

docker build -t it-tools -f Dockerfile .

` > [build-stage 6/6] RUN pnpm build:
#0 1.062
#0 1.062 > [email protected] build /app
#0 1.062 > vue-tsc --noEmit && vite build
#0 1.062
#0 3.613 vite v2.9.15 building for production...
#0 3.685 transforming...
#0 40.15
#0 40.15 <--- Last few GCs --->
#0 40.15
#0 40.15 [16:0x7f34f1a4a2e0] 37223 ms: Scavenge (reduce) 982.3 (1008.2) -> 981.7 (1008.4) MB, 3.1 / 0.0 ms (average mu = 0.158, current mu = 0.032) allocation failure;
#0 40.15 [16:0x7f34f1a4a2e0] 37256 ms: Scavenge (reduce) 982.4 (1008.4) -> 981.9 (1008.7) MB, 20.1 / 0.0 ms (average mu = 0.158, current mu = 0.032) task;
#0 40.15 [16:0x7f34f1a4a2e0] 37280 ms: Scavenge (reduce) 982.7 (1008.7) -> 982.1 (1008.9) MB, 9.3 / 0.0 ms (average mu = 0.158, current mu = 0.032) allocation failure;
#0 40.16
#0 40.16
#0 40.16 <--- JS stacktrace --->
#0 40.16
#0 40.16 FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
#0 40.59  ELIFECYCLE  Command failed.

Dockerfile:7

5 | RUN npm install -g pnpm
6 | RUN pnpm i --frozen-lockfile
7 | >>> RUN pnpm build
8 |
9 | # production stage

ERROR: failed to solve: process "/bin/sh -c pnpm build" did not complete successfully: exit code: 1
`

[FEAT] Refresh button in RSA key pair generator

Is your feature request related to a problem? Please describe.
Add a refresh button in RSA key pair generator. I would like to generate more than one RSA key.

Describe the solution you'd like
Add a refresh button in RSA key pair generator.
image

Describe alternatives you've considered
.

Additional context
.

[FEAT]Support for more languages

Is your feature request related to a problem? Please describe.
This project is great. I hope to support more languages

Describe the solution you'd like
i18n

[FEAT] Publish Docker images in GitHub Registry

Is your feature request related to a problem? Please describe.
Thank you for publishing the Docker image in DockerHub. That is good enough for me, but DockerHub is changing the rules lately.

They reverted the latest decision but it's desirable to have a mirror just in case.

Describe the solution you'd like
Publish the Docker image in DockerHub and in GitHub Container Registry, both.

Describe alternatives you've considered
.

Additional context
.

QR generator: Multiple text lines

Multiple lines support in the text form of the QR-Code generator
The tool doesn't support multiple lines, so for example we can't use the tool for generating wirequard qr-codes. And I would love to use it for Wireguard.

[FEAT]Compare strings

Is your feature request related to a problem? Please describe.
I regularly need to compare 2 fairly lengthy bodies of text for differences (changes in wording, errant spaces etc.)

Describe the solution you'd like
A left and right field into which I would paste each text. The app would then (below I presume) indicate if the texts are identical or not, and highlight any differences found. The highlighting is the most helpful part to my usecase.

Describe alternatives you've considered
I have, until now, used this - but I would very much like to have all my tools in one place, and it-tools pretty much covers that, except for this feature.

Additional context

[FEAT] Include version tags in the Docker images

Is your feature request related to a problem? Please describe.
Include version tags in the Docker images. I'm running a self-hosted version and it's a good practice to use stable versions.
I use this tool frequently and if there a bug or some tool is removed I would like to revert to a previous version.

Describe the solution you'd like
Publish the release tags here => https://hub.docker.com/r/corentinth/it-tools/tags

Describe alternatives you've considered
.

Additional context
.

[FEAT] Use Volta to manage node and npm/yarn versions

Is your feature request related to a problem? Please describe.

  • nvm is unstable with the latest builds for windows, and the last stable windows version is almost 4 years old.
  • nvm does not automatically switch to the correct versions based on the project/git repo.

Describe the solution you'd like

  • Volta
  • Volta manages the node and npm/yarn version in package.json
  • Volta automatically switches to the correct version based on versions defined in package.json

Describe alternatives you've considered

  • None that I know of

Additional context

  • Makes development a little less hassle across linux/mac/win
  • Takes just a few minutes to setup

[FEAT] TinyMCE Editor

Hello,

Thank you for the great set of tool and nice UI it has.

I would like to request the TinyMCE editor to be added to the Web Tools. Sometimes it's useful to be able to quickly format some text with a WYSIWYG editor and output the HTML.

Thank you.

[FEAT] New tool JSON abc / sort

Is your feature request related to a problem? Please describe.
New tool JSON abc / sort. It will receive a JSON as input and it will return a beautiful JSON with the keys ordered alphabetically.
It's useful to compare JSON files and when you are working with big files.
You could include this feature as an option in "JSON prettify and format" tool or as a new tool.
image

Describe the solution you'd like
Example tools

Describe alternatives you've considered
.

Additional context
.

[BUG] OTP code generator wrong values after stale tab

Describe the bug
OTP code generator gives wrong codes when you come back from other tab after a while

To Reproduce
Steps to reproduce the behavior:

  1. Go to OTP code generator
  2. Remember the codes: A, B, C
  3. Go to another tab and wait one cycle (20 seconds)
  4. Come back to it-tools and check the codes. They are exactly the same A, B, C
  5. Wait for another cycle, they are normal as expected: C, D, E

Expected behavior
On step 4 of the reproduce, they should be B, C, D

Video
Pay attention to all three codes. Pause on the video is ~20 seconds
https://www.loom.com/share/509318fa37ed4ea9a88089d69c602df3

Configuration (please complete the following information):

  • MacOS, chrome

Additional context
Add any other context about the problem here.

Docker: Refreshing browser on currently selected tool page results in 404 error[BUG]

Describe the bug
Preface: This isn't a critical bug - just something I noticed.

When using any one of the tools, if a user refreshes the page, a 404 page is encountered. Seems to be a configuration that is missing in NGINX for custom locations.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the main page for your it-tools docker container(i.e., domain/ip:port)
  2. Click on any of the tools
  3. Refresh the site in your browser
  4. Results in 404 error

Expected behavior
Return to the tool currently open with default values presented.

Screenshots

Token generator tool page open:

image

Error presented after refreshing current page:

image

Configuration (please complete the following information):

  • Browser Edge Chromium
  • it-tools version: 2.19.0

Feature Request: User Agent Explainer

Hey, think it would be cool if there would be a tool that analyses a user-agent string or the user-agent of the website visitor.

Something like this:
User Agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36"

Analysis:
Browser: Chrome 111.0.0.0
Browser Kernel: Blink 111.0.0.0
Device: unknown vendor unknown device type
System: Windows 10
CPU Arch: amd64

Add more reference databases, and a 'reference' group

I saw the request to add a MAC address look up tool, great idea
There are other technical databases that could very useful for look up
In fact, it could be a collection of reference tools that create a whole new group: reference
For technical code databases, examples I am thinking of :

  • networking port numbers (tcp/udp)
  • ascii codes
  • error codes (windows, mac, postscript)
  • file type extensions
  • pci vendor & subvendor IDs
    Sometimes it is not so easy to find a good up-to-date database of it...

[FEAT] Crypto > Allow base64 digest

Currently the hash-text tool is outputting hex strings, but hashes could also be output as base64-encoded strings (or even binary data technically).

(Add select box to select digest encoding)

Also consider for #250

MAC address lookup for networking tools

Is your feature request related to a problem? Please describe.

Is a tools that all IT people use daily when troubleshooting especially in networking and systems. Helps to understand the devices connected to the network and what vendor might be. Is a must in the remote work world we are living now.

Describe the solution you'd like
Another tool that will just ask you to enter the MAC address in any format and it will give you the MAC vendor OUI. Like these websites:

Describe alternatives you've considered

Beside the websites, the following repos:

And the closes might be https://github.com/henriksb/MAC-Lookup

But none will be as convenient as yours in the it-tool website

[FEAT] New tool: Docker Compose to Docker Run and vice-versa

Describe the solution you'd like

Would be nice to include this great tool that converts Docker Compose yaml to a simple Docker Run command.

There is also the option to convert Docker Run to Docker Compose
seems run -> composer got implemented, composer -> run would be nice next

[BUG] OTP code generator should accept lower-case secrets

Describe the bug
A clear and concise description of what the bug is.

Secret strings are sometimes provided in lower-case (e.g. Discord does this) - since they're base32 the casing shouldn't matter, but it-tools rejects lower-case strings.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'https://it-tools.tech/otp-generator
  2. Type a lower-case base32 string like abcd
  3. See error "Secret should be a base32 string" and incorrect "Secret in hexadecimal"
  4. Swap string to ABCD
    5; See successful OTP generation

Expected behavior

Lower-case secrets should be accepted

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.