Skip to content

Repository files navigation

⚑ WebDio

License: MIT GitHub LinkedIn Instagram

WebDio is a high-performance, AI-driven IDE designed for rapid web development and real-time P2P collaboration. Go from idea to minimum viable product by leveraging AI models and a secure, decentralized sharing protocol.

πŸš€ Key Features

πŸ“‘ P2P Project Sharing

  • Decentralized Collaboration: Share your entire workspace with peers on the local network without any central server
  • Granular Permissions: Toggle between Read Only and Read & Write modes for secure collaboration
  • Robust Protocol: Uses a network discovery protocol for instant peer detection
  • One-Click Revocation: Instantly revoke project access with automatic network cleanup

🎨 Intelligent Workspace

  • Color-Coded Projects: Unique visual identities for every shared project, reflected in the sidebar and editor tabs
  • Professional File Explorer: Recursive tree view with context menu support and hidden file toggling
  • Tabbed Interface: Distinguish between local and shared files with color indicators and project tags

πŸ€– AI-Powered Productivity

  • Google Gemini: Full integration with Gemini for code generation and assistance
  • Walkthroughs: Built-in system for generating development plans and executing builds from requirements
  • Context-Aware Chat: AI chat panel for debugging and feature implementation assistance

πŸ’» Cross-Platform Support

  • Windows, macOS, Linux: Desktop application built with Electron

πŸ› οΈ Technology Stack

Frontend

Desktop

AI Integration

  • Providers: Google Generative AI (Gemini)
  • HTTP Client: Axios

πŸ“¦ Installation

Prerequisites

  • Node.js 18+
  • npm or yarn

Setup

  1. Clone the repository
git clone https://github.com/ajeyverma/WebDio.git
cd WebDio
  1. Install dependencies
npm install
  1. Development mode
npm run dev

The Electron app will launch with hot module reloading.

  1. Build for production
npm run build
  1. Build Windows installer
npm run build:win

🎯 Usage

Running the Desktop App

Development:

npm run dev

Production:

npm run build
npm run preview

πŸ“ Project Structure (public-facing)

WebDio/                          # Project root
β”œβ”€β”€ README.md                    # Project overview, install, usage
β”œβ”€β”€ LICENSE                      # License (MIT)
β”œβ”€β”€ CONTRIBUTING.md              # Contribution guidelines
β”œβ”€β”€ package.json                 # Scripts & dependencies
β”œβ”€β”€ tsconfig.json                # TypeScript config
β”œβ”€β”€ electron.vite.config.ts      # Electron + Vite build config
β”œβ”€β”€ src/                         # Source code
β”‚   β”œβ”€β”€ main/                    # Electron main process
β”‚   β”‚   β”œβ”€β”€ index.ts             # Electron main entry
β”‚   β”‚   └── services/            # IPC services
β”‚   β”œβ”€β”€ preload/                 # Preload scripts
β”‚   β”‚   └── index.ts             # Preload entry
β”‚   └── renderer/                # Renderer (UI)
β”‚       β”œβ”€β”€ index.html           # Renderer HTML entry
β”‚       └── src/
β”‚           β”œβ”€β”€ main.tsx         # Renderer entry
β”‚           β”œβ”€β”€ App.tsx          # Root React component
β”‚           β”œβ”€β”€ components/      # UI components
β”‚           β”œβ”€β”€ features/        # Feature modules
β”‚           β”‚   └── Community/    # Community feature
β”‚           β”œβ”€β”€ stores/          # Zustand stores
β”‚           └── utils/           # Utility helpers
└── .gitignore                    # Recommended (keep sensitive files out)

πŸ”Œ Key Components

AI Services

  • src/main/services/aiService.ts - Main AI integration service
  • Supports multiple AI providers with unified interface

Community Features

  • src/renderer/src/features/Community/ - Community chat and collaboration
  • P2P messaging and project sharing protocols

Editor

  • src/renderer/src/components/ - Monaco Editor integration
  • File syntax highlighting and IntelliSense support

State Management

  • src/renderer/src/stores/useAppStore.ts - Global application state with Zustand
  • Project state, UI state, and user preferences

πŸš€ Development

Available Scripts

Command Purpose
npm run dev Start development server with hot reload
npm run build Build for production
npm run preview Preview production build
npm run build:win Build Windows installer

Debugging

The app supports TypeScript with full source maps for debugging. Use DevTools:

  • Press Ctrl+Shift+I (or Cmd+Option+I on macOS) in the development build to open DevTools

πŸ” Security

  • Decentralized: No central server or data collection
  • Granular Permissions: Control read/write access on a per-project basis
  • AI Provider Keys: AI provider API keys are not included in the repository; configure them locally per provider's documentation (for example via app settings). Do NOT commit secrets to the repo.

βš™οΈ AI Provider Setup

The application requires an AI provider API key to enable code generation features. WebDio currently supports Google Gemini via the Gemini API. You can provide credentials in app.

When using the app, open Settings and paste your provider key. The app stores settings in your OS user data directory.

πŸ“ License

Distributed under the MIT License. See the LICENSE file for more information.

πŸ‘₯ Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines on contributing and opening a Pull Request.

Please feel free to submit a Pull Request.

πŸ“§ Contact

Ajay Chaudhary (Ajay Verma)

Project Link: https://github.com/ajeyverma/WebDio

About

An AI-powered desktop IDE with real-time P2P collaboration, Monaco editor, multi-provider AI (Gemini), and decentralized workspace sharing. Built with Electron + React + Vite.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages