Skip to content

React suite for practicing lots of useless technical skills (Binary to decimal conversion, Subnetting calculations, Doomsday Rule, etc.). It uses i18n, SCSS modules, and IndexedDB persistence.

Notifications You must be signed in to change notification settings

kbtale/Useless-Polymath

Repository files navigation

Useless Polymath

A React suite for practicing technical, mathematical, and cryptographic skills to impress absolutely nobody at parties.

React TypeScript Vite Sass Dexie.js Vitest


Modules

The application is structured into isolated domains, each containing a Tool (calculator/converter), a Practice mode (drills), and a Guide.

Chronometry

  • Doomsday Algorithm: Calculate the day of the week for any date mentally.
  • Time Zones: Offset calculations and UTC conversions.
  • Moon Phases: Algorithmic calculation of the moon's age (0-29).
  • Calendar Ordinals: Day-of-year calculations.

Logic & Electronics

  • Binary/Hex: Base conversion drills (Decimal ↔ Binary ↔ Hex).
  • Bitwise Operations: Visualizing AND, OR, XOR, NOT, and bit shifting.
  • Resistor Codes: Reading 4-band and 5-band electronic resistors.
  • Roman Numerals: Standard and non-standard conversion logic.

Cryptography

  • Ciphers: Caesar Cipher (ROT-N).
  • Encodings: Morse Code, Braille, Semaphore flags.
  • NATO Alphabet: Phonetic spelling drills.

Networks

  • Subnetting: IPv4 CIDR, Network ID, and Broadcast address calculations.
  • Storage Units: Bit/Byte conversion (Base 2 vs Base 10).
  • Color Theory: RGB to Hex conversion logic.
  • ASCII: Character code lookups.

Algorithms & Science

  • Validation: Luhn Algorithm (Credit Cards) and EAN-13 (Barcodes).
  • Science: Periodic Table data and Thermodynamics (C/F/K) conversion.
  • Financial: Rule of 72 (Interest rate doubling).

Technical Stack

  • Core: React 19, TypeScript, Vite.
  • State/Persistence: Dexie.js (IndexedDB wrapper) for persisting user statistics and progress.
  • Styling: SCSS Modules (*.module.scss) for component-scoped styles.
  • Localization: i18next with lazy-loading backends (English, Spanish, Italian).
  • Linting: ESLint (Flat Config).

About

React suite for practicing lots of useless technical skills (Binary to decimal conversion, Subnetting calculations, Doomsday Rule, etc.). It uses i18n, SCSS modules, and IndexedDB persistence.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages