tareqimbasher / NetPad

A cross-platform C# editor and playground.
MIT License
1.09k stars 56 forks source link

Solution refactor #211

Closed tareqimbasher closed 1 week ago

tareqimbasher commented 1 month ago

Solution restructure

When I started this project I knew I wanted to work towards these high-level minimum requirements:

  1. Must support Windows, macOS and Linux
  2. Must support at least .NET 6 or higher
  3. Must run with as little hassle as possible for end users.

However I had yet to figure out how the pieces will fall on the board. I initially took a layered approach to structuring the solution, this helped me clearly understand the different components, abstractions and dependencies that will make up the app during development. That has now served its purpose, and its time for a simpler structure that's easier to understand and maintain. This restructure aims to:

  1. Make the solution easier to maintain by reducing separation between components and bringing more related functionality together.
  2. Make the solution easier to review by the community and easier to understand and contribute to.

I plan to add documentation explaining the high level concepts and structure of the solution to help facilitate review and contribution.

Some notable technical changes:

Refactoring that is also planned soon: