B.E.N.J.I.
B.E.N.J.I. copied to clipboard
Make code modular
This is a discussion to on how to make the code more modular and easy for debugging
Where do we start ?
I was thinking about modularising each functionality that we are going to add.
I'm not too familiar with modularising. Any tutorials I can quickly use to catch up ? Or can you explain in simple step forms ?
PS: Just asking, is it how the 'play jole' function is performed in another file in the modules folder or ?
I appreciate.
Convert the big code into small python files with each of them being able to execute the functions it is supposed to be so that we can import those in the main program and use it along with GUI.
Can you point me to examples ?
But this needs to be done with both the versions.
You mean the Windows and Linux versions ?
Yes, of course. Before we modulate the code, I suggest we remove the issues plaguing it like Youtube not working on Linux and absence of B.E.N.J.I. for MacOS. Just an opinion. :sweat_smile:
Everything else is okay but those two issues ?
Just an opinion. I would like to know what you all think and then we can proceed. Open-source is a democracy after all :smile:
I second you. Once B.E.N.J.I. works on all platforms, we now build up on it
.
├── demos
│ ├── working-linux.gif
│ └── working-windows.gif
├── features
│ ├── google.py
│ ├── __init__.py
│ ├── news.py
│ └── youtube.py
├── functions
│ ├── __init__.py
│ ├── speak.py
│ └── speechtoText.py
├── gui
│ ├── home.py
│ ├── __init__.py
│ ├── splashscreen.py
│ └── static
│ ├── button.png
│ └── logo.ico
└── main.py
As suggested by @Yatish04 too, we could have the following structure for our code. @the-ethan-hunt yes, we should fix other issues first, and then make a switch. Maybe we could also realise a better structure for our code by then. :-)
This is fine I suppose @kb-studios
Then I think we should solve the other issues and then focus on making it modular. I liked what @kb-studios has done. We could later go by that
@the-ethan-hunt Since this issue is still valid, I would rather emove the KWoC
tag from it.
@the-ethan-hunt, I am working under GSSoC 19. Can I start working with this issue, if its ok as of now? Also, I will first breakdown Linux version, then go for windows.
@the-ethan-hunt I'll go for working out this issue in Windows.
@the-ethan-hunt I'll go for working out this issue in Windows.
Please add GSSoC 19 label