Commit Graph
84 Commits
Author SHA1 Message Date
Wilson Silva 53069a3d0c Update bip-schnorr, puma, rake, rubocop and rubocop-rspec 2023-11-20 10:32:27 +07:00
Wilson Silva 3520cf8219 Implement NIP-19 bech32-encoded private and public keys
https://github.com/nostr-protocol/nips/blob/master/19.md
2023-11-20 09:59:27 +07:00
Wilson Silva 3fffcd1a4e Use keyword arguments for User#create_event
This allows for code completion and fixes another RBS issue
2023-11-18 18:06:53 +07:00
Wilson Silva 2c44ae4ee8 Fix the RBS types of Nostr::Filter e, p and to_f 2023-11-18 17:22:20 +07:00
Wilson Silva 4b630c678b Ensure that Nostr::Crypto#descrypt_text always returns a string
Fixes another Steep/RBS violation
2023-11-18 16:38:03 +07:00
Wilson Silva 3077aa67a7 Fix the RBS type of Nostr::Crypto::BN_BASE 2023-11-18 16:28:31 +07:00
Wilson Silva 2584967654 Update rbs to v3.3 and steep to v1.6 2023-11-18 15:42:09 +07:00
Wilson Silva b54147cfce Remove unnecessary blank space 2023-11-14 16:58:14 +07:00
Wilson Silva 0f9c0d3a3d Add relay message type enums 2023-11-14 16:57:33 +07:00
Wilson Silva 904fe46a9d Name the implemented NIPs 2023-11-14 16:53:38 +07:00
Wilson Silva 80c272f149 Fix the formatting of encrypted direct message 2023-11-14 16:28:16 +07:00
Wilson Silva be4c3e0e32 Update the documentation of the subscription id
Match the changes introduced in  https://github.com/nostr-protocol/nips/pull/299
2023-11-14 16:12:33 +07:00
Wilson Silva 30eafa1203 Remove id/pubkey prefix documentation
Removed from the protocol in https://github.com/nostr-protocol/nips/pull/703
2023-11-14 16:12:32 +07:00
Wilson Silva 4f13b22e51 Update Ruby to version 3.2.2 2023-11-14 07:54:56 +07:00
Wilson Silva 6d9758a37a Fix the subscription documentation 2023-11-14 07:45:39 +07:00
Wilson Silva 4d8803d769 Update bec32 2023-11-13 21:32:11 +07:00
Wilson Silva e9deab2fc2 Link the changelog with the homepage 2023-11-13 18:09:51 +07:00
Wilson Silva 35c7e6a76e Ignore my local copy of the nostr nips folder 2023-11-13 18:09:03 +07:00
Wilson Silva 8e1e3092c3 Update the changelog format version 2023-11-13 18:01:17 +07:00
Wilson Silva eaa97e0018 Update the changelog 2023-11-13 17:58:04 +07:00
Wilson Silva 1fb7e454ae Update the gem's homepage 2023-11-13 17:55:36 +07:00
Wilson Silva 82aacb70e7 Use my own domain instead of Vercel's 2023-11-13 17:55:25 +07:00
Wilson Silva d49fac49b6 Add high-level documentation
https://nostr-ruby.com
2023-11-13 17:48:17 +07:00
Wilson Silva b206f6504e Update vitepress and install mermaid diagram plugin 2023-11-13 17:43:42 +07:00
Wilson Silva 6d81d07f8a Use bun 2023-11-13 17:43:41 +07:00
Wilson Silva 3fbc523b18 Document how to develop the documentation 2023-11-13 17:43:41 +07:00
Wilson Silva c27de6d506 Update Puma to version 6.3
Fixes the error "Puma 5 is not compatible with Rack 3, please upgrade to Puma 6 or higher."
2023-09-16 16:13:42 +07:00
Wilson Silva 1865858230 Add the VitePress documentation scaffold 2023-09-16 15:32:53 +07:00
Wilson Silva e2b650fb84 Fix the documentation on how to publish an event
I wish there were unit tests for documentation
2023-02-26 12:40:09 +07:00
Wilson Silva a4e836d6f5 Add a changelog anchor for version 0.4.0 2023-02-25 17:50:33 +07:00
Wilson Silva 378970b6ab Bump the gem version to v0.4.0 2023-02-25 17:43:51 +07:00
Wilson Silva 0b66dc3625 Update the Implemented NIPs list 2023-02-25 17:43:10 +07:00
Wilson Silva 8e26191655 Update the changelog 2023-02-25 17:38:01 +07:00
Wilson Silva 857bf0ce8e Implement NIP-04: Encrypted Direct Messages 2023-02-25 17:38:00 +07:00
Wilson Silva 0df4dbb979 Add convenience methods to append event and pubkey references 2023-02-25 17:38:00 +07:00
Wilson Silva 4c9c35520d Add a missing spec for EventKind::CONTACT_LIST 2023-02-25 17:37:59 +07:00
Wilson Silva 2fc56a2b1a Fix the RBS signature of User#create_event 2023-02-25 17:37:58 +07:00
Wilson Silva 79567fcf22 Extract event signing into its own class 2023-02-25 17:37:58 +07:00
Wilson Silva 97037e6e30 Merge EventFragment into Event
Treating Event as a Value Object in the strictest sense requires additional abstractions and internal complexity that the gem could do without, at least for now.
2023-02-25 17:37:57 +07:00
Wilson Silva 0e8b38bf6e Fix pubkey generation adding leading 0s when < 64 bytes 2023-02-25 17:37:57 +07:00
Wilson SilvaandGitHub 4828272bd5 Merge pull request #6 from narch/main
fix method name in README
2023-02-21 17:51:01 +07:00
Wilson Silva a5ef0bb880 Update the changelog 2023-02-15 19:42:23 +07:00
Wilson Silva 30d71395cf Add a table of contents 2023-02-15 18:47:19 +07:00
Wilson Silva abc3be3f85 Bump the gem version to v0.3.0 2023-02-15 18:33:25 +07:00
Wilson Silva e56058a0e1 Update the changelog 2023-02-15 18:33:24 +07:00
Wilson Silva 19f07efdeb Add client support for NIP-02 (manage contact lists) 2023-02-15 18:33:24 +07:00
Wilson Silva e6e4f576e3 Format the code example regarding relay connections 2023-02-15 18:33:23 +07:00
Wilson Silva 1a884ea7b7 Fix a typo and the documentation for the received socket messages 2023-02-15 18:33:22 +07:00
Wilson Silva 8f6a7547f5 Add initial RBS support with Steep and TypeProf 2023-01-22 17:42:59 +07:00
Wilson Silva 59e058d511 Update the rake task list 2023-01-21 20:43:48 +07:00
Wilson Silva e0f7a4cc50 Bump the gem version to v0.2.0 2023-01-12 17:21:18 +07:00
Wilson Silva 0017b4e591 Update the changelog 2023-01-12 17:21:18 +07:00
Wilson Silva 5b1786ddec Add NIP-01 compliant client code 2023-01-12 17:21:17 +07:00
Wilson Silva e344ebda82 Remove the unused Error class 2023-01-10 15:51:37 +07:00
Wilson Silva 32ee858365 Add and configure dotenv 2023-01-08 15:33:49 +07:00
Wilson Silva 3340866c1f Remove the documentation badge
Inch-CI is down
2023-01-06 12:43:42 +07:00
Wilson Silva 766523bf4d Setup CodeClimate's quality reporting 2023-01-06 12:41:31 +07:00
Wilson Silva a24e2368cb Add a test for the gem's version 2023-01-06 12:15:04 +07:00
Wilson Silva 8f0ebc739b Report code coverage to the console and to HTML files 2023-01-06 12:14:44 +07:00
Wilson Silva cfa1eecb23 Fix the local code coverage reporting 2023-01-06 12:13:26 +07:00
Wilson Silva cc62c9f226 Rename the master branch references to main 2023-01-06 11:42:02 +07:00
Wilson Silva 9a14515efe Remove Hakiri badge because the service was killed a year ago 2023-01-06 11:34:47 +07:00
Wilson Silva ecdf104363 Update the changelog 2023-01-06 11:23:49 +07:00
Wilson Silva ab3e815041 Add the version, security and documentation badges 2023-01-06 11:22:47 +07:00
Wilson Silva f0be5e80a4 Document the gem 2023-01-06 11:19:39 +07:00
Wilson Silva 8a1b02fe54 Document the codebase maintainability Rake tasks 2023-01-06 11:18:03 +07:00
Wilson Silva 0af2766543 Add a Rake task to assure the quality of the codebase 2023-01-06 11:16:27 +07:00
Wilson Silva 37f982b23d Fix yard:junk violations 2023-01-06 11:15:40 +07:00
Wilson Silva 08236c4194 Add yard, yardstick and yard-junk to document the gem 2023-01-06 11:15:17 +07:00
Wilson Silva 89a23a69e2 Setup code coverage with simplecov 2023-01-06 11:10:20 +07:00
Wilson Silva 80b07ccf4c Replace IRB with Pry 2023-01-06 11:10:20 +07:00
Wilson Silva dd61fae427 Add Guard with bundler, rspec and rubocop plugins 2023-01-06 11:10:19 +07:00
Wilson Silva ff121d1522 Add bundler-audit to keep the gem secure 2023-01-06 11:10:18 +07:00
Wilson Silva 836e54f9d8 Add Overcommit to prevent committing substandard code 2023-01-06 11:10:18 +07:00
Wilson Silva edc2269ff7 Add rubocop-rake 2023-01-06 11:10:17 +07:00
Wilson Silva 3c228703a9 Fix RuboCop violations 2023-01-06 11:10:17 +07:00
Wilson Silva 9d0bbab478 Document the main module 2023-01-06 11:10:16 +07:00
Wilson Silva b8d663ca00 Add and configure rubocop and rubocop-rspec 2023-01-06 10:51:06 +07:00
Wilson Silva e3ef933b4f Remove dummy spec 2023-01-06 10:22:00 +07:00
Wilson Silva 4780072dea Set the required Ruby version to 3.2.0
I'll relax this later
2023-01-06 10:18:27 +07:00
Wilson Silva 64b33b4869 Move the Gemfile dependencies to the gemspec 2023-01-06 10:17:33 +07:00
Wilson Silva 829b751cf0 Enforce consistent coding styles across different IDEs 2023-01-06 10:12:31 +07:00
Wilson Silva b3306b7a9e Set the gem's summary, description, homepage and changelog uri 2023-01-06 10:11:47 +07:00
Wilson Silva 7fded5bb7f Initial commit 2023-01-06 10:00:47 +07:00