Skip to content

Implement Auth #6

Description

@shri30yans

Implement user authentication in the application using Zitadel for both backend and frontend. After successful login, store user details in the database.

Requirements

Backend Integration:

  1. Use Zitadel for securing API requests following Zitadel's backend example in Go.
  2. Implement login API to authenticate users and issue tokens using Zitadel.
  3. Once authenticated, save or update the user's information in the database.

Frontend Integration:

  1. Implement Zitadel login flow in the frontend using Next.js example.
  2. On successful login, create a form to capture the user's details (such as name, email, etc.) and display them on the frontend.

User Details Storage:
Extend the user model in the database and add a User structure in the frontend to store the following details:

type User struct {
	UserID    int       `json:"user_id"`
	Name      string    `json:"name"`
	Email     string    `json:"email"`
	CreatedAt time.Time `json:"created_at"`
	Location  string    `json:"location"`
	Bio       string    `json:"bio"`
}

Acceptance Criteria:

  • Users should be able to log in via Zitadel.
  • After login, user details should be stored/updated in the database.

References:
Zitadel Quickstart
Backend Example
Frontend Example

Note

Interested in working on this but don't want to use Zitadel? Alternatively suggest any other authentication methods.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions