xjjak / LapCal

Building gloves that enable typing on a 34-key keyboard without an actual physical keyboard using IMUs and machine learning.
Other
2 stars 0 forks source link

[IDEA] Restructure software directory #49

Open palisn opened 3 months ago

palisn commented 3 months ago

Describe the vision. What is to be achieved? What does the end-result look like? Is it a specific feature? The current structure is too thrown-together. You can neither easily navigate it nor extend it properly. The goal should be a clean structure that is easily extensible and allows for quick testing and development, as well as deployment.

Share possible solutions or ideas and approaches. The top-level of the Software directory should provide four stages of software:

Additionally, we should replace the central requirements.txt with a more decentralized approach, that requires only exactly as much as needed for a specific tool (my idea is to leave the requirements.txt in place, but also provide shell.nix files for every tool). Along with that, every tool and most directories should get their own READMEs that explain their usage and other important information regarding them.

Additional context The current structure strongly differentiates between click and state-detection. They also both rely on different data collection method, with no clean way to interoperate them.

xjjak commented 3 months ago

Should a folder dedicated to machine learning on-the-edge (edge-ml?) be added to the 2nd level or put inside the machine-learning folder?

palisn commented 3 months ago

Should a folder dedicated to machine learning on-the-edge (edge-ml?) be added to the 2nd level or put inside the machine-learning folder?

Wouldn't that be firmware?