The real problem comes in when:
You have a program that sends notifications but they never get shown.
A program wants to ask for a password but the password prompt window never appears.
You need to copy and paste text, but you can’t.
All of these issues arise because some components exist in a desktop environment but not in a window manager. Based on the unbloaty philosophy of Unix (every component should do one thing and do it best), to apply this philosophy to all user experiences in Linux:
I need to know all abilities and related components that a software running on an environment will have and need (based on some standardization probably). For example, one ability is sending notifications, provided by a component named notification manager.
I need to know how these components are known and usable for apps (what protocol will be used to 1) identify needed components and 2) access and communicate by software (based on probably some standards)). Initially, I want to implement these components simply as Python scripts.
I’ve searched the internet extensively and chatted with large language models, but they only mentioned a limited number of software programs.
they provided no information needed for implanting components that would give software the ability to interact well with the operating system and window manager.