Q-Ace Tutor | AI Python Learning Environment
Q-Ace Tutor is an advanced educational platform designed to make the world of Python programming accessible to students and learners. The system combines visual tools, a powerful code editor, and AI-driven support to make the learning process experiential, interactive, and personalized.
✨ Key Features
1. AlgoDesigner - Visual Algorithm Planner
A "Drag & Drop" interface that allows planning the program's logic using flowcharts.
- Smart Nodes: Input/Output, Processes, Decisions (if/else), and Loops.
- Code Skeleton Generation: The system automatically converts the visual flowchart into standard Python code.
- Logic Check: AI analyzes the flowchart and suggests improvements or warns about logical issues.
2. Smart IDE (Code Editor)
Development environment based on Monaco Editor (the engine behind VS Code) optimized for the browser.
- Local Code Execution: Using Pyodide to run Python directly in the browser without the need for a server installation.
- Interactive Terminal: Full terminal interface (Xterm.js) supporting input and output.
- Automatic Save: Project and file management with cloud/database saving.
3. AI Assistance - Your Private Tutor
Integration with advanced language models (Gemini / Ollama):
- Error Explanation: At the click of a button, AI analyzes runtime errors and explains how to fix them.
- Hints: Focused help without solving the exercise entirely, to encourage independent learning.
- Automatic Documentation: AI can add comments and explanations to existing code.
- Guided Chat (Ask Me): Conversational interface for questions and answers about the project.
🛠 ️ Technologies Used
Frontend
- Vue.js 3: Core framework for application state management.
- Tailwind CSS: Modern, dark (Dark Mode), and responsive design.
- Vue Flow: Library for managing flowcharts and diagrams.
- Monaco Editor: Professional code editor by Microsoft.
- Xterm.js: Professional terminal simulation.
- Pyodide: WebAssembly engine running Python 3.11+ in the browser.
Backend
- PHP: Managed API and data services.
- SQLite: Lightweight and fast database for storing projects, code, and user settings.
AI Engines
- Google Gemini API: For logical analysis and real-time support.
- Ollama: Support for local models (such as Gemma/Llama) for maximum privacy.
🚀 Installation and Execution
-
Prerequisites:
- Web server (Apache / Nginx) with PHP 7.4+ support.
- Write access to the project folder (for database file creation).
-
Installation Steps:
- Copy all project files to the server's root directory.
- Ensure the database file
qace.dbis created and writable. - Configure your Gemini API key in the
api/config.phpfile (optional but recommended).
-
AI Settings:
- AI provider (Gemini or Ollama) can be controlled via the settings screen within the application.
📁 Project Structure
index.html- Main entry page./js- Client-side logic (Vue components, API services)./api- PHP endpoints and database management./css- Custom styles./assets- Templates and supplemental data.
Built with ❤️ by ATID College