Any thoughts on the data structure of my web-app?

Hi there!

I’m currently working on a web-app with my brother and I designed the data structure for our web-app and I’d love to know what you think about it in a performance and security perspective.

For the context: it’s an app where user sign up, will have to answer a form, we want to store in the database all his answers, and then at the end of the form we will ask the user to download some documents (his ID card and other administrative documents, for the purpose of this post I’ll say administrative_doc_1,administrative_doc_2,administrative_doc_3 etc etc) (here the green buttons are actually files uploaders)


After he’ll have access to his client portal where he’ll be able to , first of all, send a message to me (the admin)


Then he’ll have the possibility to see the files that he first downloaded from the form, to download some new documents that he’ll directly see when downloaded, and to see the documents that me the admin will send him ( the idea is when you click on “mon suivi” he sees only the documents that I,the admin, shared and when he clicked on “mes documents” he sees only the documents that he downloaded) (and “partagé par” means in English “shared by”)

We’ll also add a referral system but we didn’t figured it out yet how we wanna proceed.

To put it in a nutshell we want to do like copilot-modern client portal (https://www.copilot.com)

Ouf, that was a long introduction :sweat_smile:

So that’s the data structure I designed and on which I’d like some reviews (for this I watched several YouTube videos and read the database section in The Ultimate Guide to Bubble Performance book by petter Amlie but I don’t know if I implemented it well because there were a lot of concepts)


So thanks to those who have made it here, I hope I was clear, if not don’t hesitate to ask for more details! And can’t wait to know if you guys think that my data structure will allow my app to have good performances if the number of users go up.

Have a great day guys!

Forgot to tell: if I have a field chat of type chat in the 4 first data types it’s because I want to build an admin portal where I can manage all my conversations with all my clients, and to have access to their documents that they sent us

This topic was automatically closed after 70 days. New replies are no longer allowed.