TextMint (developed in the TextUtils repository) is a modern, comprehensive, and privacy-first text manipulation and real-time analysis web application. Designed for developers, writers, editors, and students, TextMint offers a suite of powerful utilities to edit, format, compare, and transform text directly in the browser.
Created by Rahil Shah (rahilshah3105).
Access the live application here: https://textmint.netlify.app/
- About The Project
- The Problem It Solves
- Key Features
- Tech Stack
- Screenshots
- Installation & Setup
- Usage Instructions
- SEO & Discoverability
- Future Enhancements
- Author
- License
TextMint is a highly responsive, single-page React application built to streamline common text operations. Whether you need to analyze writing readability, find differences between two drafts, format complex JSON structures, or encrypt/encode snippets, TextMint provides a centralized, beautiful glassmorphic dashboard to get it done instantly.
Designed to be beginner-friendly for everyday users yet feature-rich enough for developers, TextMint combines high performance with fluid, elegant UI customizability.
Most online text utility tools require pasting sensitive, private, or proprietary data (such as API payloads, emails, keys, or drafts) onto external servers. This poses a major privacy and data security risk.
TextMint solves this by being 100% client-side. All text calculations, transformations, and comparisons happen locally in your web browser. No server calls are made, ensuring your data never leaves your device. It runs securely and privately.
- Case Converters: Convert to UPPERCASE, lowercase, Capitalize Each Word, Title Case, camelCase, snake_case, kebab-case, alternating case.
- Line Operations: Sort lines alphabetically, add line numbers, and remove duplicate lines.
- Layout & Alignment: Center, left, right, or justify alignment; trim whitespace and remove extra spaces.
- Find & Replace: Dynamic search with live visual highlighting and global replacement.
- Text-to-Speech: Listen to your text using browser-native speech synthesis with controls.
- ROT13 Cipher: Instantly encrypt/decrypt text snippets.
- Real-time Counters: Track word count, character count, sentences, paragraphs, and line counts dynamically as you type.
- Readability Index: Automated readability calculation using the Flesch Reading Ease formula.
- Estimations: Average reading and speaking time estimates based on standard speeds.
- Frequencies: Interactive lists displaying the most frequently used words and characters.
- Side-by-Side View: Input two drafts and visually track added, removed, or modified terms.
- Similarity Score: An exact percentage indicator showing how similar the text blocks are.
- JSON Formatter & Minifier: Beautify raw JSON with proper indentation or compress it for payload optimization.
- Encoders & Decoders: Support for Base64, Hexadecimal, Binary, and URL encoding/decoding.
- HTML Escaper: Safely encode HTML tags for secure web rendering.
- Multiple Themes: Choose from 7 pre-curated color branding palettes (Blue, Red, Green, Yellow, Grey, Aqua, and Dark).
- True Dark Mode: Sleep-friendly dark interface protecting eyes during night shifts.
- Persistence & Auto-save: Restores active editor drafts and user preferences (like theme and mode) automatically on reload.
- Frontend Core: React.js (v18.2.0)
- Styling UI: Bootstrap (v5.1.3) & Custom Vanilla CSS (fluid glassmorphism, smooth transitions)
- Icons: React Icons & Lucide React
- Document Export: jsPDF & html2canvas
- Deployment: Netlify
Below are UI placeholders representing the core layout of TextMint.
| Light Mode Dashboard | Dark Mode Dashboard |
|---|---|
| Text Comparison View | Utility Tools View |
|---|---|
Follow these steps to run TextMint locally on your computer:
Make sure you have Node.js installed:
-
Clone the Repository
git clone https://github.com/rahilshah3105/TextUtils.git cd TextUtils -
Install Dependencies
npm install
Note: If you encounter peer dependency conflicts, resolve them safely with
npm install --legacy-peer-deps. -
Start the Development Server
npm start
The application will launch automatically at
http://localhost:3000in your browser. -
Build for Production
npm run build
Compiles and builds production-ready files in the
/buildfolder.
- Toolbar Tab Navigation: Navigate between the Text Editor, Text Comparison (Diff), and Utility Tools using the horizontal tab menu or use keyboard shortcuts
Ctrl + 1,Ctrl + 2, andCtrl + 3. - Text Processing: Type or paste text into the inputs to instantly view character statistics, word counts, and readability analysis.
- Saving Drafts: Click "Save Draft" in the editor. TextMint automatically handles backup persistence so you won't lose work on tab refreshes.
- Exporting Documents: Use the export buttons at the bottom of the editor to download your formatted text as a plain
.txtfile, custom.htmlpage, or generate a.pdflayout. - Theme Selection: Click the sun/moon button in the top navbar to toggle Light/Dark Mode, or choose a custom color theme accent from the menu choices to suit your visual style.
To improve visibility and search performance (making sure the page loads and ranks on Google Search Console):
- Canonical Configuration: Configured
<link rel="canonical">inindex.htmlreferencinghttps://textmint.netlify.app/. - Sitemap (
sitemap.xml): Pre-generated index maps for Google Crawler bot optimization. - Robots Configuration (
robots.txt): Structured crawlers direction pointing explicitly to the sitemap location. - Verification: Embedded Google Search Console meta tag directly within the head template.
- Schema Markup: Implemented structured metadata tags for proper index listings.
- Add a visual Markdown Editor featuring a side-by-side live HTML renderer.
- Incorporate advanced Regex (Regular Expression) Search & Replace engine.
- Implement integrated grammar checklist indicator warnings.
- Support file uploads to directly edit
.docxor.pdffile text. - Build a browser extension for quick access to utility features.
Created by Rahil Shah (rahilshah3105).
- GitHub: @rahilshah3105
- LinkedIn: Rahil Shah
This project is licensed under the MIT License. See the LICENSE file for details.