lume/README.md

107 lines
3.4 KiB
Markdown
Raw Normal View History

2023-02-21 14:48:57 +00:00
<p align="center">
<a href="#">
</a>
<p align="center">
<img width="150" height="150" src="https://bafybeiascaupgzgxuoercns33vhxhq7c6oibhvxnzenvurgsjdyr4jp3la.ipfs.w3s.link/macos-512.png" alt="Logo">
</p>
<h1 align="center"><b>Lume</b></h1>
<p align="center">
An ambitious nostr client
<br />
<a href="https://uselume.xyz"><strong>uselume.xyz »</strong></a>
<br />
<b>Download for </b>
macOS
·
Windows
·
Linux
<br />
<i>~ Links will be added once a release is available. ~</i>
</p>
</p>
2023-03-28 03:48:17 +00:00
Lume is an open source cross-platform Nostr client, powered by (<a href="https://tauri.app" target="_blank">Tauri</a>) and web-tech.
2023-02-21 14:48:57 +00:00
<br/>
<br/>
2023-02-21 07:58:47 +00:00
2023-02-21 14:48:57 +00:00
> NOTE: Lume is under active development, most of the listed features are still experimental and subject to change.
2023-02-21 07:58:47 +00:00
2023-02-21 14:48:57 +00:00
Nostr is truly censorship-resistant protocol for social network and messenger app, combine with Bitcoin, they are powerful tools bring you to freedom. Lume is one of many great clients to help you interact with them, built with Tauri and Web-tech aiming for speed and efficiency
2023-02-21 07:58:47 +00:00
2023-02-21 14:48:57 +00:00
Lume is simple as it is, no more buzzwords
<p align="center">
2023-03-28 03:48:17 +00:00
<img src="https://void.cat/d/2oaFfzJsjnKNye6fHTpaq2" alt="App screenshot">
2023-02-21 14:48:57 +00:00
<br />
<br />
</p>
2023-02-24 11:02:40 +00:00
## How Nostr works?
2023-02-21 14:48:57 +00:00
Everybody runs a client. It can be a native client, a web client, etc. To publish something, you write a post, sign it with your key and send it to multiple relays (servers hosted by someone else, or yourself). To get updates from other people, you ask multiple relays if they know anything about these other people. Anyone can run a relay. A relay is very simple and dumb. It does nothing besides accepting posts from some people and forwarding to others. Relays don't have to be trusted. Signatures are verified on the client side. [Learn more](https://github.com/nostr-protocol/nostr)
2023-02-24 11:02:40 +00:00
## Motivation
2023-02-21 14:48:57 +00:00
When Nostr became popular, many clients exist but none of them satisfy me, so I built my own. I don't many experence in develop desktop app before, my background is just strongly in Ruby on Rails, this is also a good opportunity for me to improve my skills.
2023-02-24 11:02:40 +00:00
## Why desktop only?
2023-02-21 14:48:57 +00:00
Lume is "an ambitious nostr client", so I don't want to limit it be a part of your daily web browsing, I want it to be a part of your computer. With a desktop app, I can explore more potentials, and in my opinion, web is broken I don't want to focus on it anymore (I will share more about this opinion later)
2023-02-24 11:02:40 +00:00
## Features
2023-04-15 02:08:10 +00:00
**Current**: v0.2.5
2023-02-24 13:20:30 +00:00
2023-02-24 11:02:40 +00:00
- [x] create new key
- [x] import private key (hex/nsec)
- [x] followings newsfeed
- [x] handle note reaction
- [x] handle note repost
- [x] handle note have image/video
2023-03-28 03:48:17 +00:00
- [x] handle tags (#[x]) in note
- [x] handle reply note
2023-02-24 11:02:40 +00:00
- [x] publish a note (support markdown)
- [x] update profile
- [x] cache profile to local database
2023-03-05 02:40:42 +00:00
- [x] offline support
- [x] implement newsfeed infinite loading
2023-03-28 03:48:17 +00:00
- [x] personal profile page
- [x] windows & linux support
2023-02-24 11:02:40 +00:00
## Roadmap
2023-03-28 03:48:17 +00:00
View full roadmap for v0.3.0 [here](https://github.com/users/reyamir/projects/2)
2023-03-05 02:40:42 +00:00
## Running dev build
Prerequisites:
- Nodejs >= 18.0.0
- Install pnpm: [docs](https://pnpm.io/)
- Setup Tauri: [docs](https://tauri.app/v1/guides/getting-started/prerequisites)
Clone repo:
```
git clone https://github.com/reyamir/lume-desktop.git
```
Install dependencies
```
pnpm install
```
2023-04-07 07:31:14 +00:00
Generate prisma database
```
pnpm init-db
```
2023-03-05 02:40:42 +00:00
Run development window
```
pnpm tauri dev
```