CodeManipulate (formerly CodeLangConvert) is a sophisticated, AI-powered web application designed to revolutionize how developers work with code across multiple programming languages. Built with cutting-edge Google Generative AI technology, this tool provides intelligent code language detection, seamless cross-language conversion, and professional code formatting capabilities.
- π§ Advanced AI Detection: Utilizes Google's Gemini AI for accurate language detection with 99%+ accuracy
- β‘ Lightning Fast: Process up to 5000 characters of code in under 3 seconds
- π Universal Support: Covers 25+ programming languages and frameworks
- π¨ Professional Formatting: Built-in Prettier integration for consistent code styling
- π± Responsive Design: Fully optimized for desktop, tablet, and mobile devices
- π Dark/Light Themes: Eye-friendly themes for extended coding sessions
- π File Upload Support: Direct file processing for multiple formats
- π Privacy First: No code storage, all processing happens client-side where possible
- Auto-Detection Engine: Powered by Google Gemini AI with machine learning algorithms
- Syntax Analysis: Deep parsing of code structure, keywords, and patterns
- Multi-Language Support: Detects 25+ languages including modern frameworks
- Confidence Scoring: Provides accuracy percentages for detection results
- Edge Case Handling: Manages mixed-language files and code snippets
- Cross-Language Translation: Convert between any supported language pairs
- Context Preservation: Maintains logic flow, variable naming, and code structure
- Comment Translation: Preserves and translates code comments
- Framework Adaptation: Adapts to target language conventions and best practices
- Error Handling: Graceful handling of conversion limitations and edge cases
- Multi-Language Formatting: Supports 17 major languages and formats
- Customizable Rules: Configurable indentation, spacing, and style preferences
- Real-Time Processing: Instant formatting with live preview
- Consistency Enforcement: Ensures uniform code style across projects
- Integration Ready: Compatible with popular IDE formatting standards
- Multiple Format Support:
.js
,.py
,.cpp
,.ts
,.json
,.html
,.css
, and more - Drag & Drop Interface: Intuitive file upload with visual feedback
- Batch Processing: Handle multiple files simultaneously
- Size Optimization: Efficient processing of large code files
- Preview Mode: Review files before processing
- Intuitive Interface: Clean, modern design with minimal learning curve
- Real-Time Feedback: Live character count, progress indicators, and status updates
- Copy-to-Clipboard: One-click copying with success notifications
- Download Results: Export converted code to various file formats
- History Tracking: Session-based history of recent conversions (no persistent storage)
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Frontend β β Backend β β AI Service β
β (Client-Side) ββββββ€ (Node.js) ββββββ€ (Google AI) β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β’ HTML5/CSS3 β β β’ Express.js β β β’ Gemini API β
β β’ Vanilla JS β β β’ Body Parser β β β’ NLP Models β
β β’ Prettier.js β β β’ CORS β β β’ ML Algorithms β
β β’ File APIs β β β’ dotenv β β β’ Cloud Scale β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
- Input Sanitization: Clean and validate user input
- Language Detection: AI-powered syntax and pattern analysis
- Context Analysis: Understand code structure and dependencies
- Translation Engine: Convert logic and syntax to target language
- Post-Processing: Format, optimize, and validate output
- Quality Assurance: Error checking and consistency validation
Core Technologies:
- HTML5: Semantic markup with accessibility features
- CSS3: Modern styling with Flexbox and Grid layouts
- Vanilla JavaScript: ES6+ features for optimal performance
- Web APIs: File API, Clipboard API, Local Storage API
Key Components:
- Language Selector: Dynamic dropdown with search functionality
- Code Editor: Syntax-highlighted text areas with line numbers
- File Uploader: Drag-and-drop with progress indicators
- Theme Controller: Dark/light mode with system preference detection
- Result Panel: Formatted output with copy/download options
CodeManipulate/
βββ images/ (π Contains static images/icons used in the website)
β βββ favicon.ico (π Favicon for the browser tab icon)
| βββ Screenshot.png (π Website Screenshot )
β
βββ node_modules/ (π Installed dependencies via npm; auto-generated folder)
β
βββ public/ (π Main public-facing files for frontend)
β
β βββ css/ (π All stylesheets used for styling the frontend)
β β βββ formatter.css (π¨ Styles specifically for the formatter page/component)
β β βββ style.css (π¨ General styles for the main index/home page)
β
β βββ script/ (π JavaScript files for app logic & functionality)
β β βββ formatter.js (π§ Handles code formatting using supported libraries)
β β βββ main.js (π§ Controls UI interactions, language conversion, theme toggling)
β
β βββ formatter.html (π Dedicated page for code formatting feature only)
β βββ index.html (π Main homepage with language detection & code conversion)
β
βββ .env (π Stores API keys like Google Gemini β not shared publicly)
βββ .gitignore (π« Tells Git to ignore files/folders like node_modules, .env)
β
βββ package.json (π¦ Declares project metadata, scripts, and dependencies)
βββ package-lock.json (π¦ Auto-generated file that locks dependency versions for reproducibility)
β
βββ LICENSE (π MIT License)
|
βββ server.js (π₯οΈ Node.js + Express backend server to handle API requests to Gemini)
βββ README.md (π Documentation about your project, features, usage, etc.)
System Requirements:
- Node.js: v18.0.0 or higher
- npm: v8.0.0 or higher
- Git: Latest stable version
- Modern Browser: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+
API Requirements:
- Google AI Platform account
- Valid Gemini API key
- Sufficient API quota for your usage
-
Clone the Repository
git clone https://github.com/avdeshjadon/CodeManipulate.git cd CodeManipulate
-
Install Dependencies
npm install
-
Configure Environment Variables
# Google AI Configuration GOOGLE_API_KEY=your_gemini_api_key_here
-
Start Development Server
npm run dev # or node server.js
-
Access Application
- Open browser to
http://localhost:3000
- Verify all features are working correctly
- Open browser to
GitHub Pages Deployment:
- Fork the repository to your GitHub account
- Configure repository settings for GitHub Pages
- Update API & .env endpoints in configuration
- Deploy using GitHub Actions workflow
Manual Deployment:
npm run build
npm start
Step 1: Input Your Code
- Navigate to the main application interface
- Paste your code into the source code text area
- The system automatically detects character count (max 5000)
- Real-time syntax validation provides immediate feedback
Step 2: Language Detection
- Click "Detect Language" or wait for auto-detection
- AI analyzes syntax patterns, keywords, and structure
- Detection results show confidence percentage
- Manual override available if needed
Step 3: Select Target Language
- Choose desired output language from dropdown
- Preview conversion complexity and estimated time
- Select any additional conversion options
- Confirm conversion parameters
Step 4: Convert & Download
- Click "Convert Code" to start AI processing
- Monitor progress with real-time updates
- Review converted code with syntax highlighting
- Copy to clipboard or download as file
Supported Languages for Formatting:
- Web Technologies: HTML, CSS, SCSS, LESS, JavaScript, TypeScript
- Frameworks: JSX, TSX, Vue.js components
- Data Formats: JSON, JSON5, JSONC, YAML
- Documentation: Markdown, MDX
- Query Languages: GraphQL
- Template Engines: Handlebars
Formatting Options:
- Indentation: Spaces (2, 4) or Tabs
- Line Width: 80, 100, 120 characters
- Semicolons: Always, never, or preserve
- Quotes: Single, double, or preserve
- Trailing Commas: All, ES5, none
Supported File Types:
Programming Languages:
.js, .jsx, .ts, .tsx, .py, .java, .cpp, .c, .cs, .php, .rb, .go, .rs, .swift, .kt, .scala, .dart
Web Technologies:
.html, .htm, .css, .scss, .sass, .less, .vue
Data & Configuration:
.json, .yaml, .yml, .xml, .toml, .ini, .env
Documentation:
.md, .mdx, .txt, .rst
Others:
.sql, .sh, .ps1, .dockerfile
Source Language | Target Languages | Conversion Quality | Notes |
---|---|---|---|
JavaScript | Python, Java, C++, TypeScript, Go | βββββ | Excellent support for all modern JS features |
Python | JavaScript, Java, C++, Go, Rust | βββββ | Strong support for Python 3.x syntax |
Java | C++, C#, Python, JavaScript, Kotlin | ββββ | Good OOP concept translation |
C++ | C, Java, C#, Rust, Go | ββββ | Memory management concepts adapted |
TypeScript | JavaScript, Java, C#, Python | βββββ | Type information preserved where possible |
C# | Java, C++, VB.NET, F#, TypeScript | ββββ | .NET ecosystem compatibility |
Go | C++, Rust, Java, Python | ββββ | Concurrency patterns translated |
Rust | C++, C, Go, Zig | ββββ | Memory safety concepts explained |
PHP | JavaScript, Python, Java, C# | βββ | Web-specific features adapted |
Ruby | Python, JavaScript, Java | βββ | Dynamic features preserved |
Swift | Objective-C, Java, Kotlin, C++ | ββββ | iOS-specific concepts documented |
Kotlin | Java, Swift, C#, TypeScript | ββββ | Interoperability features maintained |
Dart | JavaScript, TypeScript, Java | βββ | Flutter-specific patterns adapted |
Scala | Java, Kotlin, F#, Haskell | βββ | Functional programming concepts preserved |
Haskell | Scala, F#, OCaml, Elm | βββ | Pure functional paradigms explained |
Language | Prettier | Auto-Fix |
---|---|---|
JavaScript | β | β |
TypeScript | β | β |
JSX/TSX | β | β |
HTML | β | β |
CSS/SCSS | β | β |
JSON | β | β |
Markdown | β | β |
Vue | β | β |
YAML | β | β |
GraphQL | β | β |
Python | β | |
Java | β | |
C++ | β |
We welcome contributions from developers of all skill levels! Here's how you can help make CodeManipulate even better:
-
Fork the Repository
git fork https://github.com/avdeshjadon/CodeManipulate.git
-
Create a Feature Branch
git checkout -b feature/your-amazing-feature
-
Make Your Changes
- Follow existing code style and conventions
- Add tests for new functionality
- Update documentation as needed
-
Submit a Pull Request
- Provide a clear description of changes
- Include screenshots for UI changes
- Reference any related issues
- Found a Bug? Open an issue with detailed reproduction steps
- Have an Idea? Create a feature request with use cases and examples
- Need Help? Check existing issues or start a discussion
- Language Support: Add support for new programming languages
- AI Improvements: Enhance detection accuracy and conversion quality
- UI/UX: Improve user interface and experience
- Testing: Add comprehensive test coverage
- Documentation: Improve guides and API documentation
- Performance: Optimize code processing speed and efficiency
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2024 Avdesh Jadon
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
- Google AI Team for providing the powerful Gemini API
- Prettier Team for the excellent code formatting library
- Open Source Community for inspiration and feedback
- Beta Testers who helped improve the application
- All Contributors who made this project possible
- Developer: Avdesh Jadon
- Project Repository: CodeManipulate on GitHub
- Live Demo: Try CodeManipulate
- Issues & Bug Reports: GitHub Issues
If you find CodeManipulate helpful, please consider:
Click the β button at the top of this page to show your support!
Help us grow by creating your own copy and contributing improvements!
Spread the word about CodeManipulate in your developer community!
Join our growing community of contributors and help make coding easier for everyone!