string-tools

String Tools πŸ”§

Privacy-first string transformation and generation tools for developers

A fast, secure, and privacy-focused web application for string manipulation, transformation, and generation. All processing happens entirely in your browser - no data ever leaves your device.

String Tools Logo

✨ Features

πŸ”€ Text Case Transformations

🏷️ Naming Style Conversions

πŸ”„ Text Manipulation

πŸ” Encode & Decode

πŸ” Extract & Validate

🎲 Generators

πŸš€ Quick Start

Prerequisites

Installation

  1. Clone the repository
    git clone <your-repo-url>
    cd string-fly-ui
    
  2. Install dependencies
    npm install
    # or
    yarn install
    # or  
    pnpm install
    # or
    bun install
    
  3. Start development server
    npm run dev
    # or
    yarn dev
    # or
    pnpm dev
    # or
    bun dev
    
  4. Open your browser Navigate to http://localhost:3000

πŸ—οΈ Built With

πŸ“ Project Structure

src/
β”œβ”€β”€ app/                      # Next.js App Router pages
β”‚   β”œβ”€β”€ generate/            # Generation tools
β”‚   β”‚   β”œβ”€β”€ uuid/           # UUID generator
β”‚   β”‚   β”œβ”€β”€ nanoid/         # NanoID generator  
β”‚   β”‚   β”œβ”€β”€ random/         # Random string generator
β”‚   β”‚   └── password/       # Password generator
β”‚   β”œβ”€β”€ transform/          # Transformation tools
β”‚   β”‚   β”œβ”€β”€ case/           # Case transformations
β”‚   β”‚   β”œβ”€β”€ style/          # Naming style conversions
β”‚   β”‚   β”œβ”€β”€ manipulate/     # Text manipulation
β”‚   β”‚   β”œβ”€β”€ encode/         # Encode/decode operations
β”‚   β”‚   └── extract/        # Pattern extraction
β”‚   └── layout.tsx          # Root layout with metadata
β”œβ”€β”€ components/             # Reusable React components
β”‚   β”œβ”€β”€ ui/                # shadcn/ui components
β”‚   β”œβ”€β”€ navigation.tsx     # Main navigation
β”‚   β”œβ”€β”€ operation-shell.tsx # Generic operation wrapper
β”‚   └── password-strength-meter.tsx # Password analysis
β”œβ”€β”€ lib/                   # Utility functions & logic
β”‚   β”œβ”€β”€ operations.ts     # Core transformation functions
β”‚   β”œβ”€β”€ password-strength.ts # Password analysis logic
β”‚   β”œβ”€β”€ store.ts         # Zustand state management
β”‚   └── utils.ts         # General utilities
└── styles/
    └── globals.css      # Global Tailwind styles

πŸ”’ Privacy & Security

🌟 Key Features

⚑ Performance

πŸ”— Shareable URLs

πŸ“± Responsive Design

🎨 Modern UI

πŸ› οΈ Development

Scripts

# Development
npm run dev          # Start development server
npm run build        # Build for production  
npm run start        # Start production server
npm run lint         # Run ESLint
npm run type-check   # Run TypeScript checks

Adding New Operations

  1. Add function to src/lib/operations.ts
    export const yourOperation = (input: string): OperationResult => {
      const start = performance.now()
      const result = input.yourTransformation()
      return { result, perfMs: performance.now() - start }
    }
    
  2. Register in operations registry
    export const operations = {
      // ... existing operations
      'your-operation': yourOperation,
    }
    
  3. Add to transform pages in src/app/transform/page.tsx

πŸš€ Deployment

GitHub Pages

This app is configured for automatic deployment to GitHub Pages. See DEPLOYMENT.md for detailed instructions.

Quick setup:

  1. Push to GitHub repository
  2. Enable GitHub Pages with β€œGitHub Actions” source
  3. The app will automatically deploy on push to main branch

Manual Deployment

npm run build    # Creates static export in 'out' directory

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🀝 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

πŸ™ Acknowledgments


Made with ❀️ for developers who value privacy and performance