NC as basis for an app to manage club memberships (extension of NC user profile in an app)

Dear Nextcloud community,

I would like to write an app to manage memberships of my sports club. Basically, for each member we need to save data like name, role (e.g. trainer, player, …), email, phone number, etc. This information should be available in a membership list with the ability to see more or less data based on user permissions.

We are already using Nextcloud mainly for document management. Therefore, it might be a good idea to build a Nextcloud app for our requirements. This would bring a solid base with authentication, group memberships, basic GUI layout, etc.

Given your experience, would you recommend to build a Nextcloud app in favour for a separate application?

I couldn’t answer the following questions after quite some research (have partly been asked before without an answer):
1.) Is it possibe to extend existing Nextcloud user information in an app (like name, email, picture)? Do you have any hint where to find further information on this?
2.) Is it possible to change existing Nextcloud user information from within an app? E.g. user updates her email address in the app and this change should also apply to the existing basic Nextcloud user data.
3.) Did I understand correctly that vue.js framework is recommended to build the frontend?

Thanks for you support
Michael

I’m not a developer but been poking around it the code for various apps, and I think this is what you are looking for (user values): https://docs.nextcloud.com/server/15/developer_manual/app/storage/configuration.html

Hi,

thanks for your reply. As I understand that documentation, it is about how you can store data: on app-level or user-level – depending on the use case. If I want to have the membership list visible to all users, I would have to store the data as “app values”.

What in my view might be interesting is, if I can use the existing Nextcloud user data (name, email, picture) and extend this data in my app by additional data fields in such a way, that the Nextcloud user list is the basis for my membership list. Especially, such that if a user changes his email address in the membership list, this change directly applies to the Nextcloud user data. If this data would not be consistent after a change, this would lead to huge confusion for users.

Best regards,
Michael

How about this app, maybe it does what you need already or you could even improve it?

https://apps.nextcloud.com/apps/spgverein

2 Likes

Hi,

ok I misunderstood a bit, but think I get what you want now. Check if you can use this one:
https://docs.nextcloud.com/server/15/developer_manual/api/OCP/IUser.html#OCP\IUser::setEMailAddress

There are other functions there as well which seems useful for your purpose.

Forgot to say that I think your membership app idea is a good idea - could be useful for many types of clubs i think. So keep on hacking, maybe you could add some kind of member badges and stuff as well :slight_smile:

1 Like

I would look at something like CiviCRM and then integrate that with NextCloud, which is what I am looking at for my non-profit. Using something like the User and Group SQL Backends app to link the two together.

1 Like

Thank you all for your hints - very helpful! Especially CiviCRM caught my interest. I wasn’t aware of this tool and am currently investigating it more in detail.

It would be great to have CiviCRM running with Nextcloud as backend instead of the different CRMs. As far as I understood, the minimum integration requirement is to provide a user management backend (incl. authentication and authorization), an installation routine and some GUI integration. Not sure about the effort required to integrate CiviCRM in Nextcloud or if such an approach would be supported by the CiviCRM community, but why not think about it…?

The spgverein app is used to access the data storage of a proprietary Windows software.