Skip to content

VIJAYAPANDIANT/Word-Counter-Pro

Repository files navigation

🌌 Word Counter Pro - Premium Text Analytics

License: ISC Node.js Version TypeScript Vercel Deployment

A sleek, cosmic-themed high-performance text analysis tool built with Node.js 🟢, Express 🚂, and TypeScript 📘. This application provides real-time statistics for word counts, character counts, and more, all wrapped in a stunning cosmic-themed glassmorphism interface.


✨ Features

  • ⚡ Real-time Analysis: Get instant feedback as you type, powered by an efficient debounced API.
  • 🎨 Premium Aesthetics:
    • 💎 Glassmorphism: Elegant transparent cards with backdrop blur.
    • 🌌 Dynamic Background: Moving cosmic blobs and a three-layer animated galaxy star field.
    • ✨ Smooth Transitions: Micro-animations for a fluid user experience.
  • 📊 Deep Insights:
    • 📝 Word Count: Accurate word counting excluding whitespace.
    • 🔤 Character Count: Total character count including spaces.
    • ✂️ Clean Count: Character count excluding all whitespace.
  • 📱 Responsive Design: Fully optimized for desktop and mobile devices.

🚀 Tech Stack

Category Technology
Frontend HTML5, Vanilla CSS3 (Custom Design System), TypeScript
Backend Node.js, Express.js
Tooling TypeScript Compiler (tsc), npm, Vercel CLI
Deployment Vercel

🛠️ Project Structure

├── public/                 # Static assets (HTML, CSS, compiled JS)
│   ├── index.html          # Main entry point
│   ├── style.css           # Custom design system & animations
│   └── client/             # Compiled client-side TypeScript
├── src/                    # Source code
│   ├── client/             # Client-side TypeScript source
│   │   └── script.ts       # Main UI logic & API interaction
│   ├── controllers/        # Backend logic
│   │   └── analysis.controller.js
│   └── routes/             # API route definitions
│       └── analysis.routes.js
├── server.js               # Express server configuration
├── tsconfig.json           # TypeScript configuration
├── package.json            # Project dependencies & scripts
└── vercel.json             # Vercel deployment configuration

🏃 Getting Started

Prerequisites

  • Node.js (v14 or higher recommended)
  • npm (usually comes with Node.js)

Installation

  1. Clone the repository:
    git clone https://github.com/VIJAYAPANDIANT/Word-Counter-Pro.git
    cd Word-Counter-Pro
  2. Install dependencies:
    npm install

Running Locally

  1. Build the Client: Compile the TypeScript files:
    npm run build
  2. Start the Server:
    npm start
  3. Access the App: Navigate to http://localhost:5001.

📡 API Reference

Analyze Text

Analyze a string and return word and character counts.

  • URL: /api/analyze
  • Method: POST
  • Payload:
    {
      "text": "Your text goes here"
    }
  • Response:
    {
      "wordCount": 4,
      "charCount": 19,
      "charCountNoSpaces": 16,
      "success": true
    }

🔧 Technical Notes

  • Debouncing: The client uses a custom type-safe debounce implementation to ensure minimal server load while typing.
  • Modern CSS: Leverages @supports for progressive enhancement (e.g., backdrop-filter).
  • Strict Typing: TypeScript strict: true ensures robust and error-free code.
  • Accessibility: Semantic HTML with proper aria-label attributes for form elements.

🌩️ Deployment

The project is configured for seamless deployment on Vercel.

  1. Install Vercel CLI: npm i -g vercel
  2. Deploy: vercel --prod

🗺️ Roadmap

  • Reading time estimation.
  • Sentence and Paragraph count.
  • Language detection.
  • Export analysis results to PDF/JSON.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

⚖️ License

Distributed under the ISC License. See package.json for more information.


👨‍💻 Author

VIJAYA PANDIAN T

About

Premium cosmic-themed text analytics tool with real-time word and character counting. Built with Node.js, Express, and TypeScript. Featuring a stunning glassmorphism UI and dynamic cosmic animations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors