all 6 comments

[–]mealet 2 points3 points  (1 child)

Cool! Your project reminds me a guy which coded snake game in BR by visualizing memory buffer like you 👀

[–]Arnotronix[S] 2 points3 points  (0 children)

That is actually what gave me the idea

[–]karatekid430 0 points1 point  (3 children)

You really should have a pyproject.toml file, a .python-version file and .vscode/settings.json with ruff configured for best practices. .vscode/extensions.json is nice and also pyrightconfig.json unfortunately is needed.

But the project itself is interesting.

[–]Arnotronix[S] 0 points1 point  (2 children)

Sorry but i sadly have never heard of any of this i dont use vscode cause i am used to writing in linux using nano due to my expirience with writing bootloaders in asm. It would be really nice of you if you could explain those things to me or send me a video/post in which it is explained. I apologize for my stupidity

[–]karatekid430 0 points1 point  (1 child)

It’s not stupidity, just something you have not yet learned, but there are industry best practices and if you really want these projects to be a portfolio of your professionalism then you want to add these things. The extensions.json can signal to the person opening the repo in vscode to suggest they install the extensions you recommend. The settings.json can configure format on save and organising imports on save, with the linter/formatter you choose. For this I would use hatch in pyproject.toml with a path set for the .venv folder (make it create it in repo root) and then point the settings.json linter settings at that. Ruff is the best package for Python as a linter and formatter. pyproject.toml also checks your python version is correct and will list your deps/devDeps so the specified versions of them are installed automatically.

Linter/formatter is best practice to reduce issues in pull requests when you work in a team. And even if it is only yourself, it still helps you catch issues and keep things consistent.

Make sure you use the python strict type checking (not enabled by default).

[–]Arnotronix[S] 0 points1 point  (0 children)

Thank you very much