https://github.com/ilovenooodles/classic-crypto
Web based Classic cryptography
https://github.com/ilovenooodles/classic-crypto
cryptography flask nextjs
Last synced: about 2 months ago
JSON representation
Web based Classic cryptography
- Host: GitHub
- URL: https://github.com/ilovenooodles/classic-crypto
- Owner: IloveNooodles
- Created: 2023-01-25T09:17:22.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-07T13:06:08.000Z (over 3 years ago)
- Last Synced: 2025-02-06T08:44:37.458Z (over 1 year ago)
- Topics: cryptography, flask, nextjs
- Language: Python
- Homepage:
- Size: 354 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Web based classic cryptography
## Members
| Name | NIM |
| ------------------------------ | :------: |
| Muhammad Garebaldhie ER Rahman | 13520029 |
| Frederik Imanuel Louis | 13520163 |
## Tech Stack Used
### FE
- Node
- NextJS
- TypeScript
- SCSS
### BE
- Python
- Flask
## How To Run
First thing first its to install all the dependency listed in the tech stack section
### Backend
1. Install virtual environment `pip3 -m install virtualenv`
2. Create virual enviroment for your python `virtualenv venv`
3. Activate your virtual environment
1. UNIX based: `source ./venv/bin/activate`
2. Windows: `./venv/Scripts/activate`
4. Install the python dependency `pip3 -r install requirements.txt`
5. Run the service using `python app.py` or use `flask run -p 8000`
### Frontend
1. Make sure you have NodeJS in your computer
2. Install the dependencies `yarn install`
3. Run service `yarn dev`
## Available Cipher
- Vigenere Cipher
- Auto Key Vigenere Cipher
- Extended Vignere Cipher
- Playfair Cipher
- Hill Cipher
- Affine Cipher
## Folder Structure
Backend
```txt
.
├── app.py
├── encryption
│ ├── affine.py
│ ├── hill.py
│ ├── __init__.py
│ ├── playfair.py
│ ├── sanitize.py
│ └── vignere.py
├── requirements.txt
└── static
```
Frontend
```
.
├── next.config.js
├── next-env.d.ts
├── package.json
├── package-lock.json
├── public
│ ├── favicon.ico
│ ├── next.svg
│ ├── thirteen.svg
│ └── vercel.svg
├── README.md
├── src
│ ├── app
│ │ ├── (cipher)
│ │ │ ├── affine-cipher
│ │ │ │ ├── head.tsx
│ │ │ │ └── page.tsx
│ │ │ ├── auto-key-vigenere-cipher
│ │ │ │ ├── head.tsx
│ │ │ │ └── page.tsx
│ │ │ ├── basic.tsx
│ │ │ ├── extended-vigenere-cipher
│ │ │ │ ├── head.tsx
│ │ │ │ └── page.tsx
│ │ │ ├── hill-cipher
│ │ │ │ ├── head.tsx
│ │ │ │ └── page.tsx
│ │ │ ├── layout.tsx
│ │ │ ├── not-found.tsx
│ │ │ ├── playfair-cipher
│ │ │ │ ├── head.tsx
│ │ │ │ └── page.tsx
│ │ │ └── vigenere-cipher
│ │ │ ├── head.tsx
│ │ │ └── page.tsx
│ │ ├── (component)
│ │ │ ├── button-group.tsx
│ │ │ ├── cipher-list.tsx
│ │ │ └── key.tsx
│ │ ├── global-error.tsx
│ │ ├── globals.css
│ │ ├── head.tsx
│ │ ├── layout.tsx
│ │ └── page.tsx
│ ├── styles
│ │ ├── Cipher.module.scss
│ │ ├── _mixins.scss
│ │ └── Root.module.scss
│ └── utils
│ ├── desc.ts
│ ├── fonts.ts
│ └── type.ts
├── tsconfig.json
├── yarn-error.log
└── yarn.lock
```