Skip to main content

CodeHS Editor Engines

Compare Ace and Monaco code editors in CodeHS: Learn their differences, how to change editors, and choose the best fit for your class and coding needs.

Eli Hernandez avatar
Written by Eli Hernandez
Updated this week

Overview

CodeHS offers users access to the Ace and Monaco code editors, giving them the option to choose the tool that best fits their learning style and experience. Ace is simple and great for beginners, while Monaco has advanced features for experienced coders. This article highlights their differences and features, so that students and teachers can choose the editor that fits their coding needs.

Changing Your Editor Engine

Users can change which engine the IDE runs in the editor settings. To access these settings, click the gear icon in the upper left corner of any editor.

gif demonstrating changing your editor engine

Selecting an Editor Engine for your Class

Teachers have the ability to set the default editor engine for a class and prevent students from switching their Editor Engine. These options can be found within the
Section Settings.

image showing how to set a default editor engine for your class

Ace Editor

Ace is a lightweight, user-friendly code editor designed for accessibility and ease of use. Its intuitive interface makes it ideal for beginners and younger students, offering the essential tools needed to write and run code without overwhelming complexity.

Features

Auto Formatting

The Ace Editor will automatically format the code each time students save the program. To enable Auto-Format, click the gear icon in the upper left corner to access the Editor Settings and toggle the Auto-Format control under Editor.

gif demonstraing ace autoformatting

Syntax highlighting

The Ace editor has accurate, language‑specific coloring that enhances readability and helps distinguish code structures quickly.

gif demonstrating ace syntax highlighting

Theme customization

The Ace editor allows the user to switch between multiple light and dark themes (such as Monokai, Twilight, or Chrome) for personal preference.

gif demonstrating ace theme customization

Multiple cursors and selections

The Ace Editor allows users to perform edits across several lines at once. This is useful for batch renaming or refactoring.

gif demonstrating ace multiple cursors and selections

Wrap Lines

The Ace Editor allows users to enable a choice between horizontal scrolling or wrapped lines for long text via the “Wrap Lines” toggle.

gif demonstrating ace wrapping lines

For more information on the Ace Editor, please visit: https://ace.c9.io/

Monaco Editor

Monaco is a powerful code editor built for users who want more advanced features and flexibility in their coding environment. With tools like syntax highlighting, intelligent code completion, and support for many programming languages, Monaco helps experienced students write, organize, and debug code efficiently.

Features

Auto Formatting

The Monaco editor allows users to automatically format their code via the Format Options in the context menu.

Auto formatting in the Monaco Editor is only available for the following program types:

  • JavaScript

  • HTML

gif demonstrating monaco auto formatting

Syntax highlighting

The Monaco editor has accurate, language‑specific coloring that enhances readability and helps distinguish code structures quickly.

image demonstrating monaco syntax highlighting

Theme Customization

The Monaco editor allows the user to switch between light and dark themes for easier readability.

gif demonstrating monaco theme customization

Multiple cursors and selections

The Monaco Editor allows users to perform edits across several lines at once. This is useful for batch renaming or refactoring.

gif demonstrating monaco multiple cursors and selections

Autocomplete

The Monaco editor supports autocomplete and IntelliSense, offering intelligent suggestions powered by the same engine used in Visual Studio Code.​​

gif demonstrating monaco autocomplete

Command Palette

The Monaco editor includes a Command palette exposing every command through keyboard access, allowing full control without a mouse.​ To access the Command Pallet, press Command+Shift+P on Mac and press Control+Shift+P on a PC.

gif demonstrating monaco command palette

High Contrast Mode

The Monaco editor includes a High Contrast Mode that can be accessed from the Command Palette that ensures readability for users with visual impairments.​

gif demonstrating monaco high contrast mode

For more information on the Monaco Editor, please visit: https://microsoft.github.io/monaco-editor/


Still have questions? Contact our team at support@codehs.com to learn more!

Did this answer your question?