An interactive, combinatorial letter permutation engine and pronounceable name generator built with React 19, TypeScript, Vite, and Tailwind CSS.
Explore mathematical sequences from the 26-letter English alphabet (
-
Mathematical Scale Calculations: Computes exact theoretical possibilities (
$26^N$ ) and informational entropy in bits ($N \times 4.70\text{ bits}$ ). -
Interactive Math Explainer: Explore how the exponential combination space scales from 1 to 20+ characters (e.g.,
$26^9 \approx 5.43\text{ Trillion}$ combinations). - Constrained Possibility Calculator: Live calculation of remaining permutations when specific character slots or vowel/consonant rules are locked.
-
Custom Slot Constraints: Configure each letter position individually (Positions 1 through
$N$ ). -
Rule Types:
-
Any: Free 26-letter choice (
$A\text{–}Z$ ). -
Vowel: Restricted to vowels & semi-vowels (
$A, E, I, O, U, Y$ ). -
Consonant: Restricted to consonants (
$B, C, D, F, G, H, J, K, L, M, N, P, Q, R, S, T, V, W, X, Z$ ). - Exact Character: Lock a specific letter into any position.
-
Any: Free 26-letter choice (
- Preset Patterns: Instant 1-click patterns such as C-V-C-V alternating flow or Melodic 9-character cadence.
- Balanced Melodic Flow: Phonotactic scoring that prevents unpronounceable consonant clusters while maximizing lyrical cadence.
- Alternating Syllables: Enforces rhythmic consonant-vowel transitions.
- Root & Morpheme Blend: Seeds generated names with natural Latin/Greek roots, science affixes, and evocative word stems.
- Pure Combinatoric Random: Unconstrained exploration of raw 26-character permutations.
- Casing Controls: Instant conversion between Title Case (
Aa), Upper Case (UPPER), and Lower Case (lower).
-
Acrostic Virtue Matrix: Letter-by-letter virtue mapping (e.g.,
$L = \text{Luminous}, U = \text{Unstoppable}, M = \text{Mindful}, \dots$ ) with the ability to click any letter to cycle alternative traits. - Phonetic Analysis & Syllables: Automatic syllable hyphenation and pronounceability scoring (0–100%).
- Embedded Word Detection: Identifies English and classical morphemes inside generated combinations.
- Pronunciation Audio: Built-in Text-to-Speech (Web Speech API) for auditory playback.
- Custom Brand / Character Notes: Add notes or fictional lore directly to any generated name.
- Live Search: Substring lookup across generated combinations.
- Prefix / Suffix Filters: Filter by specific starting or ending characters.
- Flow Score Threshold: Filter combinations by minimum pronounceability score.
- Sorting Options: Sort by highest flow score, alphabetical (A–Z or Z–A), vowel density, or length.
- Export & Saved Drawer:
- Bookmark favorite names with celebratory confetti effects.
- Export bookmarks or batches to CSV or TXT.
- One-click copy for individual names, formatted meaning summaries, or visible batch lists.
- Neo-Brutalist Vibrant Palette: High-contrast layout with a warm cream background (
#FFF9E6), deep charcoal typography (#1A1A1A), hard-offset geometric drop shadows, and bright accent tones (Hot Pink#FF477E, Electric Cyan#00D1FF, Lemon Yellow#FFD100, Mint#00E699). - Fully Responsive: Optimized for mobile, tablet, and desktop viewports.
- Framework: React 19
- Language: TypeScript 5.8
- Bundler / Dev Server: Vite 6
- Styling: Tailwind CSS v4
- Icons: Lucide React
- Animations & Effects: Canvas Confetti, CSS Transitions
- Audio: Web Speech Synthesis API
- Node.js (v18 or higher recommended)
- npm or yarn
-
Clone or download the repository:
git clone <repository-url> cd <project-folder>
-
Install dependencies:
npm install
-
Start the local development server:
npm run dev
Open
http://localhost:3000in your browser. -
Build for production:
npm run build
-
Type check / lint:
npm run lint
├── index.html # HTML entry point with typography and meta tags
├── metadata.json # App metadata configuration
├── package.json # Project dependencies and npm scripts
├── src/
│ ├── App.tsx # Main application dashboard state & orchestrator
│ ├── main.tsx # React DOM root entry
│ ├── index.css # Global styles & neo-brutalist theme variables
│ ├── types.ts # TypeScript interfaces and type definitions
│ ├── components/
│ │ ├── Header.tsx # App header with quick actions and stats badge
│ │ ├── GeneratorControls.ts# Length, batch size, casing, and algorithm controls
│ │ ├── SlotConfigurator.tsx# Letter-by-letter position matrix editor
│ │ ├── FilterBar.tsx # Search, prefix/suffix filters, sorting & thresholds
│ │ ├── NameCard.tsx # Individual generated name card with speech & actions
│ │ ├── MeaningModal.tsx # Acrostic analysis and trait inspection modal
│ │ ├── SavedNamesDrawer.tsx# Bookmarked names drawer with CSV/TXT export
│ │ └── MathExplainer.tsx # 26ⁿ combinatorics formula & comparison modal
│ ├── utils/
│ │ ├── combinatorics.ts # BigInt combination math & entropy formulas
│ │ └── nameEngine.ts # Phonotactic flow generator & scoring algorithms
│ └── data/
│ └── linguisticData.ts # Phonetic tables, root words, and acrostic virtues
└── README.md # Project documentation
MIT