repowiserepowise
Sign in
thecherno/hazel
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisethecherno/hazel
HA
HA

thecherno / hazel

Hazel Engine

C++★ 13,117
Use in your agentAsk this codebase

github.com/thecherno/hazel·Indexed at 1feb705·1mo ago·Up to date with upstream

About this codebase

Hazel is primarily an early-stage interactive application and rendering engine for Windows: it takes engine source (core platform, logging/assertions, renderer, events, scenes, and tooling layers), wires those systems into runtime update/render execution flows, and produces a working editor/viewer experience (and the educational material that grows it) as the current direction of development. It exists so that new engine capabilities—starting with fast 2D rendering and progressing toward high-fidelity 3D physically-based rendering—can be built and taught step-by-step in public while the more advanced Hazel-dev implementation is selectively integrated back into this repository for supporters.

Written by gpt-5.4-nano from the index

151 files and 1,544 symbols in 6 modules, led by C++ (122 files) and C# (10).

Start reading

  • Knowledge graph151 files and how they depend on each other.→
  • Debugging and InstrumentationDocumentationDocumentation for Hazel/src/Hazel/Debug, written by gpt-5.4-nano.→
  • Contributors8 people: who owns what, and where one person holds most of the knowledge.→

Code health

7.3out of 10Good

This codebase scores 7.3 out of 10 for code health, which we rate good. It also scores maintainability 8.9 and static performance 9.9 out of 10. The three are scored separately and never blended into one number.

Full health report →

On the leaderboards:#3 of 6 C++ repos

Do next

Nothing stands out in the week to Oct 27, the last indexed commit.

Improve what Repowise can see

  • Add a test coverage report

    Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.

    line coverage
    Unknown, no report
    Small effort
All actions in the Overview →

Use thecherno/hazel in your agent

Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.

https://api.repowise.dev/mcp/thecherno/hazel

One command, run anywhere. Adds the server to your local Claude Code config.

Docs
bash
claude mcp add --transport http repowise https://api.repowise.dev/mcp/thecherno/hazel \
  --header "Authorization: Bearer rw_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
The snippet shows a placeholder key. Generate one to get a copyable secret.
Sign in and create an API key to connect.Sign in

This repo is public, so anyone with a Repowise account and an API key can connect.

Try asking

  • get_overview()
  • get_answer("how is hazel put together?")
  • get_why("why is hazel structured this way?")

Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.

Go deeper

  • OverviewEverything the index found, what changed this week, commits and decisions.→
  • DocumentationModule-by-module documentation, 273 pages, 16 written by a model.→
  • ArchitectureDependency graph, layers and third-party dependencies.→
  • Code healthEvery file's score, the findings behind it, tests and refactoring plans.→
  • CommitsEach commit's effect on code health, with agent provenance.→
  • ContributorsWho owns what, and where one person holds most of the knowledge.→
  • DecisionsArchitectural decisions mined from commits and pull requests.→
  • Ask this codebaseSign inGrounded answers over the indexed code.→

Maintain this repo? Claim the page

Sign in with GitHub and we check that you are an admin or maintainer of thecherno/hazel. Then add a badge to the README that links readers here.

Use this repo from Claude or ChatGPT

Add this URL as a custom connector and sign in with repowise when asked. No API key to copy.

https://api.repowise.dev/mcp/thecherno/hazel
Sign up to connect

For maintainers

Add a badge to your README

Every badge is public, cached, and updates on its own after every index. Nothing to install.

Repowise badge

Links to this page, with no score on it. Adding it also re-indexes the repo every week.

Repowise badge preview
[![repowise.dev](https://api.repowise.dev/badge/wiki/thecherno/hazel.svg)](https://repowise.dev/repo/thecherno/hazel?src=badge_wiki)

Code health badge

The repo's health score out of 10, from the latest index.

Code health badge preview
[![repowise.dev code health](https://api.repowise.dev/badge/health/thecherno/hazel.svg)](https://repowise.dev/repo/thecherno/hazel?src=badge_health)

Code health card

A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.

Code health card preview
[![repowise.dev code health](https://api.repowise.dev/badge/health/thecherno/hazel.svg?style=card)](https://repowise.dev/repo/thecherno/hazel?src=badge_card)

What is hazel?

hazel is a C++ interactive application and rendering engine for Windows. It is intended for building engine capabilities and teaching game engine design and architecture through an editor and example applications. The repository also includes C#, Luau, and Python code.

Written by a model from the README and the index

Key features of hazel

  • Hazel is intended to provide fast 2D rendering for interfaces, particles, and sprites.
  • Hazel is intended to provide high-fidelity physically based 3D rendering.
  • Hazel includes a viewer and editor direction through Hazelnut.
  • Hazel is intended to support scripted interaction and behavior.
  • Hazel is intended to include procedural terrain and world generation.
  • Hazel is intended to include an audio system.

How thecherno/hazel works

Hazel provides application entry points and Windows platform utilities under Hazel/Hazel and Hazel/src/Platform/Windows, which establish platform services for the engine. The Hazel module supplies core platform, logging, assertions, renderer, events, scenes, and tooling layers that feed runtime update and rendering flows. Hazelnut composes engine capabilities into an editor experience. Sandbox presents example application behavior through Hazel extension points. Hazel-ScriptCore provides C# vector types such as Vector2.cs, Vector3.cs, and Vector4.cs for scripted interaction. Dependencies.lua declares dependency expectations used by build scripts, while scripts supports setup and project-generation workflows.

Hazel Engine This page is a map of the thecherno/hazel repository, written primarily in C++, rebuilt from the source each time it is indexed. Repowise parses every symbol, computes a dependency graph, scores per-file code health from complexity, duplication, test coverage and churn, mines git history for hotspots and ownership, and lifts the architectural decisions into documentation you can read here or query through MCP.

The codebase has 151 files and 1,544 symbols in 6 modules, led by C++, C# and Luau. Code health is 7.3 out of 10, rated good.

Use the links above to open each view, or connect this repository to your agent for grounded answers inside Claude, Cursor, Codex or VS Code.

thecherno/hazel FAQ

What is hazel?

hazel is an early-stage interactive application and rendering engine for Windows. It also serves as an education tool for teaching game engine design and architecture.

How does hazel work?

hazel connects platform services, engine systems, an editor, and example applications into runtime update and rendering flows. Hazel-ScriptCore supplies C# vector types for scripted behavior.

What language is hazel written in?

hazel is primarily written in C++. The repository also includes C#, Luau, and Python code.

How is the hazel code organized?

hazel is organized into Hazel for engine and platform code, Hazelnut for the editor, Sandbox for example behavior, Hazel-ScriptCore for C# types, and scripts for setup workflows.

Who is hazel for?

hazel is for people building and learning game engine design and architecture. Its development is presented as educational material alongside the engine implementation.

What license does hazel use?

hazel uses the Apache-2.0 license.

Answers written by a model from the README and the index