A modern, web-based text transformation tool built with React, TypeScript, and Material UI 3. Transform your text with various formatting options, case changes, and text analysis features.
- Case Changes: Uppercase, lowercase, title case, sentence case
- Naming Conventions: camelCase, snake_case, kebab-case
- Text Cleaning: Remove markdown tags, spaces, newlines
- Text Analysis: Word count, character count, line count
- Fun Features: Reverse text
- Floating AI Sidebar: Access AI tools from anywhere with a beautiful floating interface
- Glowing Ring Animation: Eye-catching animated button with smooth transitions
- Text Summarization: Create concise summaries of your text
- Grammar Correction: Fix grammar, spelling, and improve writing style
- Style Transfer: Transform text to different writing styles (professional, casual, formal, etc.)
- Language Translation: Translate text to multiple languages
- Text Analysis: Get detailed insights about tone, style, and themes
- Content Expansion: Add more detail and examples to your text
- Content Generation: Create new content based on topics
- Custom AI Prompts: Use your own custom prompts for AI processing
- Real-time Streaming: Toggle streaming mode for word-by-word AI responses
- Powered by Azure OpenAI Service: Leveraging GPT-4.1-nano for advanced text processing
- π¨ Material UI 3 with expressive design
- π Auto dark mode detection based on system preference
- π± Responsive design for all devices
- π Copy to clipboard functionality
- πΎ File upload/download support
- π Toast notifications for user feedback
- π Sample Texts with 8 different categories for testing AI features
- Node.js (version 16 or higher)
- npm or yarn
- GitHub Personal Access Token (for AI features) - supports both fine-grained and classic tokens
- Clone the repository:
git clone https://github.com/novasuitelabs/textmodifiers.git
cd textmodifiers- Install dependencies:
npm install-
Set up environment variables:
- Create a
.envfile in the root directory - Add your GitHub Personal Access Token:
VITE_GITHUB_TOKEN=your_github_token_here- Get your token from: https://github.com/settings/tokens
- Recommended: Use fine-grained tokens for better security
- See ENVIRONMENT_SETUP.md for detailed setup instructions
- Create a
-
Start the development server:
npm run dev- Open your browser and navigate to
http://localhost:3000
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLint
- Framework: React 18 with TypeScript
- Build Tool: Vite
- UI Library: Material UI 3
- Styling: Emotion (CSS-in-JS)
- Icons: Material Icons
- Deployment: GitHub Pages ready
- Choose Sample Text: Select from 8 different text categories (Business, Creative, Academic, Technical, etc.)
- Randomize: Use the shuffle button to get a random sample text
- Enter Custom Text: Type or paste your own text in the input field
- Upload File: Click "Upload File" to load text from a file (.txt, .md, .json, .csv)
- Transform: Click any transformation chip to apply the transformation
- Copy/Download: Use the copy or download buttons to save your transformed text
- Floating AI Button: Click the glowing AI button on the right side of the screen
- Quick AI Actions: Use the sidebar for common AI tasks like summarization and grammar correction
- Advanced AI Tools: Access more advanced features like style transfer, translation, and content generation
- Expandable Interface: Toggle between compact and expanded sidebar views
- Custom Prompts: Create your own AI prompts for specialized text processing
- Real-time Processing: Watch the AI process your text with loading indicators and error handling
- Azure OpenAI Integration: Powered by Microsoft's Azure OpenAI Service with GPT-4.1-nano
To add a new text transformation, modify the textTransformers object in src/App.tsx:
const textTransformers = {
// ... existing transformers
yourNewTransform: (text: string) => {
// Your transformation logic here
return transformedText;
},
};Then add it to the transformationButtons array:
const transformationButtons = [
// ... existing buttons
{ key: 'yourNewTransform', label: 'Your Transform Label' },
];The app uses Material UI 3 theming. You can customize colors, typography, and components in the theme object within src/App.tsx.
- Build the project:
npm run build-
Push to GitHub and enable GitHub Pages in your repository settings
-
Set the source to "Deploy from a branch" and select the
gh-pagesbranch
- Connect your GitHub repository to Netlify
- Set build command:
npm run build - Set publish directory:
dist - Deploy!
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Material UI for the beautiful UI components
- Vite for the fast build tool
- React for the amazing framework
If you have any questions or need help, please open an issue on GitHub.
Made with β€οΈ by Nova Suite Labs using React and Material UI 3