Hello there everyone, how is everyone doing?
One of my missions is to save as many lost souls from Microsoft Windows as I can. I want to increase our overal Linux user base, because that will always bring greatness and appeal to software developers so we can have more robust available software in the future.
Coding in C and C++ on Linux has always felt a bit more complicated than it needs to be, at least for me.
After spending years developing applications with Visual Studio 2005 IDE + etc on Windows, moving to Linux can be a frustrating experience. Instead of focusing on writing code, you often end up dealing with build systems, Makefiles, IDE plugins, JSON configuration files, compiler flags, and debugger setup.
I understand why these tools exist, and I know many developers enjoy having complete control over every part of the process. There is a lot of value in understanding how everything works under the hood.
But sometimes, you just want to create a project, press F5, and start debugging / building, specially when you will have a large 100 + cpp / header files. manualy handling the makelist, pathing, flags⦠OMG it is very very time consuming, and I personaly dont find that to be fun at all. I will have more fun if I can add a PATH with a click of a button to the desired include or lib dir, and suddently all of those files are automatically handled.
One of the things I appreciate most about the Windows workflow is how simple it is to share and manage a large amount of projects. You send someone the source code, they open the solution file, and theyāre ready to build. You never had to remember or keep track of that specific projectās build setup, the .sln file or the vcproj file did it all for you. You double clicked it, you pick the previously saved build config /debug/release, thats it ! You got yourself a 2 second .exe, .dll or .sys.
On Linux, itās common to spend time reading documentation just to figure out how a project is supposed to be built. That flexibility is powerful, but it can also slow things down.
Because of that, I decided to start building my own IDE for Linux, inspired by the workflow of Visual Studio IDE. It runs on IMGUI with Vulkan, because since I like the appeal of linuxās beautiful desktop, I wanted it to match that. But if you like it plain and simple you can disable all animations and visual transitions. I plan to add openGL support too in the future.
The goal isnāt to replace existing tools or tell people theyāre doing things wrong. I simply want an environment that works the way I like to work, and to make it easyer for people to grow big projects easier.
Pick a template, specific entrypoint ready, press F5, executable ready on disk!
Whether youāre creating an executable, a kernel module, or an injectable module, the setup should already be there. As build settings change (compiler / linker flags, binary / stack manupulation etc), the IDE should automatically generate the appropriate build commands behind the scenes.
I mainly care about C, C++, x64 inline assembly, and custom Clang toolchains, but the project will be open source so anyone can add support for other languages, templates, or workflows. I will add support for c# too with a form builder just like windows, because I know that .net framework now works on linux pretty easy, and I do like a little c# for a quick little app somethings.
I also plan to create a project converter, so that you can pick an existing cmake project, click on the convert button, and it will parse all relevant files, and generate a working .slx (thats the extention I am currently using for the project files).
Developers shouldnāt need to memorize compiler flags theyāve used for years unless the user chooses to. The tools should handle the repetitive parts so we can focus on writing software instead.
Anyways!
The current app state:
-templates
-open project .slx file
-.slx file assosiation button (so you can doubleclick them and open the project automatically)
-tool chain downloader page (kind of like vs2022 installer so you can download different versions of compilers, sdks, etc,etc)
-gitbub desktop clone built in
-debug and stepping over / through etc
-intellisence and auto complete
-code indexing for autocomplete etc
-modified clangd plugin (I need to give them credit, but I will get rid of it soon)
-optional visual themes, custom themes animations (can all be toggled)
I need to spend a bit more time so I can set the main project structure in stone.
I am corrently using AI to speed up the main bulk, but once I achieve the bulk, I need to re-write it most of it (except for the UI) because the cheap $20 composer AI code I am using is very very very bad. It will take me about a week ~ 2 weeks to transform the ai slop away, but at that point, this is going to go on github in case anyone else is interested.
But yeah, maybe you guys can give me some ideas, maybe we should have something like nuget (I hate nuget I dont use nuget) but I am affraid to have fully user maintained plugins because in this day and age there is a lot of people with bad intentions.
Anyways, here is a quick preview of the last 20 hours worth of work with massive ai use.
----Edit 06 23 26 - Deleted old videos and replaced with the current version

