launchpad icon indicating copy to clipboard operation
launchpad copied to clipboard

User/Authentication Layer

Open pingevt opened this issue 3 years ago • 6 comments

For the server we need to implement authentication. So user, passwords and the whole deal. Initially, I have it all implemented in the Server package, BUT do we need users for other things?

Also, created quick cli commands for user creation/editing/deletion. Not sure if this is the best way to handle this.


  • [ ] do we need users for other things?
  • [ ] How should we handle the admin for creating/editing/deleting users

pingevt avatar Aug 29 '22 13:08 pingevt

BTW now that I'm reviewing my notes, I think this was one of the reasons I was interested in KOA. It has a pretty wide selection of auth layers that might be worth looking into: https://github.com/koajs/koa/wiki#authentication

LMK what you think!

benjaminbojko avatar Aug 29 '22 16:08 benjaminbojko

@benjaminbojko - so Express and KOA are completely different, so I don't think we can combine them. I've just been using express cause its what I'm familiar with, but fine going either way. SO we should make that decisions soon. Looks like KOA does allow for web sockets as well. So At this point I think its an either/or.

pingevt avatar Aug 29 '22 16:08 pingevt

For sure, I didn't think of them living side-by-side. Did you already get far with implementing Express? Maybe doing a quick survey on Slack might be a good idea.

IMO Express just seems heavy handed for what we need and something like Koa seems a little more lightweight and purposefully built for a slim core with extendibility in mind. This article gives a good comparison.

Koa to me seems more nimble and modern (fewer callbacks, better async flows), but I haven't personally tried it. On paper, it sounds like it would make some of the challenges with scalability and customization that we faced with AM/PM + Express easier to deal with.

benjaminbojko avatar Aug 29 '22 17:08 benjaminbojko

Oh that looks like a better article, i found 2 but they were a bit old.

I can switch it over... It might be good to learn as well. Lets see if anyone says anything in slack.

pingevt avatar Aug 29 '22 17:08 pingevt

@benjaminbojko - I've been playing with Koa this morning. form the LP architecture side, I think its easy to switch and replace express. At this point, seems like we need to make an executive decision. My thoughts:

  • Internally for BC, we're not experts on either
  • Launch pad is so small, not sure the performance benefits of koa over express mean that much
  • Koa does seem to be a bit future forward
  • Probably good to get some Koa experience

Honestly, I don't know what your challenges were with AM/PM + Express, but koa does seem a bit more modern and future forward.. so, I say let's do it.

pingevt avatar Sep 02 '22 16:09 pingevt

Agreed! Feels more future proof and why not try something new :) Let's try Koa and keep the architecture as light as possible.

benjaminbojko avatar Sep 02 '22 17:09 benjaminbojko