integrativesoft / foton

Prototype for an electron alternative written in C# by Integrative Software LLC and contributors.
Apache License 2.0
10 stars 1 forks source link

foton: the present and future? #11

Closed ghost closed 1 year ago

ghost commented 1 year ago

Hi all.

1. concept

I was thinking of offering more support on operating systems in foton like: haiku, jx-os, Node-OS or jnode.

1.1 use case

  1. My idea is similar to react-native which has certain autogenerated functionality. I mean, you write in react-native and this is translated into: 'java' or 'swift' calls. This allows you to generate android apps and ios apps with react-native code.
  2. I'm thinking of doing something similar to foton, when writing a foton code, you can have an app on ios, android or desktop regardless of any operating system.
  3. Initially, I'm thinking of creating an environment like creat-react-app, where you generate a minimal application with an internal folder structure. With this boilerplate, you can add more or less features as needed.

1.2. Notes

  1. There are many developers in projects like jx-os, jnode, haiku. As the foton project still doesn't have much of a user base, it would be interesting to perhaps partner with development groups that have a specific target audience for foton?
  2. Projects like jx-os, jnode, haiku are complete operating systems like Windows, Linux, MacOS - despite not having the same amount of users in terms of the desktop environment market.
  3. In addition, projects like: Node-OS, jnode, jx-os, haiku are open operating systems, which allows you to understand how they work and possibly add support or not.
  4. Node-OS - are projects that are not maintained, and maybe it's a big waste of time to have support for this special case. Would it be interesting to support operating systems that are legacy or that are no longer active, maintained by the community to gain a user base, even if small for Foton?

1.3 Another idea

  1. One thing I thought of would be to write the documentation on a wiki or with docsify here on GithHub Pages to make it easier to use foton or clarify common doubts
  2. Another idea/doubt would be whether or not to support cloud applications with foton.

2. questions & issues

  1. Would having support for multiple operating systems make Foton different from framework: Electron?
  2. One problem I noticed is that vscode which is written in electron is not supported in newer versions of Windows 7. Also, vscode does not support operating systems like haiku, jnode, jx-os. Would it be interesting to have a vscode-like project on foton for these operating systems as a demonstration that foton is different from electron to gain more community, development and user?
  3. Maybe this issue doesn't make sense as there are too many old or new operating systems to support in foton. Including proprietary things like javaos, Windows or MacOS. I don't know what the legal aspect would be like supporting something that I don't have a license or right to use, copy.
  4. Personally I use Windows, Linux and I don't see a problem using both operating systems. My doubt is about the support of other operating systems, or if I should focus only on the scope of the project: Linux, MacOS and Windows like framework: Electron. I mean, should we follow the same path as the electron to be an alternative to the Electron?
  5. Some projects that generate code on different platforms: Electron, Onsen-ui, Ionic, react-native, Xamarin. But this is not yet "cross-platform", that is: a code that is generated for a smartphone, smartwatch, smart-tv, desktop, web, cloud, etc. By the way, nowadays you end up opting for a framework for a specific case or not. Or I don't know much about it.
  6. Are there people who use linux on their smartphones. And... possibly if they use foton on their smartphones, smartwatch, desktop, cloud, web, smart-tv?
  7. Mitosis, is a project that generates visual interface in different frameworks - I think of myself as inspired by this in another way, having support for a visual library instead of a framework.

3. question/feedback

What do you all think of the idea?

pablocar80 commented 1 year ago

I would definitely add support for MacOS first of all. Then we can extend to any OS where C#/.NET runs, given that the library runs on it.

Looked a little bit into those OS, I wonder if they are intended for server-side development only, such as Docker containers. NodeOS looks particularly useful for that.

More detail on specific questions:

1.3 Another idea One thing I thought of would be to write the documentation on a wiki or with docsify here on GithHub Pages to make it easier to use foton or clarify common doubts Ok

Another idea/doubt would be whether or not to support cloud applications with foton. What do you mean with cloud applications? Web browser pages do not need electron or an alternative.

2 questions & issues Would having support for multiple operating systems make Foton different from framework: Electron? We can expand to the platforms that run C#/.NET.

One problem I noticed is that vscode which is written in electron is not supported in newer versions of Windows 7. Also, vscode does not support operating systems like haiku, jnode, jx-os. Would it be interesting to have a vscode-like project on foton for these operating systems as a demonstration that foton is different from electron to gain more community, development and user? We can ignore Windows 7, it's not supported anymore by Microsoft. For the other OS, they are useful only if they are intended for frontend use, and we would need them to run .NET.

Maybe this issue doesn't make sense as there are too many old or new operating systems to support in foton. Including proprietary things like [javaos](https://archiveos.org/javaos/), Windows or MacOS. I don't know what the legal aspect would be like supporting something that I don't have a license or right to use, copy. We don't need to own Windows or MacOS in order to develop libraries for those platforms, we don't need the OS to be open source in order to develop for it.

Personally I use Windows, Linux and I don't see a problem using both operating systems. My doubt is about the support of other operating systems, or if I should focus only on the scope of the project: Linux, MacOS and Windows like framework: Electron. I mean, should we follow the same path as the electron to be an alternative to the Electron? Linux, MacOS and Windows cover pretty much 100% of the frontend of end users for computers. After that, what's left that is definitely significant is Android and iOS devices.

Some projects that generate code on different platforms: Electron, Onsen-ui, Ionic, react-native, Xamarin. But this is not yet "cross-platform", that is: a code that is generated for a smartphone, smartwatch, smart-tv, desktop, web, cloud, etc. By the way, nowadays you end up opting for a framework for a specific case or not. Or I don't know much about it. Are there people who use linux on their smartphones. And... possibly if they use foton on their smartphones, smartwatch, desktop, cloud, web, smart-tv? Mitosis, is a project that generates visual interface in different frameworks - I think of myself as inspired by this in another way, having support for a visual library instead of a framework. Given that this library runs on C#/.NET, generating code that runs on a different platform seems a little out of reach, we'd need to stay in platforms that run C#. It's OK to make low level calls to the OS, however, the consumer of this library is a C# developer and it would be of no use for them an OS that does not support C#.

ghost commented 1 year ago

Hi pablocar80, thank you for feedback. I will close this issue, you clarified my doubt.

Have a great day, and thank you for your patience in answering my question.