eric — это полнофункциональная интегрированная среда разработки (IDE) для языка Python, реализованная на Python с использованием фреймворка PyQt и компонента QScintilla для редактирования исходного кода. Среда разрабатывается как настольное приложение и сочетает в себе редактор с подсветкой синтаксиса, средства навигации по проекту, встроенный отладчик и инструменты для управления версиями. Интерфейс ориентирован на разработчиков, предпочитающих гибкую конфигурацию и расширение функциональности с помощью плагинов.
Проект включает в себя модульную архитектуру, позволяющую добавлять или отключать отдельные компоненты, а также создавать собственные расширения. eric поддерживает создание и управление проектами различной структуры, интеграцию с системами контроля версий и выполнение тестов. В среде реализованы средства для работы с виртуальными окружениями, выполнение скриптов и профилирование кода. При отсутствии достоверной или полной информации о некоторых исторических деталях проекта в тексте кратко указывается только проверяемая функциональность и типичное назначение среды.
- Редактор кода: многострочный редактор с подсветкой синтаксиса, автоотступами и поддержкой QScintilla.
 - Отладка: встроенный пошаговый отладчик с точками останова, просмотром стека вызовов и переменных.
 - Управление проектами: управление файлами и ресурсами проекта, шаблоны проектов и структурирование исходников.
 - Плагины: поддержка расширений и модульной настройки функциональности через систему плагинов.
 - Интеграция VCS: поддержка работы с системами контроля версий для выполнения коммитов, просмотра истории и разрешения конфликтов.
 - Инструменты разработки: запуск скриптов, конфигурации выполнения, интеграция с тестовыми фреймворками и профилирование.
 - Поддержка окружений: работа с виртуальными окружениями Python и настройка интерпретаторов для проектов.
 - Навигация по коду: переход к определениям, структура классов и функций, поиск по проекту.
 - Настраиваемый интерфейс: панели, окна и горячие клавиши, позволяющие адаптировать рабочее пространство под задачи разработчика.
 - Кроссплатформенность: запуск на различных настольных платформах при наличии соответствующих зависимостей PyQt и QScintilla.