mirror of
https://github.com/infrost/RaptorQR.git
synced 2026-08-31 23:17:57 +08:00
b20e5c9c17
- Protocol: packet format, CRC32C, CBOR manifest, fragmentation - FEC: GF(256) arithmetic, xoshiro128** PRNG, systematic RLNC encoder/decoder - QR: generation (qrcode-generator), rasterization (3px/module), decoding (jsQR) - GIF: animated GIF generation (gifenc) with 2-colour palette - Preprocessing: deflate compression, SHA-256 hashing - Sender pipeline: packetizer, frame scheduler with interleaving - Workers: encode, gif generation, decode/reconstruction in Web Workers - UI: Preact SPA with Sender/Receiver tabs, dark theme - Tests: 93 passing (unit, property-based, integration, E2E) - Default profile: Robust (V31-Q, K=24, R=12) - Deployed to /hermes-web-demos/qr-transfer/
29 lines
531 B
TypeScript
29 lines
531 B
TypeScript
import { defineConfig } from 'vite';
|
|
import preact from '@preact/preset-vite';
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
preact({
|
|
resolveModuleFormat: false,
|
|
}),
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
'@': '/home/aiagent/projects/qr/src',
|
|
},
|
|
},
|
|
test: {
|
|
environment: 'happy-dom',
|
|
include: ['src/tests/**/*.test.ts'],
|
|
setupFiles: ['src/tests/setup.ts'],
|
|
},
|
|
worker: {
|
|
format: 'es',
|
|
},
|
|
base: '/hermes-web-demos/qr-transfer/',
|
|
build: {
|
|
outDir: 'dist',
|
|
emptyOutDir: true,
|
|
},
|
|
});
|