That’s a bingo! Yeah I decided to dip my toes into Go by writing a simple library on a topic I was learning about
I don’t think libraries should log by default
That’s a fair point, interfaces are still a concept that boggle my mind a bit, but maybe this is the problem that will help me actually grasp them. Thanks!
there’s no explanation of what this is supposed to do.
Totally right, sorry about that, I’ll update the Github, but it brief this is a library that’s supposed to help a developer set up a Role Based Access Control system for an API for web service. Role Based Access Control is a method of access control whereby (And this is my very beginner’s understanding of it) users are assigned roles, and these roles are in turn issued different permissions based off what that role is supposed to have access to. When checking if a user is authorized access to a certain resource, the roles assigned to them are checked for the permissions needed for the resource. If they have permission then they are granted access to the resource, otherwise they are denied access.
This library manages roles, permissions assigned to roles, and checking of permissions against roles via an http middleware.
Then, there’s no main function. Where’s the entry point? This is a bit where I’m doubting myself now. Maybe go has changed, but when I was writing it, it requires a main function to even run.
Well, this is supposed to be a library that’s used by other people, so it has no main function itself, rather it’s called by other people
I’ll save you 2 clicks :
Web Project Management
Odoo : Suite of open-source business apps written in Python
OpenProject: Collaborative Project Management
Wekan: Trello-like Kanban
Focalboard : Self-hosted project management tool
Taiga: Web-based tool for agile project management
Kanboard: Kanban board for small teams and individuals
tuleap: Improve management of software development and collaboration
eGroupWare : Enterprise ready web-based groupware suite with project management
Redmine: Flexible application written using the Ruby on Rails framework
LibrePlan: Project planning, monitoring and control
Trac : Project management and bug/issue tracking system
Leantime : Project management for the non-project manager
Scrumlens: Agile retrospective tool
dotProject: Web-based, multi-user, multi-language project management application
TaskBoard: Kanban-inspired app for keeping track of things
I think the general consensus for homelabbers is a mesh network – Tailscale and Netbird are the two most popular options