I’m excited to announce that I started to work on RFEM Connector . I would like to share my thoughts and plans about the development, and I have some questions to the Speckle team also.
Architecture and Development
I started to work with Python SDK since RFEM has a Python API also. The Blender Connector is a great guide for me to create the architecture, but there are some basic distinctions between two programs.
I already managed to send and receive geometry data, but I have to say it’s still in a pre-development stage.
The question is, should we create a new repository for this connector? Sure I can contunie to develop on my own repo, but I’m hoping to reach another community members so we can manage it together @izzylys
Desktop UI for Python SDK
My biggest concern is there is no template we can use for Desktop UI in Python SDK. There are 3 solutions I thought about it:
Create a Desktop UI template for Python SDK with community development (PyQT5 is one of the solutions, or Electron can be used with Python hooks for a cross-platform solution)
Find a way to use Avalonia solution for Desktop UI, but connect it with Python methods (not even sure if it’s possible or not)
Develop the whole library as a C# project (which is the worst case scenario for me)
Let me just share the link of the RFEM Python API repository so interested people can have a look.
Fantastic news @dogukan , I’m super happy to see this
I was actually just discussing the possibility of a RFEM Connector with @AlexHofbeck (which you might know).
Some answers to your questions:
In regards to the repository, we do not have a monorepo for python based projects yet (like speckle-sharp), and if you’re planning to keep maintaining the Connector, it might just be simpler if it’s in your organization/account?
No easy answer here, as you have already imagined! Ultimately the decision is up to you
My 2 cents are:
if RFEM has a .NET API and it’s as mature as the Python one, it’d make sense to have the connector in C# to leverage the existing DesktopUI and to keep it consistent with most of the other connectors. Also, C# is fun!
it is possible to launch DesktopUI as a separate process and have it communicate with the main app via IPC, but it’s a bit tricky and the integration is not as smooth (eh it’s a completely separate window)
I’ll let others chime in here, especially @izzylys !
We are currently taking a bit of a peak on the newest RFEM version and toying around with the API (@HQue and others). When we are getting a bit more serious about it (mgmt discussion), we would be really happy to exchange about a collab in case you are interested @dogukan