Browser Playground & Interactive way to learn cryptography π€©. Also supports a client side hashing API.
Hashable is an in-browser playground to experiment and play around with different cryptographic methods and functions.
Our Rest API is a simple implementation of generating hashes through a get request.
Here is on example using Javascript, which represents a simple program that hashes a string in sha256.
const axios = require("axios");
const reqUrl = "https://hashable-api.herokuapp.com";
// string going to be hashed
const str = "HelloWorld";
// hashing method like "md5"
const method = "sha256";
// encoding method like "base64", "base64url"
const encoding = "hex";
axios
.get(`${reqUrl}/hash?algorithm=${method}&str=${str}&encoding=${encoding}`)
.then((res) => res.data)
.catch((err) => console.log(err));See more about our API documentation at /api.
Get Examples for:
Get complete examples here π€.
Show your love, give our repo a star π .
Follow these steps to build and development our project.
First of all, we recommend having Node.js of version 14 or higher. Download Node.js Here π
- Node.js
- Typescript (using npm)
- Git
Clone the repo using Git:
git clone https://github.com/haneenmahd/hashable.gitCreate and set a branch name:
git branch <your-branch-name>
git checkout <your-branch-name>Install Packages π¦
sh scripts/install.shContinue working with our repo π.
For ease of development purposes, you can use this command to open up development server and build according to changes.
cd api
npm run dev
Run this script to build the API:
cd api
npm run buildLinting the API's codebase:
cd api
npm run lintIf you wanna build and start the server from scratch, run this instead:
cd api
npm run build:startTo start the server from the current built folder.
cd api
npm run startCleaning build files:
cd api
npm run cleanRunning server tests
npm run testLinting Code inside web
cd web
npm run lintYou can contact the Developer using my Mail π§
We have licensed this project under MIT.