Skip to content

gen_improvements branch: docs, contributor/AI style guide, and refactor #48

@trailcode

Description

@trailcode

Branch Trailcode/gen_improvements vs main — summary for GitHub issue

Branch: Trailcode/gen_improvements
Compare: main..Trailcode/gen_improvements

Summary

This branch contains documentation updates, build/IDE improvements, style-guide alignment, and a large code refactor/simplification across the EzyCad codebase. Net result: fewer lines with clearer structure and better contributor guidance.

Changes by category

Documentation

  • README.md
    • Added “We need development help”: asks for more contributors (features, bugs, docs, testing).
    • Code style: contributors and AI coding agents (Cursor, Copilot, ChatGPT, etc.) are asked to follow ezycad-style.md so patches stay consistent.
  • usage.md — reworked and trimmed (large reduction in size).
  • usage-sketch.md — new file (sketch-focused usage guide).
  • ezycad-style.md — updates for consistency and AI/contributor use.

Build and IDE

  • CMakeLists.txt
    • .clang-format is added to both EzyCad and EzyCad_lib so it appears in Visual Studio (and other IDEs) at the project root (no filter).
    • File is included as non-build (HEADER_FILE_ONLY); only for visibility and editing.
  • .gitignore — small update.

Code style and formatting

  • .clang-format — minor tweaks.
  • ezycad-style.md — referenced in README as the single source of style for humans and AI.

Code refactors and simplifications

Wide-ranging refactor/simplification across src/ and examples:

  • Core / app: main.cpp, gui.cpp / gui.h, occt_view.cpp / occt_view.h, occt_glfw_win.cpp / occt_glfw_win.h, geom.cpp / geom.h, modes.cpp / modes.h, settings.cpp / settings.h, log.cpp / log.h, dbg.h, types.h, utl*.cpp / utl*.h, utl_result.h.
  • Shapes / operations: shp.cpp / shp.h, shp_chamfer, shp_common, shp_create, shp_cut, shp_extrude, shp_fillet, shp_fuse, shp_move, shp_operation, shp_polar_dup, shp_rotate, shp_scale.
  • Sketch: sketch.cpp / sketch.h, sketch_json, sketch_nodes.
  • Other: lua_console, example files under res/examples/ (e.g. revolve.ezy, slot_1.ezy).

Overall: fewer lines, clearer organization, and alignment with project style.

Stats (branch vs main)

Metric Value
Files changed 64
Insertions 2,160
Deletions 3,174
Net lines −1,014

How to review

  • Check out Trailcode/gen_improvements and diff against main:
    • git diff main --stat
    • git log main..HEAD --oneline
  • Rebuild (native and/or Emscripten) and run tests.
  • Skim README and ezycad-style.md for tone and clarity; confirm README asks humans and AI to follow ezycad-style.md.
  • Confirm in your IDE that .clang-format appears at the root of both EzyCad and EzyCad_lib projects.

Suggested issue title (for GitHub)

Branch Trailcode/gen_improvements: docs, IDE (.clang-format in projects), style guide, and code refactor

(Or shorten to: gen_improvements branch: docs, contributor/AI style guide, and refactor.)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions