Scythe
SCYTHE is a lightweight, C#-based game engine focused on modifiability and rapid iteration using Raylib.
ImGui Text Editor with Retro Style Shaders
git clone https://github.com/nealmick/ned.gitnealmick/ned
A retro-style text editor with GL shader effects. NED includes Tree-sitter syntax highlighting, multi-cursor editing, LSP integration, git line markers, and a built-in terminal.
| Amber | Solarized |
|---|---|
amber.github.mp4 |
solarized.github.mp4 |
| Ned | Custom |
|---|---|
ned.github.mp4 |
custom.github.mp4 |
ned_embed library for Dear ImGui hosts (multi-tab docking)Clone the repository with its submodules:
# Make sure you clone with the recursive flag git clone --recursive https://github.com/nealmick/ned cd ned git submodule init git submodule update # macOS (Apple Silicon / ARM64) brew install clang-format cmake llvm glfw glew pkg-config curl freetype fontconfig # Ubuntu/Debian sudo apt install cmake libglfw3-dev libglew-dev libgtk-3-dev pkg-config clang \ libcurl4-openssl-dev libfreetype6-dev libfontconfig1-dev libssl-dev zlib1g-dev \ clang-format mesa-utils dpkg-dev # For Windows, the dependencies are installed using the build script (vcpkg)
./scripts/build.sh # Build only (no launch): ./scripts/build.sh --no-run # Clean rebuild: ./scripts/build.sh --clean
./scripts/build-win.bat # On Windows, the build script will attempt to install Visual Studio with Build Tools. 10–20 minutes. # After VS has been installed, you must close and re-open PowerShell and run ./scripts/build-win.bat again. # Subsequent rebuilds are much faster after the initial dependencies have been installed.
./scripts/test.sh # Catch2 suites cover the document model, commands, multi-cursor, undo, save, git, and UTF-8 helpers.
Create app package
./scripts/pack-mac.sh ./scripts/pack-deb.sh # Bypass quarantine/translocation, or sign with your own Apple developer account xattr -dr com.apple.quarantine Ned.app
Ned can be embedded in other ImGui applications through the ned_embed library. The embed host adds multi-tab docking on top of the same editor core used by the standalone app — file explorer, terminal, themes, emoji fonts, and LSP are available to the host. The demo repository shows how to wire it into a project.
Ned is a Dear ImGui text editor aimed at a lightweight, embeddable core with a strong retro aesthetic.
Editor core is layered as Commands → Operations → document state (copy-on-write rope buffer). Outside code talks to the editor through EditorApi. Highlighting, save, undo, and git are focused services behind events rather than a monolithic editor class.
Syntax highlighting uses Tree-sitter with query files for the languages above. Multi-cursor and selection live in view state; document mutation stays a stream of single text ops. LSP is driven by a configurable lsp.json (clangd, gopls, pyright/typescript-language-server, rust-analyzer, and others). The terminal is a fullscreen overlay powered by ImGui-Terminal. Shader effects, theme profiles, and keybinds live under user config (~/ned/config) seeded from bundled resources.
Standalone Ned is single-buffer; multi-tab editing is provided by NedEmbed for host applications. Platforms tested: macOS ARM64, Windows x64, and Debian. Windows builds use vcpkg via the build script.
If you have questions or issues, feel free to reach out.
more like this
SCYTHE is a lightweight, C#-based game engine focused on modifiability and rapid iteration using Raylib.
search projects, people, and tags