CentreForDigitalHumanities / lettercraft

Lettercraft & Epistolary Performance in Medieval Europe
BSD 3-Clause "New" or "Revised" License
1 stars 0 forks source link

Feature/authentication basics #54

Closed lukavdplas closed 1 month ago

lukavdplas commented 2 months ago

This update adds basic functionality for authentication.

As discussed, the systems for authentication are based on https://github.com/UUDigitalHumanitieslab/I-analyzer. Authentication in the backend uses the dj-rest-auth en django-allauth libraries.

Current status

You can log in and log out in the frontend and see your login status in the top menu. You can also register a new account at /users/registration/ (the backend endpoint); after that, you'll be able to verify your email. (In development, emails are sent to the console backend.)

The backend implements more functionality than that, since most of this could be copied from I-analyzer with little adaptation. It should provide all the necessary endpoints for:

Changing your e-mail and deleting your account isn't implemented in I-analyzer so those endpoints still have to be added.

E-mail verification is implemented, but not yet required. Making it required is trivial, but I would like to deploy this version first and make sure everything works.

The frontend is less complete, as we agreed this would be a good place to divide our labour. There is a an AuthService which should provide all core functionality for building components.