Closed kb1lqc closed 6 years ago
I added the initial simple Wiki updates: https://github.com/FaradayRF/faradayio/wiki
OK I have a conundrum @kb1lqd @hdkmike @reillyeon @el-iso @lqdev ... I realize that my initial thought of this faradayio
module being both a python module and a command line program may not be the best path forward.
faradayio
module is pretty specific and while hardware agnostic it's not like it's going to be used by millions of people. Its main goal is to provide TUN/TAP interfacing to a serial port with SLIP protocol messages.faradayio
package and you have both the module and the end user program that uses it to provide a network adapter for Faraday radios.faraday-adapter
that uses faradayio
to provide command line program(s).What do you all think? I'd like some input about this since I want to keep this code as high quality as possible (YAY UNIT TESTING!!!) but also sane.
I think the latter (just a module) might be the best approach. This allows you to focus on the core functionality of faradayio
without having to worry about coupling it to any particular UI/UX use case. As you mentioned, "Its main goal is to provide TUN/TAP interfacing to a serial port with SLIP protocol messages.".
I think we can draw a parallel to the python requests
module. In my opinion one of the main goals of requests
is to simplify HTTP functionality. How individuals use it (console app, web app) is a detail that I assume the authors do not concern themselves with and leave it to developers using it to decide that. Of course, you can build POCs to demo how individuals might integrate it into their own apps, but at the end the main focus is the core functionality of the module as opposed to the UI.
Yeah good rationalization there.
---- On Tue, 30 Jan 2018 10:20:03 -0800 notifications@github.com wrote ----
I think the latter (just a module) might be the best approach. This allows you to focus on the core functionality of faradayio without having to worry about coupling it to any particular UI/UX use case. As you mentioned, "Its main goal is to provide TUN/TAP interfacing to a serial port with SLIP protocol messages.".
I think we can draw a parallel to the python requests module. In my opinion one of the main goals of requests is to simplify HTTP functionality. How individuals use it (console app, web app) is a detail that I assume the authors do not concern themselves with and leave it to developers using it to decide that. Of course, you can build POCs to demo how individuals might integrate it into their own apps, but at the end the main focus is the core functionality of the module as opposed to the UI.
— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub, or mute the thread.
Yeah, I agree with @lqdev. Separate them. Create a faradayio-cli
or faradayio-ui
that depends on faradayio
and imports it. It’d serve as an integration example and limit scope to the repo.
Thanks @lqdev and @hdkmike. I'm going to close this ticket as I will keel faradayio
its own module and build a separate project for the user interface.
The main wiki page for this project is outdated and should be cleaned up to reflect the current understanding of this project.
This will reflect the project prior to actual implementation of a
faradayio
program. However, I have a much better understanding of the direction of this project than I did when that page was originally created. Updating for the Initial Test Suite milestone will help future developments.