You architecture seems to blend technical and management in an unclear way. It's strange to see "lemmy server" and "staff roles" in the same chart. Unless by staff roles you mean a software that manages staff roles? But "managers"?
Programming
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
Sorry I know that's a bit unclear. The "staff roles" and "managers" are roles that the CEO is able to assign to staff through the software. In other words, it's the mechanism the CEO uses to construct their hierarchy. Same with performance metrics, those are written expectations that would be entered into the system for each person's role.
From architecture standpoint, bundling these sounds quite messy and complex. If you want open source and web site based - why not choose containers and spin up whatever fits your use-case?
Hmmm, doing some research on containers now, and it does seem like the right way to do this. I'm still learning about server architecture but I didn't mean to imply it had to be a monolith, the key is it having the capabilities I need.
I'm going to look into Docker and see what I can deploy on it. Seems like a good first step.
Thanks
(4th comment)
when it comes to the website and e commerce, odoo is probably the most comprehensive solution.
But tbh, the technical architecture of this whole setup is beyond what a beginner ,ay be able to host. You should consider hiring a consultant or contacting an MSP.
Also see: https://github.com/awesome-selfhosted/awesome-selfhosted?tab=readme-ov-file#e-commerce
Thanks for all the great solutions, I'll be looking into your advice. Like you said it is definitely a massive project for a beginner, I'm going to take it a step at a time, and maybe do a smaller experimental app first to get my bearings. The good thing is I'm not in too much of a rush so I have time to learn.
3rd comment: re: secure voting
The big thing behind secure voting, is not just is it secure, but also can you actually get people to use and trust it.
Sure you can have public key cryptography, signed messages based electronic voting, but "create a gpg key" is pretty difficult to get the average user to do.
And if you didn't know what any of those terms here, that only proves my point about people not knowing how these systems may cause them to not trust them.
Don't fall into the trap of inserting technology for technology's sake. You can do insecure email based voting (or chat app based), but the easiest thing for your sanity might just be paper ballots.
My current thinking is that the vote is electronic but you get a paper receipt with a bar code or something. Not sure how it will turn out, like many of these apps it's a whole project in itself
(2nd comment)
You probably don't want a lemmy instance. Of course it depends on the company, but lemmy is designed to federate out. Unless you want it to federate out?
I would recommend discourse or similar instead, they are much easier to host.
I was thinking lemmy because of the voting structure. Since it's internal discussion it could be used by the management to gauge sentiment in the company. It wouldn't be for federation.
You're probably right about it being too complex though, just not sure if there's a lightweight option that's a closer match than ~~discord~~ discourse (does discourse having voting?). Something to consider.
You sound a little confused here. An enterprise application server or EAS is a piece of software that can host applications, but doesn't bring any with it. EAS are complex programs that have to implement and support a multitude of specifications for the apps that are going to run on them. Many of them are already open source, and there should be very little need for new ones.
What you seem to want is some ecosystem of software that may or may not run on an EAS, which satisfies your list of high level requirements.
Yes definitely a beginner with anything networking or web design.
Modular is good though, ideally I would like to bring them all together as one package to share as open-source. I don't know how that would work with permissions for the applications, but I imagine it would be OK with most (foss) licenses.
There are also some things that might need customization. For example, the value of someone's vote is determined by the equity recorded in the accounting books, so those two applications will need to share information.
In any case you have given me some direction and I appreciate it, thanks.