131 Commits

Author SHA1 Message Date
davotoula fd02b47d9a docs(contributing): add automated tests and code review sections
Two additional gates on top of the AI-companion guide:

  - Automated tests for new logic — quartz/ and commons/ get unit
    tests; bug fixes get a regression test; UI-only stays exempt
    from automated UI tests but keeps the manual on-device test
    plan + screenshots. Pointer into CONTRIBUTING.md § Interop tests.
  - Code review pass before opening the PR — run a second-agent
    review with a different model or skill (/simplify, /kotlin-review,
    /security-review, /code-review), then re-run tests and manual
    test plan to catch fix-introduced regressions.

CONTRIBUTING.md pointer paragraph updated to enumerate the two new
gates.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 21:18:40 +02:00
Claude 8056eb899f docs(contributing): scope proof-of-testing to non-regular contributors 2026-05-11 14:23:37 +00:00
Claude cfa6899c65 docs: cross-link CONTRIBUTING.md from README and add PR template 2026-05-11 13:42:22 +00:00
nrobi144 c428661601 feat(release): expand desktop distribution to 8 assets + 2 package managers
Phases 3, 4, 5, 6 of the multi-platform distribution plan.

## create-release.yml rewrite
- Replace deprecated actions/create-release@v1 + upload-release-asset@v1 with
  softprops/action-gh-release@v2 (SHA-pinned)
- Expand build-desktop matrix: macos-13 (Intel), macos-14 (ARM),
  windows-latest, ubuntu-latest × 2 legs (deb+rpm, AppImage+tar.gz)
- Each matrix job uploads directly to release (no artifact round-trip — saves
  ~10 min + 1.5GB transfer per run)
- Inline portable archives: Windows .zip via 7z, Linux .tar.gz via tar
- linuxdeploy SHA-verified fetch for AppImage builds (not `continuous` tag)
- Per-asset size budget: hard fail at 1 GB per asset
- prerelease inferred from tag regex (-rc|-beta|-alpha|-dev|-snapshot)
- workflow_dispatch dry_run input: builds all assets without publishing,
  skips Android + bump workflows
- Tag-vs-libs.versions.toml assertion as first step in each matrix job
- Android + Quartz jobs preserved; migrated to softprops/action-gh-release@v2

## Package manager bump workflows (Homebrew + Winget)
- .github/workflows/bump-homebrew.yml — macauley/action-homebrew-bump-cask
  on ubuntu-latest (saves macOS runner quota). Cask name: `amethyst-nostr`.
- .github/workflows/bump-winget.yml — vedantmgoyal9/winget-releaser on
  windows-latest. PackageIdentifier: `VitorPamplona.Amethyst`.
- Shared composite action .github/actions/assert-stable-release rejects
  draft/prerelease/malformed-tag releases at action boundary (defense in
  depth vs workflow-level `if:` alone).
- Both workflows auto-open `release-ops`-labeled GH Issues on failure.
- Concurrency groups per tag prevent re-fire races.
- AUR + Scoop deferred to follow-up PR (unresolved ownership questions).

## Documentation
- BUILDING.md: per-platform build commands, asset naming contract, release
  runbook, bootstrap runbook, troubleshooting, uninstall paths, incident
  response, fallback plans (macos-13 retirement, Homebrew Sept 2026 deadline)
- README: expanded Download section with per-OS install matrix for 7 formats
  + 2 package managers. Deploying section points at BUILDING.md.

## Supply chain
- .github/dependabot.yml: monthly bumps for github-actions ecosystem
- All new third-party actions SHA-pinned:
  - softprops/action-gh-release v2.6.2
  - macauley/action-homebrew-bump-cask v4.0.0
  - vedantmgoyal9/winget-releaser v2
  - nick-fields/retry v3.0.2
- linuxdeploy binary SHA256-verified against pinned release tag
2026-04-16 14:54:51 +03:00
Claude fe9f2e71a0 feat: update NIP support list to reflect current implementation status
Cross-referenced the official NIP list from nostr-protocol/nips with
quartz package implementations. All NIPs are now supported except NIP-EE
(MLS Protocol). Added NIP-22, NIP-5A, NIP-B0. Removed merged NIPs
(NIP-12, NIP-16, NIP-20). Updated names to match official titles.

https://claude.ai/code/session_01TyGpa2VEryZ9aqmZvmE4v1
2026-03-30 02:47:10 +00:00
Claude aa15085f40 feat: implement NIP-32 Labeling protocol in quartz
Add kind 1985 LabelEvent with L (namespace) and l (label) tag support
for distributed moderation, content classification, and license assignment.
Includes tag parsers, builder extensions, self-reporting helpers, and tests.

