A simple, client-side PGP encryption web app built with Svelte and Vite. Encrypt messages using public keys directly in your browser—no server required, ensuring privacy and security.
Clone the repository:
git clone https://github.com/yourusername/pgp-svelte-wsl.git
cd pgp-svelte-wsl
Install dependencies:
npm install
Start the development server:
npm run dev
Open http://localhost:5173 in your browser.
All encryption is performed client-side—your data never leaves your device.
npm run dev: Start the development server with hot reloading.npm run build: Build the app for production.npm run preview: Preview the production build locally.npm run test: Run unit tests with Vitest.npm run lint: Lint the code with ESLint.npm run format: Format code with Prettier.src/
├── App.svelte # Main app component (content)
├── Layout.svelte # Layout component (header/footer)
├── app.css # Custom styles and Pico overrides
├── lib/
│ ├── pgp.ts # PGP encryption logic
│ └── pgp.test.ts # PGP tests
├── main.js # App entry point
└── setupTests.js # Test setup
Run tests with:
npm test
Tests cover PGP functions (encryption, signing/verification) and UI behavior (form rendering, error handling).
git checkout -b feature/your-feature.git commit -m 'Add your feature'.git push origin feature/your-feature.Please ensure tests pass and code is linted before submitting.
This project is licensed under the MIT License. See LICENSE for details.