I was playing the demo for Pragma Twice when I realized that the in-game code editor was just not going to cut it for the level of overengineering that I like to do with my code
so I created a Node project and ported over all of my Bitburner config, and after around 2 hours of trial-and-error I managed to split my code into multiple files that can import each other, and now all I have to do is npm run make and it will automatically transpile into a single javascript file that is also automatically copied to my clipboard so I can paste it into the game
I’m pretty happy with that. my code went from being a mess of hacks to a well-organized codebase
@kasdeya reminds me of a game concept my roommate and I talked about once
@kasdeya I will only say that it involved programming lol
@kasdeya Ooh, another programming game to add to my library? Nice.
@kasdeya I see what you mean about the ingame code editor. The requirement that the currently running code is all in one big script definitely starts getting in the way pretty quickly.
The game is really fun though. Now I need to properly learn Node instead of just dabbling in Javascript, so I can create a workflow like yours. 
@emberquill I’m glad that you’re having fun! and the tool that you want for putting multiple files into one big file is called esbuild, if that helps (there are alternatives but it sounds like they’re probably overkill)
unfortunately I’ve had a pretty hard time wrestling with the various config files in order to get my workflow up and running, but I’ve heard that just using regular JS (I’m using typescript) is much much easier so that might be a better place to start!
even then, though, it’s kinda confusing because of all of the different commands there are - like npm (which does about a million different things), npx, and node. plus package.json isn’t super easy to configure either
but, I hope you’ll be able to figure everything out without too much trouble! and tbh it was very worth the effort for me, to get my code into a form that I could edit in neovim and split into multiple files