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

https://github.com/scorpi-on/richelieu-feistel-cipher

Lab work on program and data security / cryptography (Oct 2024, 7th semester of university)
https://github.com/scorpi-on/richelieu-feistel-cipher

cryptography daisyui feistel-network frontend lab-work richelieu-cipher tailwindcss

Last synced: 2 months ago
JSON representation

Lab work on program and data security / cryptography (Oct 2024, 7th semester of university)

Awesome Lists containing this project

README

        

# Richelieu-Feistel-cipher

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?logo=vite&logoColor=white)

Лабораторная работа по безопасности программ и данных, продуктом которой является веб-приложение, реализующее шифр
Ришелье и сеть Фейстеля для шифрования текстовых данных. По совместительству является проектом для изучения
фронтенд-разработки с использованием готового набора компонентов.

## Основные требования

- графический интерфейс
- шифрование данных шифром Ришелье и сетью Фейстеля
- поддержка ввода текста в интерфейсе и загрузку его из файла

## Особенности реализации

- [x] форма реализации — веб-приложение
- [x] адаптивая вёрстка
- [x] фронтенд основан на готовых компонентах
- [x] интегрированы инструменты сборки, тестирования, анализа кода
- [x] покрытие тестами функций шифрования
- [x] запуск линтера, тестов и деплоя с помощью GitHub Actions

## Стек

- **[Node.js](https://nodejs.org)** — платформа для запуска JavaScript
- **[TypeScript](https://www.typescriptlang.org/)** — язык программирования
- **[Vite](https://vite.dev/)** — инструмент сборки фронтенда
- **[Tailwind CSS](https://tailwindcss.com/)** — CSS-фреймворк
- **[DaisyUI](https://daisyui.com/)** — библиотека компонентов для Tailwind CSS
- **[Jest](https://jestjs.io/)** — фреймворк для тестирования
- **[ESLint](https://eslint.org/)** — статический анализатор кода
- **[Prettier](https://prettier.io/)** — форматировщик кода

## Установка и запуск

0. Клонируйте репозиторий и перейдите в его папку.
1. Установите [Node.js](https://nodejs.org).
2. Установите зависимости:

```shell
npm install --omit dev
```

3. Соберите проект:

```shell
npm run build
```

4. Теперь запускать сервер Vite можно командой:

```shell
npm run preview
```

## Модификация

Если вы планируете модифицировать проект, установите все зависимости:

```shell
npm install
```

Запуск сервера в режиме разработки с горячей перезагрузкой осуществляется командой:

```shell
npm run dev
```

Прочие скрипты, необходимые для запуска линтеров, тестов и т. д. находятся в файле [package.json](./package.json).