{"id":30774945,"url":"https://github.com/mikofure/mikoide","last_synced_at":"2025-09-05T03:04:50.411Z","repository":{"id":307965030,"uuid":"1031199835","full_name":"mikofure/MikoIDE","owner":"mikofure","description":"A modern, cross-platform Integrated Development Environment (IDE) built with cutting-edge web technologies and native performance.","archived":false,"fork":false,"pushed_at":"2025-08-12T13:52:58.000Z","size":7626,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-12T14:42:43.027Z","etag":null,"topics":["build-system","cef","chromium","cpp","cross-platform","development","ide","monaco-editor","solidjs","tailwindcss","typescript","vscode"],"latest_commit_sha":null,"homepage":"https://ide.mikofure.org","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikofure.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-03T08:23:09.000Z","updated_at":"2025-08-12T13:53:02.000Z","dependencies_parsed_at":"2025-08-03T11:35:47.045Z","dependency_job_id":null,"html_url":"https://github.com/mikofure/MikoIDE","commit_stats":null,"previous_names":["mikofure/mikoide"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/mikofure/MikoIDE","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikofure%2FMikoIDE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikofure%2FMikoIDE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikofure%2FMikoIDE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikofure%2FMikoIDE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikofure","download_url":"https://codeload.github.com/mikofure/MikoIDE/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikofure%2FMikoIDE/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273703718,"owners_count":25153011,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-system","cef","chromium","cpp","cross-platform","development","ide","monaco-editor","solidjs","tailwindcss","typescript","vscode"],"created_at":"2025-09-05T03:03:50.840Z","updated_at":"2025-09-05T03:04:50.400Z","avatar_url":"https://github.com/mikofure.png","language":"TypeScript","readme":"# MikoIDE\n![Status](https://img.shields.io/badge/Status-In%20Development-yellow?style=for-the-badge)\n![License](https://img.shields.io/badge/license-MIT-blue?style=for-the-badge)\n![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey?style=for-the-badge)\n![Chromium Version](https://img.shields.io/badge/Chromium-120.0.6099.234-brightgreen?style=for-the-badge)\n![CEF Version](https://img.shields.io/badge/CEF-120.2.7-green?style=for-the-badge)\n![SolidJS](https://img.shields.io/badge/SolidJS-1.9.7-blue?style=for-the-badge)\n![TypeScript](https://img.shields.io/badge/TypeScript-5.9.2-blue?style=for-the-badge)\n![Monaco Editor](https://img.shields.io/badge/Monaco%20Editor-0.52.2-red?style=for-the-badge)\n![Vite](https://img.shields.io/badge/Vite-7.0.6-purple?style=for-the-badge)\n![Build System](https://img.shields.io/badge/Build-CMake%20%7C%20Vite-orange?style=for-the-badge)\n\nA modern, cross-platform Integrated Development Environment (IDE) built with cutting-edge web technologies and native performance.\n\n\u003cimg width=\"1426\" height=\"914\" alt=\"image\" src=\"https://github.com/user-attachments/assets/f9b9cad8-a50b-4abd-94f6-f3c3c80e5a83\" /\u003e\n\n\n## 🚀 Features\n\n- **Cross-Platform**: Runs natively on Windows, macOS, and Linux\n- **Modern UI**: Built with SolidJS and TailwindCSS for a responsive, beautiful interface\n- **Powerful Editor**: Monaco Editor (VS Code's editor) with syntax highlighting and IntelliSense\n- **Native Performance**: CEF (Chromium Embedded Framework) provides native app performance\n- **Customizable**: Xcode-inspired dark theme with customizable fonts and layout\n- **Real-time Stats**: Live word count, character count, and cursor position tracking\n- **Resizable Panels**: Flexible sidebar and workspace layout\n- **Code Capture**: Screenshot functionality with gradient borders and animations\n- **Task Manager**: Built-in system process monitoring and management\n- **Toolchain Management**: Integrated development toolchain management\n- **V8 Integration**: JavaScript-C++ bindings for native functionality\n- **Shell Applications**: Modular shell utilities and floating windows\n\n## 🛠️ Technology Stack\n\n### Frontend\n- **SolidJS** - Reactive UI framework\n- **TypeScript** - Type-safe JavaScript\n- **Monaco Editor** - Advanced code editor\n- **TailwindCSS** - Utility-first CSS framework\n- **Vite** - Fast build tool and dev server\n- **Lucide Icons** - Beautiful icon library\n- **Motion One** - Smooth animations and transitions\n\n### Native Shell\n- **CEF (Chromium Embedded Framework)** - Native app wrapper\n- **C++** - Native application logic\n- **CMake** - Cross-platform build system\n\n### Build \u0026 Development\n- **TypeScript** - Modern build system with type safety (v5.9.2)\n- **Bun** - Fast JavaScript runtime and package manager\n- **Docker** - Containerized builds for Linux ARM/ARM64\n\n## 📋 Prerequisites\n\n- **Node.js** 18+ or **Bun** 1.2.19+ (recommended)\n- **CMake** 3.13+\n- **C++ Compiler** (MSVC on Windows, Clang on macOS, GCC on Linux)\n- **Git** (for version control and submodules)\n\n## 🚀 Quick Start\n\n### 1. Clone and Initialize\n\n```bash\n# Clone the repository\ngit clone https://github.com/mikofure/mikoide.git\ncd mikoide\n\n# Initialize submodules (required for crashpad and other components)\ngit submodule update --init --recursive\n```\n\n### 2. Environment Configuration\n\n```bash\n# Copy the environment template\ncp .env.example .env\n\n# The .env.example file includes default values for:\n# VITE_VSMKT_API=\n```\n\n**Environment Variables:**\n- `VITE_VSMKT_API`: Visual Studio Marketplace API endpoint (optional, for extension marketplace functionality)\n\n### 3. Install Dependencies\n\n```bash\nbun install\n```\n\n### 4. Development Mode\n\n```bash\n# Start the web development server\nbun run dev\n\n# Or build the web assets\nbun run build\n```\n\n### 5. Build Native Application\n\n```bash\n# Build with TypeScript (modern alternative)\nnode script/make.ts build\n\n# For debug builds\nnode script/make.ts build --debug\n```\n\n### 6. Available Build Tasks\n\n#### TypeScript Build System (Modern)\n```bash\n# Web application tasks\nnode script/make.ts webapp-build     # Build web assets\nnode script/make.ts webapp-serve     # Serve web app\nnode script/make.ts webapp-install   # Install web dependencies\n\n# Native application tasks\nnode script/make.ts build           # Build native app\nnode script/make.ts build-ninja     # Build with Ninja\nnode script/make.ts build-xcode     # Build Xcode project (macOS)\nnode script/make.ts build-linux-arm # Build for Linux ARM\nnode script/make.ts build-linux-arm64 # Build for Linux ARM64\nnode script/make.ts run            # Run the application\n\n# Utility tasks\nnode script/make.ts format         # Format code\nnode script/make.ts clean          # Clean build artifacts\nnode script/make.ts dmg            # Create macOS DMG (macOS only)\n\n# Code signing and notarization (TypeScript)\nnode script/codesign.ts \u003cpath\u003e     # Code sign files/bundles\nnode script/notarize.ts --dmg \u003cdmg\u003e --user \u003cuser\u003e --passwd \u003cpasswd\u003e\n```\n\n## 🏗️ Project Structure\n\n```\nmikoide/\n├── app/                    # Native CEF application (C++)\n│   ├── src/               # C++ source code\n│   │   ├── main/          # Main application logic\n│   │   │   ├── v8/        # V8 JavaScript engine integration\n│   │   │   ├── binding/   # Native-JS bindings\n│   │   │   └── net/       # Network utilities\n│   │   └── shared/        # Shared utilities across platforms\n│   ├── include/           # Header files\n│   ├── cmake/             # CMake configuration\n│   └── resources/         # Platform-specific resources\n├── mikoide/               # Frontend SolidJS application\n│   ├── components/        # UI components\n│   ├── styles/           # CSS and styling\n│   ├── assets/           # Static assets (fonts, images)\n│   ├── core/             # Core application logic\n│   ├── data/             # Application data and configuration\n│   └── root/             # Root application component\n├── mikoshell/             # Shell applications and utilities\n│   ├── taskmgr/          # Task Manager application\n│   ├── toolchainmgr/     # Toolchain Manager\n│   └── floating/         # Floating window utilities\n├── script/                # Build and automation scripts\n│   ├── modules/          # TypeScript build modules\n│   │   ├── tasks/        # Build task implementations\n│   │   ├── config.ts     # Configuration management\n│   │   ├── file.ts       # File system utilities\n│   │   ├── log.ts        # Logging utilities\n│   │   └── index.ts      # Module exports\n│   ├── postprocessing/   # Post-build processing\n│   ├── make.ts           # Main TypeScript build script\n│   ├── codesign.ts       # Code signing utilities\n│   └── notarize.ts       # macOS notarization\n├── crashpad/              # Crash reporting system\n├── cli/                   # Command-line interface\n├── docker/                # Docker configurations\n├── installer/             # Installation packages\n└── shared/                # Shared build utilities\n```\n\n## 🎨 Features in Detail\n\n### Code Editor\n- **Monaco Editor Integration**: Full VS Code editor experience\n- **Syntax Highlighting**: Support for TypeScript, JavaScript, and more\n- **Font Support**: JetBrains Mono and custom font loading\n- **Real-time Statistics**: Word count, character count, line/column tracking\n\n### User Interface\n- **Responsive Design**: Adapts to different screen sizes\n- **Resizable Sidebar**: Drag to resize the file explorer\n- **Custom Title Bar**: Native-looking title bar across platforms\n- **Status Bar**: Shows editor statistics and status information\n- **Animated Capture**: Screenshot functionality with gradient borders and smooth animations\n\n### Cross-Platform Support\n- **Windows**: Native Windows application with installer\n- **macOS**: Native macOS app with DMG distribution\n- **Linux**: Native Linux application with ARM/ARM64 support\n\n## 🔧 Development\n\n### Hot Reload Development\n\n```bash\n# Start Vite dev server with hot reload\nbun run dev\n```\n\n### Building for Production\n\n```bash\n# Build web assets\nbun run build\n\n# Build native application (TypeScript)\nnode script/make.ts build\n```\n\n### Code Formatting\n\n```bash\n# Format C++ code (TypeScript)\nnode script/make.ts format\n```\n\n## 📦 Distribution\n\n### Windows\n- Installer created with NSIS\n- Located in `shared/windows/`\n\n### macOS\n- DMG package with code signing and notarization\n- Build with: `node script/make.ts dmg`\n- Code signing: `node script/codesign.ts \u003cpath\u003e`\n- Notarization: `node script/notarize.ts --dmg \u003cdmg\u003e --user \u003cuser\u003e --passwd \u003cpasswd\u003e`\n\n### Linux\n- AppImage or package distribution\n- ARM and ARM64 support via Docker\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](Contributing.md) for detailed information on:\n\n- Development setup and prerequisites\n- Project architecture and code organization\n- Development workflow and build system\n- Code style guidelines and best practices\n- Testing procedures\n- Pull request process\n\nQuick start for contributors:\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\n3. Follow the setup instructions in [CONTRIBUTING.md](Contributing.md)\n4. Make your changes and test thoroughly\n5. Submit a pull request\n\nFor detailed instructions, please read the [Contributing Guide](CONTRIBUTING.md).\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- **CEF** - For the ultimate performance Chromium Embedded Framework\n- **CEF Template** - CEF with VueJS Template by [paulocoutinhox]([https://github.com/paulocoutinhox/cef-sample])\n- **Monaco Editor** - For the powerful code editor\n- **SolidJS** - For the reactive UI framework\n- **Vite** - For the fast build tool\n- **Motion One** - For smooth animations and transitions\n\n---\n\n**MikoIDE** - Building the future of code editing, one commit at a time. 🚀\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikofure%2Fmikoide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikofure%2Fmikoide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikofure%2Fmikoide/lists"}