thepassle / create-lit-app

Create LitHTML apps with no build configuration. (LitHTML/Redux/Webpack/Express)
https://create-lit-app.herokuapp.com
110 stars 10 forks source link

Authenication #3

Closed aadamsx closed 6 years ago

aadamsx commented 6 years ago

Would be nice to have the option for authentication with passportJS for this CreateLitApp.

thepassle commented 6 years ago

I was actually thinking of adding firebase authentication, though i've used PassportJS before. Is there any specific reason you'd want to use Passport specifically?

aadamsx commented 6 years ago

Thanks for the feedback.

PassportJS just seems the "standard" for Auth with Express backends. Heck even the new GraphQL with Apollo Server backends seem to use PassportJS for Auth.

Doing a google or YouTube search for Node Authentication for example brings up many tutorials, most use PassportJS for Auth. I like the fact that there's plenty of info about it online.

Also, I don't want to be locked into a product like AWS or even firebase for Auth services. In other words, I'd like to be able to take my stack and go to any cloud service platform.

:)

sheideman commented 6 years ago

Hey guys! First @thepassle KILLER project starter! I actually have a nice little auth starter coded up that I would be happy to share. It uses Passport, Passport-Local, Passport-JWT, JWT-Simple & bcrypt-nodejs.

The one caviat is that I also have a mongodb/mongoose for the user model. Do you want me to leave that in or should I pull it out so it is db agnostic? I have thought about doing this and using auth0 instead so auth is completely decoupled, but like @aadamsx said product lock in 😉

I also want to get one put together using a loopback backend rather than express for pure API enjoyment.

thepassle commented 6 years ago

I've been thinking about this a lot over the past week, and I've decided against adding authentication in the code of create-lit-app. Arguably its already too verbose with redux/express api, and they should be documented in the docs instead. Create-lit-app was made to help people get started with lit-html/lit-element/webcomponents, you can find any tutorial on passportjs authentication and add any frontend to it. Having said that, i'm more than willing to help write a tutorial or some documentation on how to implement @sheideman s auth starter with create-lit-app.

Create-lit-app was made so that people can extend on it, and build on top of it, I think adding a guide/tutorial/docs for this would be a great way to do so.