尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A modern, privacy-focused random string generator web tool built with React, TypeScript, Vite, and Tailwind CSS. All processing happens entirely in the browser using cryptographically secure random values—no data is sent to any server.查看完整 README ↗A modern, privacy-focused random string generator web tool built with React, TypeScript, Vite, and Tailwind CSS. All processing happens entirely in the browser using cryptographically secure random values—no data is sent to any server.
crypto.getRandomValuessrc/
components/
GeneratorForm.tsx - Main form with all input controls
OptionsGroup.tsx - Character type selection
OutputPanel.tsx - Results display with copy/download
ThemeToggle.tsx - Dark/light mode toggle
hooks/
useStringGenerator.ts - Main state management hook
useLocalStorage.ts - localStorage persistence hook
lib/
generateStrings.ts - Pure string generation logic
formatOutput.ts - Output formatting logic
charsets.ts - Character set definitions
test/
setup.ts - Vitest setup
App.tsx - Main application component
main.tsx - Application entry point
index.css - Tailwind directives
# Install dependencies
npm install
# Start development server
npm run dev
# The app will be available at http://localhost:5173
# Build for production
npm run build
# Preview production build
npm run preview
# Run tests
npm run test
# Run tests with UI
npm run test:ui
# Run ESLint
npm run lint
# Fix ESLint issues automatically
npm run lint:fix
# Format code with Prettier
npm run format
The generator uses crypto.getRandomValues() with rejection sampling to avoid modulo bias, ensuring each character has an equal probability of being selected.
The core logic is separated into framework-free modules:
generateStrings.ts - Handles string generation with charset optionsformatOutput.ts - Formats output in 3 different stylescharsets.ts - Defines character sets and ambiguous character filteringThese can be easily imported and used in non-React projects.
For large generation jobs (e.g., 10,000 strings × 100 characters), the UI uses setTimeout to defer generation, keeping the interface responsive during generation.
role="alert" and aria-live="polite"MIT