https://claude.ai/code/session_011t5ZoP1BdgZTT5Cen9GH5z
2026-03-28 03:57:46 +00:00
KotlinGeekDev ac60cbeb02 Update Quartz feature parity table. 2026-03-25 12:42:41 +01:00
David Kaspar 00fb924dbb Update README with build instructions and requirements
Added instructions for full build and requirements.
2026-03-15 11:50:24 +00:00
Vitor Pamplona 5437ee98b4 updates readme 2026-03-11 12:29:00 -04:00
Vitor Pamplona fa4180e4ac Updates readme with the current list of supported NIPs 2026-02-17 19:19:29 -05:00
Vitor Pamplona bb01918120 v1.05.0 2026-01-08 16:21:30 -05:00
Vitor Pamplona 6054c5700d Merge pull request #1625 from nrobi144/feat/desktop-multiplatform
Create desktopApp module
2025-12-29 10:41:58 -05:00
nrobi144 e407e03e90 update readme 2025-12-28 07:21:36 +02:00
Dumitru 71d9f25557 Quartz Feature Parity Table on Multiplatform 2025-12-27 20:41:17 +01:00
Vitor Pamplona 0abc631773 - Removes compose bom from Quartz to avoid unnecessary dependencies.
- Removes old datetime dependencies from Quartz
- Moves compose.runtime dependencies to compose.runtime.annotation
- Adds dependency on coroutines directly (instead of through compose runtime)
- Removes old secp256 target dependencies
- Adds Default scope for NostrClient and Relay Authenticator
- Updates readme
2025-12-04 14:41:33 -05:00
Vitor Pamplona 03633c70ca Adds link to quartz versions in the readme 2025-12-03 15:24:32 -05:00
David Kaspar eb4f0b9af9 Update README to mark video capture as complete 2025-11-01 18:20:58 +00:00
Vitor Pamplona 895562b4a9 Simplifies readme 2025-10-29 18:28:38 -04:00
Vitor Pamplona b8511b5ac3 Adds simplified methods to create Requests from NostrClient 2025-10-29 16:51:49 -04:00
Vitor Pamplona 1c82417a0a Updating the documentation on the use of Quartz 2025-10-02 15:53:10 -04:00
Vitor Pamplona 26005a062d Updates Quartz instructions to Maven 2025-09-29 13:23:57 -04:00
Vitor Pamplona ce81157dad Adds a maven publishing to ship quartz 2025-09-23 15:16:26 -04:00
Vitor Pamplona 442f75fc41 - Migrates Quartz to a KMP project
- Converts OpenTimestamps from java to Kotlin
- Moves OTS OkHttp setup to Quartz
2025-08-27 17:32:39 -04:00
Vitor Pamplona e867571ea6 Improves version finder 2025-08-15 14:39:53 -04:00
Vitor Pamplona f4759c283e Adds a basic OkHttp builder to Quartz (new dependency :( )
Adds some instructions to the basic readme.md
2025-08-15 14:33:05 -04:00
Vitor Pamplona 936b17f54a Merge remote-tracking branch 'origin/HEAD' into full-outbox
# Conflicts:
#	ammolite/src/main/java/com/vitorpamplona/ammolite/relays/NostrClient.kt
#	gradle/libs.versions.toml
2025-07-02 08:23:54 -04:00
Vitor Pamplona 0cfcfaf899 3rd large migration to outbox. 2025-07-01 20:38:18 -04:00
alltheseas 2889c5dae5 Update README.md with deepwiki link
added link to amethyst deepwiki
2025-06-09 17:13:35 -05:00
David Kaspar 0bb8349a46 Update README.md
Long form content view only
2025-05-16 21:33:05 +02:00
David Kaspar 61970b8ce5 Update README.md
Split video and image capture from phone. Ticket image capture
2025-05-14 17:17:27 +01:00
David Kaspar 7ad47bb137 Update README.md
remove fdroid from readme
2025-03-25 21:55:12 +00:00
Vitor Pamplona 39c9b75bf4 Moves zapstore to local image and first in the list 2024-11-04 10:15:31 -05:00
ilcompratoreconsapevole 00be9fc595 Rewritten connection link to ZapStore's banner image to ensure reliable connection to specific repo 2024-11-03 21:38:01 +01:00
ilcompratoreconsapevole d7888096e9 Added ZapStore's SVG banner that says "Get it on" linking to its repository. 2024-11-03 12:50:46 +01:00
Vitor Pamplona a3b0436d91 Uses NIP-78 to start syncing some data between instances of Amethyst 2024-10-22 14:52:11 -04:00
Vitor Pamplona 4609d6e343 changes app directory to amethyst 2024-06-24 14:13:55 -04:00
Vitor Pamplona 224bcf97ec Merge branch 'main' of https://github.com/vitorpamplona/amethyst 2024-05-24 14:54:48 -04:00
Vitor Pamplona c5f7ea801d Update README.md
Adding the most recent feature sets
2024-05-22 14:54:21 -04:00
Vitor Pamplona 1f45a63081 Makes NIP-17 the default messaging mode
Migrates code from old NIP-24 to NIP-17
2024-05-14 11:34:36 -04:00
Vitor Pamplona 9081d5a54b Adds nostr git for issue management software. 2024-03-04 14:13:23 -05:00
Vitor Pamplona 779ce110ba Adding the most recent release features to the Readme. 2024-03-04 11:26:22 -05:00
Vitor Pamplona ca4cc93b31 Fix Quartz use 2024-02-24 09:15:41 -05:00
Vitor Pamplona 3eac579638 Fixing Format 2024-02-23 14:29:14 -05:00
Vitor Pamplona d606cef90e Adds Jitpack instructions for Quartz 2024-02-23 14:27:20 -05:00
Vitor Pamplona d715ea44df Typo 2024-02-17 12:39:48 -05:00
Vitor Pamplona 7af2fcdb27 Adds playstore badge 2024-02-17 11:51:42 -05:00
Vitor Pamplona 879f7cf8e3 Smaller download badges 2024-02-17 11:29:18 -05:00
Vitor Pamplona 88033c2acd Update README.md 2024-02-17 11:16:45 -05:00
Vitor Pamplona e7fc5545ba Update README.md 2024-02-17 11:15:19 -05:00
Vitor Pamplona e7240c0acf Using an SVG as readme logo 2024-02-17 11:09:40 -05:00