Skip to content

feat: Nostr login (NIP-07) - #22

Open
guildm4ster wants to merge 7 commits into
mainfrom
4/feat/nostr-login-nip07
Open

feat: Nostr login (NIP-07)#22
guildm4ster wants to merge 7 commits into
mainfrom
4/feat/nostr-login-nip07

Conversation

@guildm4ster

@guildm4ster guildm4ster commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR adds a navbar with NIP-07 Nostr login button. Also adds reusable components Loading and UserAvatar.

Related issue

Closes #5

Changes made

  • New navbar component
  • NIP-07 (extension) Nostr login
  • New reusable UserAvatar component
  • New reusable Loading component
  • New assets: nostr logo & loading gif from this repo
  • authState in '$lib/auth.svelte' for future auth state handling
  • Updated PR template

Author checklist

  • Matches the spec
  • bun run test - all tests pass
  • bun run format - code has been formatted
  • bun run lint - no eslint errors
  • bun run build - build succeeds
  • I tested the relevant changes manually

Reviewer manual testing checklist

  • Nostr login works
  • Username is displayed correctly after login
  • Profile pic is displayed correctly after login
  • User stays logged in after hard refresh
  • Log out works

@spherical-spinach spherical-spinach left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Login needs a more graceful error handling.

Otherwise everything looks good.

<!-- Logged-out (idle or error) -->
{#if authState.status === 'error' && authState.error}
<span class="text-xs text-red-400" title={authState.error}
>Login failed</span

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs more graceful error handling. Users needs to know what Nostr extensions to download in order to use the login.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Initialize NDK

2 participants