An open API service indexing awesome lists of open source software.

https://github.com/haneenmahd/hashable

A Client-Side Gateway for users to interact play and test with cryptography 🀩
https://github.com/haneenmahd/hashable

api-gateway client-side-cryptography cryptography gateway hashing hashing-in-js server

Last synced: 12 months ago
JSON representation

A Client-Side Gateway for users to interact play and test with cryptography 🀩

Awesome Lists containing this project

README

          


Hashable Hashable Icon


Build Server Status Badge
Test Server Badge
Hashable Latest Release
Hashable Latest Release
Hashable Latest Release


Browser Playground & Interactive way to learn cryptography 🀩. Also supports a client side hashing API.




πŸ‘‹ Website
πŸ“œ API documentation

Screenshot 2022-01-02 at 11 46 01 PM

What is Hashable?


Hashable is an in-browser playground to experiment and play around with different cryptographic methods and functions.


REST API πŸ› 



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.

```js
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`](https://github.com/haneenmahd/hashable/tree/master/api).

Get Examples for:

- [Ruby πŸ’Ž](https://github.com/haneenmahd/hashable/tree/master/examples/ruby)
- [Swift πŸ¦…](https://github.com/haneenmahd/hashable/tree/master/examples/swift)
- [ReactJS πŸ˜…](https://github.com/haneenmahd/hashable/tree/master/examples/react-js)
- [VanillaJS 🍦](https://github.com/haneenmahd/hashable/tree/master/examples/client-side-js)

Get complete examples [here πŸ€“](https://github.com/haneenmahd/hashable/tree/master/examples).


Support ❀️



Show your love, give our repo a star 🌟 .


Building our Project πŸ—



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](https://npmjs.org))
- Git

Clone the repo using `Git`:

```sh
git clone https://github.com/haneenmahd/hashable.git
```

Create and set a branch name:

```sh
git branch
git checkout
```

Install Packages πŸ“¦

```sh
sh scripts/install.sh
```

Continue 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:

```sh
cd api
npm run build
```

Linting the API's codebase:

```sh
cd api
npm run lint
```

If you wanna build and start the server from scratch, run this instead:

```sh
cd api
npm run build:start
```

To start the server from the current built folder.

```sh
cd api
npm run start
```

Cleaning build files:

```sh
cd api
npm run clean
```

Running server tests

```sh
npm run test
```

Linting Code inside web

```sh
cd web
npm run lint
```


ContactπŸ’¬



You can contact the Developer using my Mail πŸ“§


License πŸ“‘



We have licensed this project under MIT.