Giter Site home page Giter Site logo

luminous-devs / lume Goto Github PK

View Code? Open in Web Editor NEW
191.0 5.0 18.0 33.03 MB

A cross-platform desktop nostr client

Home Page: https://lume.nu

License: GNU General Public License v3.0

JavaScript 0.69% Rust 0.77% CSS 0.17% TypeScript 97.93% Shell 0.01% HTML 0.07% Nix 0.36%
nostr nostr-protocol tauri

lume's Introduction

Introduction

Lume is a nostr client

Usage

Download Lume for your platform here: https://github.com/luminous-devs/lume/releases

Supported platform: macOS, Windows and Linux

Prerequisites

Develop

Clone project

git clone https://github.com/luminous-devs/lume.git && cd lume

Install packages

pnpm install

Run dev build

pnpm tauri dev

Generate production build

pnpm tauri build

Nix

Requirements:

  1. Install Nix
  2. Setup direnv

cd into the root folder of the project to enter nix develop shell. Run direnv allow (only once). Then run pnpm or bun (experimental) commands as described above.

lume's People

Contributors

reyamir avatar sectore avatar smolgrrr avatar vivganes avatar xavierfiechter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

lume's Issues

Onboarding UI/UX review

As requested here on nostr this is a review of the onboarding.

The overall process is excellent, kudos.
It's great that if the app is closed during onboarding, the next time it starts again from the correct step.
I would also add a button on the footer at every step to cancel the procedure; this action should wipe all the saved data, with a confirmation dialog.

Login flow

image

The buttons are too close, adding a little space would improve accessibility and make the UI prettier.
The "Create new key" has low contrast, I would change the background to white or a color.
I would add somewhere a link/button to a resource that explains Nostr in depth.


image

I would be more descriptive with the texts: "Import your Nostr key" / "Insert your nostr private key, in nsec or hex format".
The user should be able to go back to the first screen (maybe in the next steps too).


image

If the user inserts a formally invalid key, the button label is wrongly set to "Creating.." and the spinner keeps running.
I would use a yellow/orange color for the error message, it is more visible.


image

It's very important in this context to explain the password use and point out that it is not related to the "nostr account". Good!
I would focus the input so the user could immediately type.
When the form is submitted, the button text changes to "Creating..", I would use "Securing your account...".


Here I would add (actually integrate, because you have something similar later) a really important step: try to fetch the account relays (NIP-95) and if none are found, optionally let the user insert one or more relays. This helps find the profile and improve the next steps.


image image

If you don't find any metadata information, I would show a warning: "I'm unable to find any information about this nostr account, please double-check the npub before continuing.".
If a metadata event is found, I would change the title to "Account found!" and I would show the picture / infos (add the bio, ln address, etc) bigger.


image

Add #nostrdesign ;)


image

Here I would show first the user relays fetched previously, then some suggestions: followed relays (like now), and if this selection is empty, a preset of 2/3 well-known relays. It would be nice to let him add new relays too.
I would avoid "Skip using Lume's default relays" without letting the user know what they are.
The user should not be able to go on without selecting at least 1 relay.
The informative note about the relay is perfect, the hover on the link should be a "pointer" (hand).


New account flow

image

This is a really important step for the newcomers, we need to keep things really clear and secure.
I would update the title in "This is your new Nostr account" and move the descriptive text below the title; the text should explain why there are two keys (strings) and which one should be saved and kept secret (the nsec of course), while the public one should be saved for convenience but is restorable from the private one. The user has to understand that the keypair does not work like the username/password paradigm, here we have just one private key that rules the account.
It is ok to hide the nsec, but this can create some confusion because the npub is more visibile and the messages (title and button) talk about a "key" without point out which one.
I would show the private key first, hidden but showing the start "nsec" string, with a light yellow background; on the top right of the input put a "Copy key" link.
Below let's show the public key.
Then put the "Download the key" button, white background to improve readability; the user should be able to choose the location.
Then add a checkbox: [ ] "I confirm I have saved my private key in a secure place".
If the user downloaded the key the checkbox is auto-checked.
Finally, put a simple "Continue" button.


For the password step, see the Login flow.


image

I would title this "Personalize your Nostr profile".
At the bottom I would add descriptive text explaining that the profile, including name, can be updated at any time.
The name input should have the focus.
Below the + sign in the banner area add something descriptive, ex: "Add a banner image".
I would size up the profile image (that is more important than the banner one).
Warning: the upload is not working for me.


image

In the descriptive text I would add that you can search for any contact later.
Add yourself in the first position with the highlight label "Lume developer"; you deserve it, and users are interested in following the developers related to the tools they use. Then also show my account, hahaha.


For the tags step, see the Login flow.


For the relays step, see the Login flow.


General UI/UX suggestions:

