Curated development tools

List of selected libraries, frameworks, runtimes, …

Depending on your use case, the right selection of your development environment is key to speed up the delivery.

For all cases there are a bunch of samples in the yafra repositories. They are documented on other blog posts.

A set of useful libraries to create server, frontends or API’s.

FrameworkLinkLanguageUsageOverview
FastAPIhttps://fastapi.tiangolo.comPythonBackend APIRESTful API, GraphQL, ORM SQLAlchemy, ..
.NET Corehttps://dotnet.microsoft.comC#Backend APIRESTful API, ORM
PySidehttps://doc.qt.io/qtforpython-6/index.htmlPythonFat ClientsMacOS, Linux, Windows based on Qt
ElectronJShttps://www.electronjs.orgJS / TypescriptFat ClientsMacOS, Linux, Winodws based on HTML/CSS/JS
Astrohttps://astro.buildJavascriptStatic WebseiteLots of templates and adding, can mix markdown
Angularhttps://angular.devTypescriptSPAEnterprise UI Framework
Alpine.jshttps://alpinejs.devTypescriptSPASimple UI
Richhttps://github.com/Textualize/richPythonCLIASCII UI
Arduinohttps://github.com/arduino/arduino-cliC/C++BoardProgramming Arduino Boards / M5
NRFhttps://github.com/NordicSemiconductorCBoardNordic Semiconductor Boards

SQLlite is preferred for local and simple setups. You do not even need a server :-) Large data storage is done on cloud like Azure Datalake. Run the databases within dockers during development or on the cloud.

DatabaseLinkLanguageUsage
MariaDBhttps://mariadb.orgallTransactional data and queries, SQL
SQLlitehttps://www.sqlite.orgallSmall and in-memory database, SQL
MongoDBhttps://www.mongodb.comallDocument oriented, transactions, NO-SQL
Redishttps://redis.ioallIn-Memory, speed in mind, NO-SQL
Azure Datalakehttps://azure.microsoft.com/en-us/solutions/data-lakeallLakehouse storage

In order to use the latest llm’s from https://huggingface.co/ use one of these AI toolsets to test them but as well to integrate them into your code.

AI toolsetLinkLanguageUsage
LM Studiohttps://lmstudio.aiallRun https://huggingface.co models locally, emulates an OpenAI API
Ollmahttps://ollama.comPythonRun LLAMA and other models locally

To store sensor or machine data the MQTT protocol is preferred.

Cloud ServiceLinkLanguageUsage
Azure IoThttps://azure.microsoft.com/en-us/products/iot-huballIoT with MQTT - cloud based
Apache ActiveMQhttps://activemq.apache.orgallMQTT, AMQP, STOMP - on premises hosting

Run local https://www.docker.com/ to create a cleaner development environment or host them within Kubernetes / Cloud facilities.

ImageLinkUsage
Slim Debianhttps://hub.docker.com/_/debianslim debian linux, based on standard libc
Alpine Linuxhttps://hub.docker.com/_/alpinelinux based on musl libc, very small and secure