create account

GNS: Keychain Login, New Notifications and User Preferences by freebeings

View this thread on: hive.blogpeakd.comecency.com
· @freebeings ·
$14.33
GNS: Keychain Login, New Notifications and User Preferences
![GNS-Update.png](https://files.peakd.com/file/peakd-hive/freebeings/23xKnG9xEyjiHZ8RTUrcggvcKV4DrsVCkaMfx3FCMAhYNXaaBCVsUthEsvKp5n286FhrB.png)

@imwatsi shares an update on the development of the Global Notification System (GNS).

**GitHub:** [https://github.com/FreeBeings-io/hive-gns](https://github.com/FreeBeings-io/hive-gns)

**Preview:** [https://preview.gns.freebeings.io](https://preview.gns.freebeings.io/)

**API:** [https://gns.freebeings.io/docs](https://gns.freebeings.io/docs)

---

# Keychain on Preview Site

You can now login to the GNS preview site using Hive Keychain and see notifications for your account. The preview site showcases what notifications on GNS would look like. Access the preview site here: [https://preview.gns.freebeings.io](https://preview.gns.freebeings.io/)

  

**Screenshot:**

  

![](https://lh5.googleusercontent.com/YWs2RIClPzkdr0xaWGKHuO3LSRos3pVoQRfka80sv7s2wBh3Yu8bmDbH--uL4hhc5bW2-x4BU__cFY5es4kil60JdRZPz2A8lBWfjoB2Rt4iTHu5Ec12KsjiLmLONYmhBcLuD1yZU7wsxvHRKkEgR_U)

  

# Code Refactoring

Significant refactoring was done to support the expanding notification types now supported. This included redefining the modules in which notifications are categorized, new `hook.json` formats and JSON Path filtering as a base for supporting fine-grained user preferences.

  

# Performance Improvements

The sync script has been updated to a faster version. The previous version processed data from blocks on a per-module basis, which resulted in operations being processed more than once by different notification functions. Now it processes each operation within a block and triggers notification hooks across all GNS modules that are dependent on that operation type.

# New Notifications Supported

The following notifications were added to GNS:

-   Social
-   Mentions
-   Currency
-   Author rewards
-   Curation rewards
-   Comment benefactor rewards
-   Fill convert request

# User Preferences

Users can now choose which notifications to receive as well as setup options for each notification, if available. New documentation has been added to the repository for developers:

-   [User preferences](https://github.com/FreeBeings-io/hive-gns/blob/main/docs/preferences/user_preferences.md): updating user preferences (global)
    
-   [Notification Options](https://github.com/FreeBeings-io/hive-gns/blob/main/docs/preferences/notification_options.md): an overview of how to update options for individual notification types

-   [Currency Options](https://github.com/FreeBeings-io/hive-gns/blob/main/docs/preferences/currency_options.md): options for notifications in the `currency` module

# Auto-populate app_data from Database

The `app_data` payload in the system status response is now populated directly from the database, using the available modules and notifications as loaded from `hook.json` files.

This means: as new notifications are added, they are automatically included in the API response, after they pass checks and DB verification.

# What’s Next

-   User preferences on frontend preview site
-   Continue adding support for more notifications
-   Add user options for more notification types

---

*by @imwatsi - Co-Founder | CEO | Blockchain Developer*

---
---

# Vote for our witness

**Witness Name:** @imwatsi 



![Witness-2.png](https://files.peakd.com/file/peakd-hive/freebeings/23ymjvHFNGbUr1EPaiJs7t1kiQsF1ugf2bvt77cewpnA5C6rH5MiKir7jYmLVR5syDK1z.png)


---

**We're glad to be building on Hive.**
*Follow the @freebeings account for more updates.*
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 146 others
properties (23)
authorfreebeings
permlinkgns-keychain-login-new-notifications-and-user-preferences
categoryhive-139531
json_metadata{"app":"peakd/2023.3.4","format":"markdown","tags":["gns","freebeings-io","hive"],"users":["imwatsi","freebeings"],"image":["https://files.peakd.com/file/peakd-hive/freebeings/23xKnG9xEyjiHZ8RTUrcggvcKV4DrsVCkaMfx3FCMAhYNXaaBCVsUthEsvKp5n286FhrB.png","https://lh5.googleusercontent.com/YWs2RIClPzkdr0xaWGKHuO3LSRos3pVoQRfka80sv7s2wBh3Yu8bmDbH--uL4hhc5bW2-x4BU__cFY5es4kil60JdRZPz2A8lBWfjoB2Rt4iTHu5Ec12KsjiLmLONYmhBcLuD1yZU7wsxvHRKkEgR_U","https://files.peakd.com/file/peakd-hive/freebeings/23ymjvHFNGbUr1EPaiJs7t1kiQsF1ugf2bvt77cewpnA5C6rH5MiKir7jYmLVR5syDK1z.png"]}
created2023-03-30 12:59:51
last_update2023-03-30 12:59:51
depth0
children3
last_payout2023-04-06 12:59:51
cashout_time1969-12-31 23:59:59
total_payout_value7.190 HBD
curator_payout_value7.144 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length3,534
author_reputation44,090,054,815,462
root_title"GNS: Keychain Login, New Notifications and User Preferences"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id122,108,912
net_rshares26,162,323,739,204
author_curate_reward""
vote details (210)
@hivebuzz ·
Congratulations @freebeings! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

<table><tr><td><img src="https://images.hive.blog/60x70/http://hivebuzz.me/@freebeings/upvoted.png?202303301344"></td><td>You received more than 1750 upvotes.<br>Your next target is to reach 2000 upvotes.</td></tr>
</table>

<sub>_You can view your badges on [your board](https://hivebuzz.me/@freebeings) and compare yourself to others in the [Ranking](https://hivebuzz.me/ranking)_</sub>
<sub>_If you no longer want to receive notifications, reply to this comment with the word_ `STOP`</sub>



**Check out our last posts:**
<table><tr><td><a href="/hive-122221/@hivebuzz/pud-202304"><img src="https://images.hive.blog/64x128/https://i.imgur.com/805FIIt.jpg"></a></td><td><a href="/hive-122221/@hivebuzz/pud-202304">Hive Power Up Day - April 1st 2023</a></td></tr><tr><td><a href="/hivebuzz/@hivebuzz/birthday-7"><img src="https://images.hive.blog/64x128/https://i.imgur.com/OaAR9Cj.png"></a></td><td><a href="/hivebuzz/@hivebuzz/birthday-7">Happy Birthday to the Hive Community</a></td></tr><tr><td><a href="/hive-139531/@hivebuzz/proposal-2324"><img src="https://images.hive.blog/64x128/https://i.imgur.com/RNIZ1N6.png"></a></td><td><a href="/hive-139531/@hivebuzz/proposal-2324">The Hive Gamification Proposal</a></td></tr></table>

###### Support the HiveBuzz project. [Vote](https://hivesigner.com/sign/update_proposal_votes?proposal_ids=%5B%22248%22%5D&approve=true) for [our proposal](https://peakd.com/me/proposals/248)!
properties (22)
authorhivebuzz
permlinknotify-freebeings-20230330t141257
categoryhive-139531
json_metadata{"image":["http://hivebuzz.me/notify.t6.png"]}
created2023-03-30 14:12:57
last_update2023-03-30 14:12:57
depth1
children0
last_payout2023-04-06 14:12:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,568
author_reputation367,875,604,025,714
root_title"GNS: Keychain Login, New Notifications and User Preferences"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id122,110,454
net_rshares0
@pizzabot · (edited)
RE: GNS: Keychain Login, New Notifications and User Preferences
<center>PIZZA!
 The Hive.Pizza team manually curated this post.

<sub>Learn more at https://hive.pizza.</sub></center>
properties (22)
authorpizzabot
permlinkre-gns-keychain-login-new-notifications-and-user-preferences-20230331t011100z
categoryhive-139531
json_metadata"{"app": "pizzabot"}"
created2023-03-31 01:11:00
last_update2023-04-09 19:07:06
depth1
children0
last_payout2023-04-07 01:11:00
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length118
author_reputation6,160,190,920,737
root_title"GNS: Keychain Login, New Notifications and User Preferences"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id122,126,693
net_rshares0
@poshtoken ·
https://twitter.com/1542784423367741441/status/1647198350142238723
<sub> The rewards earned on this comment will go directly to the people sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.</sub>
properties (22)
authorposhtoken
permlinkre-freebeings-gns-keychain-login-new-notifications-and-user-pref-118314299
categoryhive-139531
json_metadata"{"app":"Poshtoken 0.0.1","payoutToUser":[]}"
created2023-04-15 11:21:24
last_update2023-04-15 11:21:24
depth1
children0
last_payout2023-04-22 11:21:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length254
author_reputation3,941,589,776,176,216
root_title"GNS: Keychain Login, New Notifications and User Preferences"
beneficiaries
0.
accountnomnomnomnom
weight10,000
max_accepted_payout1,000,000.000 HBD
percent_hbd0
post_id122,563,074
net_rshares0