charmbracelet / vhs

Your CLI home video recorder 📼
MIT License
14.42k stars 241 forks source link

Code organization #174

Open rm-dr opened 1 year ago

rm-dr commented 1 year ago

Right now, all the sources of vhs are piled into the root of this repository. We'll need to clean that up sooner or later, into at least one src/ subdir.

I presume that it would be best do do this when there aren't many features in progress, so that merging into moved files is less of a headache.

maaslalani commented 1 year ago

Hey! I agree, keeping everything in the root is getting a bit too much. Moving into package is probably a better option.

elmarsan commented 1 year ago

Hey!

I agree with you guys. I believe it would be more easy to work just adding a few packages. However rearrange the structure depends on personal tastes.

@maaslalani @rm-dr how would you structure it?

maaslalani commented 1 year ago

I would probably structure the code as a few separate packages.

But, very open to suggestions if there are better ways to organize the code.

elmarsan commented 1 year ago

I'm my mind I've got something like this:

maaslalani commented 1 month ago

Still not perfect organization but I did factor out the lexer and parser so that others can build on top of the language!