2026-03-26 14:28:52 +01:00

109 lines
2.7 KiB
Markdown

# AISE AI Code Editor
AI-Supported Lightweight Code Editor built with Streamlit (AISE501 Spring 2026)
## Project Structure
```
AISE_AIAgent/
├── frontend/ # Streamlit UI Components
│ ├── __init__.py
│ ├── app.py # Main Streamlit application
│ ├── sidebar.py # File navigation sidebar
│ ├── editor.py # Code editor pane
│ └── chat.py # Chat interface
├── backend/ # Backend Logic Modules
│ ├── __init__.py
│ └── managers/ # Business logic managers
│ ├── __init__.py
│ ├── file_manager.py # File I/O operations
│ ├── chat_manager.py # AI chat management
│ ├── system_prompter.py # System prompts & context
│ ├── search_manager.py # Internet search
│ ├── execution_engine.py # Code execution
│ └── debug_logger.py # Logging & debugging
├── tests/ # Unit tests
│ ├── __init__.py
│ ├── test_file_manager.py
│ ├── test_chat_manager.py
│ └── test_execution_engine.py
├── .gitignore # Git exclusions
├── requirements.txt # Python dependencies
└── README.md # This file
```
## Features
- **File Display & Management**: Browse and edit code files
- **Chat Interface**: AI-powered code assistant
- **Code Execution**: Run Python code with debugging
- **Internet Search**: Fetch documentation and examples
- **System Prompts**: Context-aware AI interactions
## Setup
### 1. Project Clonen
1. In den Zielordner wechseln
cd /pfad/zum/zielordner
2. Repository klonen
git clone https://gitea.fhgr.ch/meulilivio/AISE1_Project.git
3. In das Projekt wechseln
cd AISE1_Project
### 2. Activate Virtual Environment
```bash
# Windows
.\.venv\Scripts\Activate.ps1
# macOS/Linux
source .venv/bin/activate
```
### 3. Install Dependencies
```bash
pip install -r requirements.txt
```
### 4. Run Application
```bash
streamlit run frontend/app.py
```
### 5. Run Tests
```bash
pytest tests/
```
## Architecture
The application follows a frontend-backend split:
- **Frontend**: Streamlit UI components (sidebar, editor, chat)
- **Backend**: Specialized manager modules
- FileManager: File operations
- ChatManager: AI interaction
- SystemPrompter: Prompt management
- SearchManager: Internet search
- ExecutionEngine: Code execution
- DebugLogger: Error handling & logging
## Development
Use Git to track changes:
```bash
git add .
git commit -m "Your message"
git push origin sturcture
```