Skip to content

AI Powered Code Editor built for Desktop with Electron.js

Notifications You must be signed in to change notification settings

heyits-manan/CodeFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeFlow

AI-powered code editor built with Electron, React, and Gemini AI.

Project Structure

codeflow/
├── frontend/           # Electron app + React renderer
│   ├── electron/       # Main process (TypeScript)
│   │   ├── main.ts     # Entry point
│   │   ├── preload.ts  # Context bridge
│   │   ├── ipc.ts      # IPC handlers
│   │   └── menu.ts     # Application menu
│   ├── renderer/       # React frontend
│   └── package.json
│
├── backend/            # Express API server
│   ├── src/
│   │   ├── server.ts   # Entry point
│   │   ├── routes/     # API routes
│   │   ├── services/   # Business logic
│   │   └── prompts/    # AI prompt templates
│   └── package.json
│
├── shared/             # Shared types & constants
│   ├── types/
│   └── constants/
│
└── package.json        # Workspaces root

Getting Started

Prerequisites

  • Node.js 18+
  • npm 9+

Installation

# Install all dependencies
npm run install:all

Development

# Run both backend and frontend
npm run dev

# Or run separately:
npm run dev:backend   # Start backend server on :3001
npm run dev:frontend  # Start Electron + Vite

Environment Variables

Create a .env file in the root:

GEMINI_API_KEY=your_api_key_here
BACKEND_PORT=3001
BACKEND_URL=http://localhost:3001

Building

# Build all packages
npm run build

# Build frontend for distribution
cd frontend && npm run dist

Architecture

  • Frontend (Electron): Desktop app with file system access, forwarding AI requests to backend
  • Backend (Express): Handles AI requests using Gemini API
  • Shared: Common types and constants used by both packages

License

MIT

About

AI Powered Code Editor built for Desktop with Electron.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors