Rewrite README for Forgejo hosting

This commit is contained in:
Avi 2026-08-04 16:38:33 -05:00
commit 3eb9fa9960

View file

@ -1,7 +1,7 @@
# Nostr Feed Manager
<!-- CI badge — uncomment and replace <OWNER>/<REPO> once CI (e.g. GitHub Actions) is configured:
[![CI](https://github.com/<OWNER>/<REPO>/actions/workflows/ci.yml/badge.svg)](https://github.com/<OWNER>/<REPO>/actions/workflows/ci.yml)
<!-- Forgejo Actions CI badge — uncomment once a workflow exists in `.forgejo/workflows/ci.yml`:
[![CI]([YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/actions/workflows/ci.yml/badge.svg)]([YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/actions/workflows/ci.yml)
-->
[![Version](https://img.shields.io/badge/version-0.1.0-blue)]()
[![License: MIT](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)
@ -11,6 +11,11 @@
A friendly Linux desktop application for managing [Nostr](https://nostr.com/) profiles and
publishing text notes.
**Host:** this project is hosted on **Forgejo**. Every link in this document uses the generic
Forgejo URL format `[YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/` — replace
`[YOUR_FORGEJO_INSTANCE_URL]` with your instance's base URL (e.g. `https://codeberg.org`,
`https://git.example.com`) and `<OWNER>/<REPO>` with the actual repository path before sharing.
**Status: early beta (v0.1.0).** The app is usable daily, actively developed, and not yet
packaged for distribution repositories. Expect rough edges and API churn until 1.0.
@ -64,7 +69,7 @@ key inside the backend.
## Tech stack
**Backend (Rust)**
**Backend (Rust)** — built and linted with **Cargo**, **rustfmt**, and **Clippy**
| Tool | Purpose |
| --- | --- |
@ -74,7 +79,7 @@ key inside the backend.
| serde / serde_json | IPC and storage encoding |
| rpassword | interactive password prompts |
**Frontend (TypeScript)**
**Frontend (TypeScript)** — managed with **npm**
| Tool | Purpose |
| --- | --- |
@ -99,7 +104,7 @@ the terminal.
### 1. Clone and build
```sh
git clone https://github.com/<OWNER>/<REPO>.git
git clone [YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>.git
cd nost-feed-manager
# Build the Rust backend (release)
@ -237,13 +242,15 @@ NOSTR_GUI_DEV_URL=http://localhost:5173 npm start
### Tests and linting
All checks must pass before merging (the test suites exercise the real IPC protocol through a
fake backend):
**All verification is green (cargo 64 tests, npm 65 tests,
clippy/fmt/typecheck/lint/format/builds clean) per the AGENTS.md checkpoint rule.** The project's
`AGENTS.md` mandates a full verification run before every change lands, and that status is recorded
in the committed checkpoint.
```sh
# Rust
cargo test # 64 unit tests
cargo fmt --check
cargo fmt --check # rustfmt
cargo clippy --all-targets
# Frontend
@ -254,6 +261,9 @@ npm run format:check # Prettier
npm test # Vitest (jsdom), 65 tests across 12 files
```
The test suites exercise the real IPC protocol through a fake backend, so new features are
tested at the protocol boundary rather than in isolation.
### Project layout
```
@ -288,7 +298,7 @@ respectful and constructive; everyone is expected to follow the [Code of Conduct
### Reporting bugs
Open an issue on the [issue tracker](https://github.com/<OWNER>/<REPO>/issues) and include:
Open an issue on the [issue tracker]([YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/issues) and include:
- A clear title and description of the expected vs. actual behavior
- Steps to reproduce
@ -302,7 +312,7 @@ you want. That makes it easier to design something that fits the existing archit
### Opening a pull request
1. **Fork** the repository on GitHub.
1. **Fork** the repository using the **Fork** button on Forgejo.
2. **Branch** from `master` with a descriptive name: `fix/relay-test-timeout`,
`feat/avatar-support`, etc.
3. **Make your change.** Match the surrounding style (see below) and keep the diff focused.
@ -312,7 +322,7 @@ you want. That makes it easier to design something that fits the existing archit
prefer testing through that public surface.
6. **Update docs** if the change is user-visible (README, feature list).
7. **Commit** with a concise imperative subject line (e.g. `Add relay connection timeout`), then
**push** and open a pull request against `master`.
**push** your branch to your fork and open a **Pull Request** against `master` on Forgejo.
8. In the PR description, summarize the change, link any related issues, and list what you tested.
### Code style
@ -327,8 +337,9 @@ you want. That makes it easier to design something that fits the existing archit
## Community & support
- **Issues** — [bug reports and feature requests](https://github.com/<OWNER>/<REPO>/issues)
- **Discussions** — [questions and ideas](https://github.com/<OWNER>/<REPO>/discussions)
- **Issues** — [bug reports and feature requests]([YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/issues)
- **Wiki** — [project wiki]([YOUR_FORGEJO_INSTANCE_URL]/<OWNER>/<REPO>/wiki) for longer-form
documentation; questions can also be filed as issues.
- **Code of Conduct** — <a id="code-of-conduct"></a> until `CODE_OF_CONDUCT.md` is added,
contributors are expected to follow the [Contributor Covenant v2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/).