The fonts should be a little bigger to improve readability.
The buttons should be disabled (gray) until the form is filled;
When a button is locked with a spinner it should not have a hover effect;


๐Ÿงก Are you working on an open-source project that needs some design help? Want to improve the UX of your nostr app?
๐Ÿ’œ Post on nostr using #nostrdesign to summon help or reach out to [email protected]
๐Ÿงก https://opensats.org/blog/announcing-nostr-design

[LUME-34] Roadmap v1.1.0

New features

  • New default image block
  • Add hashtag block (newsfeed specfic note with hashtag)
  • Enhancement compose
  • Support long-form content (NIP-23)
  • Zap
  • Relay manegement
  • Redesign note component

Backlogs

  • Public channels
  • Shareable space
  • Backup user's spaces

From SyncLinear.com | LUME-34

App stops after few seconds

  • Generated new nsec without any signed events.
  • Logged in with nsec.
  • Set a password.
  • Skipped posting lume note.
  • Main screen loaded and after few seconds this happens:
Screenshot 2023-07-21 at 11 08 36

The app was installed from Lume_1.0.1_aarch64.dmg on M1 computer.

Unclear navigation for Settings Menu

It is unclear how to dismiss the Settings menu after clicking on the gear icon in the bottom tray. The Settings menu takes up the whole window and provides no "x" button or similar to close it.
image

Clicking on my profile picture at the bottom dismisses the Settings menu, but pressing the back arrow button will open the Settings menu again.
image

Expectation:
I would expect an "X" or "Close" button for the Settings menu, and for the back button to not consider the Settings menu as a navigation page.

App wont start. Lume 1.2.1

I downloaded lume_1.2.1_amd64.deb and installed on ubuntu 22.04. app crashes immediately.
there was a window that popped up once that asked if i wanted to send a report which i did but now it doesnt pop up anymore. there was some text that complained about a path.

Compose window does not scroll on long content

When creating long content, ex. a lot of text or some text plus a couple of images, the compose window is cut off and is not possible to navigate it or press the cancel / post buttons.

Screenshot 2023-07-06 alle 12 27 47

Stuck in white window on boot

Assuming it's trying to connect to the relays, though, nothing happens on starting Lume app.

Screenshot 2023-09-01 at 16 42 18

OS: macOS Ventura 13.4.1
Lume v1.2.1-beta

@tauri-apps module not working in local for M1 mac

Hi! Trying to get lume up and running locally, however my M1 is not so happy with one of the tauri modules. Something about openssl?

/Users/satoshi/lume/node_modules/@tauri-apps/cli/index.js:254
    throw loadError
    ^

