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

https://github.com/mikeleo03/classic-cryptography-simulator_frontend

Frontend side of simulator for well-known classic cipher algorithms with React Typescript and Golang
https://github.com/mikeleo03/classic-cryptography-simulator_frontend

cipher-algorithms cryptography golang react-typescript shadcn-ui website

Last synced: 9 months ago
JSON representation

Frontend side of simulator for well-known classic cipher algorithms with React Typescript and Golang

Awesome Lists containing this project

README

          

# πŸ” Classic Cryptography Simulator
> Frontend side of Simulator for Well-known Classic Cipher Algorithms with React Typescript and Golang

## General Information
This program is created to simulate some popular classic cryptography algorithms built under the web. Dive into the captivating world of classic cryptography with this interactive simulator! Experiment with renowned algorithms like Caesar and Vigenere Ciphers, encrypt messages beyond the alphabet with extended ASCII support, and handle both text snippets and entire files. Decrypt hidden messages, craft your own secret codes, and gain a deeper understanding of this fascinating field. Unleash your inner codebreaker and embark on this intriguing cryptographic journey!

## Project Structure
```bash
.
β”œβ”€β”€β”€ public
β”‚ └─── vite.svg
β”œβ”€β”€β”€ src
β”‚ β”œβ”€β”€β”€ api
β”‚ β”‚ └─── index.ts
β”‚ β”œβ”€β”€β”€ assets
β”‚ β”‚ β”œβ”€β”€β”€ icons
β”‚ β”‚ └─── images
β”‚ β”œβ”€β”€β”€ components
β”‚ β”‚ β”œβ”€β”€β”€ AffineFile
β”‚ β”‚ β”œβ”€β”€β”€ AffineText
β”‚ β”‚ β”œβ”€β”€β”€ AutoKeyVigenereFile
β”‚ β”‚ β”œβ”€β”€β”€ AutoKeyVigenereText
β”‚ β”‚ β”œβ”€β”€β”€ EnigmaFile
β”‚ β”‚ β”œβ”€β”€β”€ EnigmaText
β”‚ β”‚ β”œβ”€β”€β”€ ExtendedVigenereFile
β”‚ β”‚ β”œβ”€β”€β”€ ExtendedVigenereText
β”‚ β”‚ β”œβ”€β”€β”€ HillFile
β”‚ β”‚ β”œβ”€β”€β”€ HillText
β”‚ β”‚ β”œβ”€β”€β”€ Navbar
β”‚ β”‚ β”œβ”€β”€β”€ PlayfairFile
β”‚ β”‚ β”œβ”€β”€β”€ PlayfairMatrix
β”‚ β”‚ β”œβ”€β”€β”€ PlayfairText
β”‚ β”‚ β”œβ”€β”€β”€ Sidebar
β”‚ β”‚ β”œβ”€β”€β”€ StandardVigenereFile
β”‚ β”‚ β”œβ”€β”€β”€ StandardVigenereText
β”‚ β”‚ β”œβ”€β”€β”€ SuperEncryptionFile
β”‚ β”‚ β”œβ”€β”€β”€ SuperEncryptionText
β”‚ β”‚ β”œβ”€β”€β”€ ui
β”‚ β”‚ └─── index.ts
β”‚ β”œβ”€β”€β”€ lib
β”‚ β”‚ └─── utils.ts
β”‚ β”œβ”€β”€β”€ pages
β”‚ β”‚ β”œβ”€β”€β”€ Affine
β”‚ β”‚ β”œβ”€β”€β”€ AutoKeyVigenere
β”‚ β”‚ β”œβ”€β”€β”€ Enigma
β”‚ β”‚ β”œβ”€β”€β”€ ExtendedVigenere
β”‚ β”‚ β”œβ”€β”€β”€ Hill
β”‚ β”‚ β”œβ”€β”€β”€ NotFound
β”‚ β”‚ β”œβ”€β”€β”€ Playfair
β”‚ β”‚ β”œβ”€β”€β”€ StandardVigenere
β”‚ β”‚ β”œβ”€β”€β”€ SuperEncryption
β”‚ β”‚ └─── index.ts
β”‚ β”œβ”€β”€β”€ routes
β”‚ β”‚ └─── index.ts
β”‚ β”œβ”€β”€β”€ types
β”‚ β”‚ └─── index.ts
β”‚ β”œβ”€β”€β”€ utils
β”‚ β”‚ β”œβ”€β”€β”€ fileProcessor.tsx
β”‚ β”‚ β”œβ”€β”€β”€ index.tsx
β”‚ β”‚ β”œβ”€β”€β”€ setPage.tsx
β”‚ β”‚ └─── textProcessor.tsx
β”‚ β”œβ”€β”€β”€ App.css
β”‚ β”œβ”€β”€β”€ App.tsx
β”‚ β”œβ”€β”€β”€ index.css
β”‚ β”œβ”€β”€β”€ main.tsx
β”‚ └─── vite-env.d.ts
β”œβ”€β”€β”€ .env
β”œβ”€β”€β”€ .env.example
β”œβ”€β”€β”€ .eslintrc.cjs
β”œβ”€β”€β”€ .gitignore
β”œβ”€β”€β”€ components.json
β”œβ”€β”€β”€ index.html
β”œβ”€β”€β”€ package-lock.json
β”œβ”€β”€β”€ package.json
β”œβ”€β”€β”€ postcss.config.js
β”œβ”€β”€β”€ README.md
β”œβ”€β”€β”€ tailwind.config.js
β”œβ”€β”€β”€ tsconfig.json
β”œβ”€β”€β”€ tsconfig.node.json
└─── vite.config.ts
```

## πŸ”£ Β Algorithms
Algorithm implemented on backend side. Further implementation of various cipher algorithm stated on [this repository](https://github.com/GoDillonAudris512/Classic-Cryptography-Simulator-Backend)

## βš™οΈ Β How to Compile and Run the Program
Clone this repository from terminal with this command
``` bash
$ git clone https://github.com/mikeleo03/Classic-Cryptography-Simulator-Frontend.git
```
### Run the application on development server
Compile and download some required modules by running the following *command*
``` bash
$ npm install
$ npm run dev
```
If you do it correctly, the program should be running on localhost:3000. Don't forget to run the backend side also. Further explanation on how to run the backend development server stated on [this repository](https://github.com/GoDillonAudris512/Classic-Cryptography-Simulator-Backend)

## Available Scripts
In the project directory, you can run:

### `npm run dev`

Ths runs the app in the development mode.

The page will reload if you make edits.

You will also see any lint errors in the console. You can also use the environment by appyling the basic .env configuration on .env.example file.

## πŸ“Έ Β Screenshots
![demo1](public/Screenshot1.png)
![demo2](public/Screenshot2.png)

## Authors
| Name | Role |
| ------------------------ | -------- |
| Go Dillon Audris | Back-end Engineer
| Michael Leon Putra Widhi | Front-end Engineer