What is the problem or limitation you are having?
Since we are planning in the future to provide support for different platforms (desktop, android and iOS), I think the current project structure doesn't help us much with that. I thought this is the best time to think about the current folders structure that maybe we can improve it to provide ourselves with a base to support different platforms.
Describe the solution you'd like
Here's is my thoughts of how I see the new structure: I'm thinking about creating a GitHub organization called T3InfoSecurity, like beeware organization (take a look please), with following repos:
The GreatWall-Protocol repo: This repository represents an implementation and testing of the tacit-knowledge-authentication-protocol (greatwall) and does not include the user interface. This repo has the following structure:
Great-Wall
│ demos/
│ docs/
│ src/
│ │ greatwall/
│ │ │ helpers/ (folder that contains all helper modules link colormaps and etc)
│ │ │ palettes/ (folder that contains all tacit knowledge type that we will support)
│ │ │ _init_.py
│ │ └ greatwall.py (module that implement TKBA protocol)
│ │ tests/ (folder that contains the tests of the protocol)
│ │ │ _init_.py
│ │ └ ....
│ LICENSE
└ README.md
GreatWall-Desktop repo: This repository represents an implementation of the GUI interface on the Desktop. this repo will contains current implementation of the gui but with a simplified structure like that:
GreatWall-Desktop
│ resources/ (contains any thing that we will need in the application like icons, constants and greatwall-protocol module)
│ app.py (contains the current implementation of the gui.py file.
│ tests/ (contains the tests of the gui)
│ LICENSE
│ README.md
└ requirements.txt
What is the problem or limitation you are having? Since we are planning in the future to provide support for different platforms (desktop, android and iOS), I think the current project structure doesn't help us much with that. I thought this is the best time to think about the current folders structure that maybe we can improve it to provide ourselves with a base to support different platforms.
Describe the solution you'd like Here's is my thoughts of how I see the new structure: I'm thinking about creating a GitHub organization called T3InfoSecurity, like beeware organization (take a look please), with following repos:
The GreatWall-Protocol repo: This repository represents an implementation and testing of the tacit-knowledge-authentication-protocol (greatwall) and does not include the user interface. This repo has the following structure: Great-Wall │ demos/ │ docs/ │ src/ │ │ greatwall/ │ │ │ helpers/ (folder that contains all helper modules link colormaps and etc) │ │ │ palettes/ (folder that contains all tacit knowledge type that we will support) │ │ │ _init_.py │ │ └ greatwall.py (module that implement TKBA protocol) │ │ tests/ (folder that contains the tests of the protocol) │ │ │ _init_.py │ │ └ .... │ LICENSE └ README.md
GreatWall-Desktop repo: This repository represents an implementation of the GUI interface on the Desktop. this repo will contains current implementation of the gui but with a simplified structure like that: GreatWall-Desktop │ resources/ (contains any thing that we will need in the application like icons, constants and greatwall-protocol module) │ app.py (contains the current implementation of the gui.py file. │ tests/ (contains the tests of the gui) │ LICENSE │ README.md └ requirements.txt
GreatWall-Android repo: ...
GreatWall-Apple repo: ...