Handling Client Related On Module Script[ASK]

Is it better to use module script to handle anything local client related such as Mouse.Move or MouseButton1Click? I wanna know since I have a module script that needs a lot of argument from the client E.g.

hanlder.Update(Frame, TextLabel, TextBox, ImageLabel, Debounce)

I know I can just use the module script and add all of those manually; or is there like an alternative way? Then it came to me of just create a for loop and adding those to a table, but I would still have to use a for loop to actually get the instance that I want to access from the table since the instance from the table is also a table.

Iirc, module scripts are server sided, but you can pass in arguments from the client.

Why did you put [ASK] at the end of the title?

Hmm, I don’t think you understand this yet but module script is server sided if required() by a server script and local sided if required() by a local script.

The ask meaning I am asking.

Oh, then I don’t understand. Can you elaborate on your post?

I don’t see a reason for you to put ask, since this category is literally meant for asking questions.

I am asking if it is better to handle partially everything client related including the :Connect(function()) like MouseButton1Click, and just use _G.Initialized to check if the other module script is now available from the _G.SecondModuleScript.

Idk just felt right adding the ask since I am just asking not asking for help.

It doesn’t matter really. If you only want it to happen on the client, use a local script. If you want it to replicate across all clients, use a server script. It’s your preference.