Error: dlopen(/Users/satoshi/lume/node_modules/@tauri-apps/cli-darwin-x64/cli.darwin-x64.node, 0x0001): Library not loaded: '/usr/local/opt/openssl@3/lib/libssl.3.dylib'
  Referenced from: '/Users/satoshi/lume/node_modules/@tauri-apps/cli-darwin-x64/cli.darwin-x64.node'
  Reason: tried: '/usr/local/opt/openssl@3/lib/libssl.3.dylib' (no such file), '/usr/local/lib/libssl.3.dylib' (no such file), '/usr/lib/libssl.3.dylib' (no such file)
    at Module._extensions..node (node:internal/modules/cjs/loader:1338:18)
    at Module.load (node:internal/modules/cjs/loader:1117:32)
    at Module._load (node:internal/modules/cjs/loader:958:12)
    at Module.require (node:internal/modules/cjs/loader:1141:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/Users/chrispollard/lume/node_modules/@tauri-apps/cli/index.js:131:29)
    at Module._compile (node:internal/modules/cjs/loader:1254:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
    at Module.load (node:internal/modules/cjs/loader:1117:32)
    at Module._load (node:internal/modules/cjs/loader:958:12) {
  code: 'ERR_DLOPEN_FAILED'
}

Repost label gets hidden on trending posts

User story: As a lume user, I want to see what each action button on a post refers to. For example, I want to see clearly that the repost button is 'repost'.

Currently the repost button gets hidden behind images, or has a strange opacity where there is a text post just above.

Screen Shot 2023-08-07 at 8 43 40 am Screen Shot 2023-08-07 at 8 44 08 am

Collapsed/Expanded category states not restored when returning to feed view

Collapsing a category does not show a "collapsed" arrow state, and moving to the Settings menu, then back to the Feed view does not remember/restore the collapsed state of the categories on the left panel.

Collapsed "Chat" category:
image

Navigated to Settings, then back to main view:
image

Expectation:
I expect the collapsed sections to show their state more clearly and to save/restore those collapsed states between screens AND between app launches.

1.0.0 Black Screen, macOS

hi ren,

build on 13.3.1a macOS without any errors. First start, inserted nsec key from damus, I see for a brief second I see my stream but then a black overlay flickers in and stays.

using http://localhost:3000/app/auth/import/step-2 its loading after recognizing my account endless

can't get it away, fullscreen, screen resize, minimize / maximize โ€“ nothing. any idea?

Glitches in the profiles' message list

I'm encountering some problems when navigating the messages in a user profile page:

  • "Open thread" button does not work
  • Replies, repost, likes, zaps counter are always at zero

Lost test private key and can't reset

Hello,

I created a test private key to use with Lume, but I lost it. Deleting the App Image and re-downloading doesn't help. Where is the data stored and how can I delete/reset it?

Thanks!

Improve the compose experience with text + images

When adding one or more images they are forced at the bottom and the user can only add text above. Often it is useful to keep a proper order for text and images. The suggestion is to let the user to freely write above/below every image and also let him move (drag) the images around.

Another addition could be to let the user to visually reduce in the preview the image size from 100% width to 50%; this could be useful to make room to the text area, above all when dealing with vertical images.

[seek help] rust developer

I've an idea: Lume is a nostr client, but it can be a local nostr relay too. Imagine every Lume clients are running are also nostr relay
If you love that idea, join with me ๐Ÿ˜Ž

ubuntu deb failed to install

Installed .deb on ubuntu 22. it is giving:
lume: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

[IDEA] Distribution by flatpak

Hey, what do you think about distributing the linux version via flatpak? It's easier to debug, develop and more convenient to distribute. And for the user it's better because it's a universal format and easy to update.

Database Error on First Open

Hi,
Tried installing 1.2.4 and it stalled out with database errors. I'm attaching the screen shots.
Running MacOS 13.5.2 on Macbook Air M2

Screenshot 2023-09-12 at 6 13 49 PM Screenshot 2023-09-12 at 6 14 37 PM Screenshot 2023-09-12 at 6 15 08 PM

Lume advertisement with my account and crash (undefined is not an object (evaluating 'a.image'))

Lume on Linux (which crashes before I can do anything useful and doesn't work for any of two friends of mine) managed to send a post with my account:

Running Lume, fighting for better future, join us here: https://lume.nu/

If I remember correctly it didn't ask me.

After I enter my pw it more slowly than surely builds the UI and without any further interaction crashes:

image

I compiled it from git (HEAD (339783a) and v1.0.1)
Archlinux 6.4.1-arch2-1 x86_64

Window is transparent on Linux

Was there supposed to be blur here instead of transparency? Kinda hard to read stuff...

OS: Fedora 38
Lume v1.2.0-beta AppImage

Screenshot from 2023-08-27 12-17-05

Appimage not logging in.

I'm using Lume appimage in openSUSE Leap 15.5, and the app doesn't log in:

  • If I generate new keys, the app asks me for a local password, to config the profile, a name for the "lume.nu" ID, it asks me to select 10 plebs (blindly because I cannot see what I'm selecting; image 1), it asks me to send a message saying I'm using Lume, and then rolls infinitely showing an "interesting fact" (image 2).
  • If I use my pregenerated (with Lume) private key, the app asks me for a local password, it tells me about continuing with something I cannot see (image 3; maybe a Lume ID?) and, when I continue, it rolls infinitely saying "creating" (image 4).

In both above cases, if I close the app and reopen it, after asking me for the local password, it goes directly to the "interesting fact" screen and rolls infinitely again.

Screenshot_20230717_013149
Screenshot_20230717_013739
Screenshot_20230717_013314
Screenshot_20230717_013342

Onboarding Review

Hey hey! Here is my recording of the onboarding flow (I skipped the first 2 screens and probably should have added something there as well in hindsight):

https://cln.sh/HmGh0wT7

Happy to follow up with any questions you might have, or brainstorm further ideas.
Cheers!

Cannot resize window in macOS (x64)

The window is always the same size and the lower-left corner, nor any other window edge, supports dragging to resize the window. This makes navigating multiple content columns rather clunky. Tested on Intel macOS Ventura 13.2 (22D49).

Releases link is not working

Hello, I'm a linux user (Ubuntu 22.04) and the releases link from the main page is broken.

Also tried to find them here on the main repo but not available either.

It would be possible for me to install from the source code, but would of course prefer an "app experience" to just install and update like any other desktop tool.

Btw, when can lume be made available on the Ubuntu app store?

Many thanks, this looks like a fantastic nostr client!

Fullscreen and Zoom options do nothing on macOS

Related to #71, the View > Toggle Full Screen and Window > Zoom menu options do nothing on Intel macOS Ventura 13.2 (22D49). This is likely because the underlying app, built in Tauri/Rust or whatever doesn't fully support removing/disabling/supporting these menu items and features.

Expectation:
Unimplemented features and menu items should not be present in menus.

Unable to exit the preferences

Except using the back arrow on the top, or some shortcut (del, cmd + left arrow) is not possible to exit the preferences area.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.