Skip to content

Iteration 2: Getting all simple code listings working#898

Draft
Joshua-Lester3 wants to merge 21 commits intoIntelliTect:mainfrom
Joshua-Lester3:jlester/try-net-2
Draft

Iteration 2: Getting all simple code listings working#898
Joshua-Lester3 wants to merge 21 commits intoIntelliTect:mainfrom
Joshua-Lester3:jlester/try-net-2

Conversation

@Joshua-Lester3
Copy link
Collaborator

Description

Describe your changes here.

Fixes #Issue_Number (if available)

Ensure that your pull request has followed all the steps below:

  • Code compilation
  • Created tests which fail without the change (if possible)
  • All tests passing
  • Extended the README / documentation, if necessary

Joshua-Lester3 and others added 21 commits February 5, 2026 12:23
- Updated appsettings.json to include TryDotNet origin configuration.
- Introduced code-runner.css for styling the interactive code execution panel.
- Implemented trydotnet-module.js for managing TryDotNet functionality, including session management, code execution, and error handling.
- Enhanced site.js to initialize TryDotNet functionality alongside chat widget.
Co-authored-by: Kevin B <Keboo@users.noreply.github.com>
…ace TestWebHostEnvironment with Moq for IWebHostEnvironment in WebApplicationFactory
…ding improvements

- Load runnable listings from chapter-listings.json and build a Set of valid listings.
- Implement functions to check if a listing is runnable and to strip region directives from code.
- Update createScaffolding to prepend common using directives and handle user code more effectively.
- Modify isCompleteProgram to recognize any class with a static Main method as complete.
- Inject Run buttons only for listings present in the curated JSON, improving user experience.
@Joshua-Lester3 Joshua-Lester3 marked this pull request as draft March 5, 2026 19:23
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A potential concern about this approach right now (without seeing the py this is generated by so maybe I am just missing something) is that listing numbers are able to change if we insert/delete/move a listing - how will this be handled without having to manually review/adjust these?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yeah, definitely. I just did this draft to get it started, and have an easily ready diff.

As for that issue.. I'm not fully sure. First instinct is to generate the listing in the Tooling repo, though we will need to combine it with info about which one's are runnable. Any thoughts?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants