<rss
      xmlns:atom="http://www.w3.org/2005/Atom"
      xmlns:media="http://search.yahoo.com/mrss/"
      xmlns:content="http://purl.org/rss/1.0/modules/content/"
      xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
      xmlns:dc="http://purl.org/dc/elements/1.1/"
      version="2.0"
    >
      <channel>
        <title><![CDATA[Sebastix]]></title>
        <description><![CDATA[Building and maintaining the FOSS nostr-php library supported by OpenSats https://github.com/nostrver-se/nostr-php | Follow my contributions on https://nostrver.se | Creative / fullstack webdeveloper from 🇳🇱 | #PHP #Drupal #Javascript #Vuejs #InteractionDesign | Really cares about #FOSS #Privacy #Selfhosting #DigitalWellbeing | Hobbies #Cycling #HondaCivic #Circuit]]></description>
        <link>https://sebastix.npub.pro/tag/nostr/</link>
        <atom:link href="https://sebastix.npub.pro/tag/nostr/rss/" rel="self" type="application/rss+xml"/>
        <itunes:new-feed-url>https://sebastix.npub.pro/tag/nostr/rss/</itunes:new-feed-url>
        <itunes:author><![CDATA[Sebastix]]></itunes:author>
        <itunes:subtitle><![CDATA[Building and maintaining the FOSS nostr-php library supported by OpenSats https://github.com/nostrver-se/nostr-php | Follow my contributions on https://nostrver.se | Creative / fullstack webdeveloper from 🇳🇱 | #PHP #Drupal #Javascript #Vuejs #InteractionDesign | Really cares about #FOSS #Privacy #Selfhosting #DigitalWellbeing | Hobbies #Cycling #HondaCivic #Circuit]]></itunes:subtitle>
        <itunes:type>episodic</itunes:type>
        <itunes:owner>
          <itunes:name><![CDATA[Sebastix]]></itunes:name>
          <itunes:email><![CDATA[Sebastix]]></itunes:email>
        </itunes:owner>
            
      <pubDate>Thu, 11 Sep 2025 19:10:50 GMT</pubDate>
      <lastBuildDate>Thu, 11 Sep 2025 19:10:50 GMT</lastBuildDate>
      
      <itunes:image href="https://nostr.build/i/33d5d33cd958fa7b6c7c573fffee190c2bc479c4e7d202ee30661d75f2cf7c5a.jpg" />
      <image>
        <title><![CDATA[Sebastix]]></title>
        <link>https://sebastix.npub.pro/tag/nostr/</link>
        <url>https://nostr.build/i/33d5d33cd958fa7b6c7c573fffee190c2bc479c4e7d202ee30661d75f2cf7c5a.jpg</url>
      </image>
      <item>
      <title><![CDATA[Nostr empowered Drupal initiative]]></title>
      <description><![CDATA[]]></description>
             <itunes:subtitle><![CDATA[]]></itunes:subtitle>
      <pubDate>Thu, 11 Sep 2025 19:10:50 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/5cb61121/</link>
      <comments>https://sebastix.npub.pro/post/5cb61121/</comments>
      <guid isPermaLink="false">naddr1qqyr2cmzxccnzv33qgsqvcu68pkfcyq5y9mz9n9u7sys33835rpnuglc6mtg7j4lv40c7ugrqsqqqa28vekhu9</guid>
      <category>nostr</category>
      
      <noteId>naddr1qqyr2cmzxccnzv33qgsqvcu68pkfcyq5y9mz9n9u7sys33835rpnuglc6mtg7j4lv40c7ugrqsqqqa28vekhu9</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<h1>Problem</h1>
<p>Nostr needs integration with existing well-built and well-adopted tools. Drupal is a leading Web Content Management System that powers some of the largest web sites and is one of those tools where Nostr can really shine. If we look even broader, there are many existing PHP powered applications on the web which can benefit with a Nostr integration, such as WordPress.</p>
<p>When there is useful and powerful Nostr integration with PHP, developers building these applications and platforms, will create a springboard towards more Nostr adoption.</p>
<p><strong>Most content is always centralised</strong><br>When content is published on a Drupal powered platform, it usually only exists on that website. With good Nostr integration the goal is to syndicate this content elsewhere on the Nostr network. This is called Publish (on your) Own Site, Syndicate Elsewhere (POSSE - source: <np-embed url="https://indieweb.org/POSSE"><a href="https://indieweb.org/POSSE">https://indieweb.org/POSSE</a></np-embed>) aka <a href="https://indieweb.org/cross-posting">cross-posting</a>.</p>
<p><strong>Distributing content across platforms is hard</strong><br>Drupal site owners are limited to web APIs to distribute content across different platforms, which comes with downsides such as complex access key distribution. With Nostr we don't need such complex APIs because interoperability is integrated on protocol level. This means we don't need permission to distribute content which can be read by any client.</p>
<p>Like Nostr, Drupal is able to handle many different types of content thanks to the famous flexible fieldable entity model. When we combine features of Nostr to distribute the content made in Drupal, we will enter a new era of content publishing on the web.</p>
<h1>This initiative</h1>
<p>Why should we integrate Nostr in Drupal? Drupal is a prime example of the traditional web. To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today.</p>
<p>We can use Drupal as a tool for achieving this. </p>
<p>Also Drupal is always looking for new ways to accelerate with new technology, so I’m convinced also the Drupal community will welcome Nostr with an open mindset. </p>
<p>This initiative will also benefit other similar FOSS CMS tools such as WordPress, Joomla, TYPO3 or BackdropCMS by building a general PHP library package for Nostr integration.</p>
<h2><strong>What have Drupal and Nostr in common?</strong></h2>
<p>Both have a strong critical community and are open source champions.</p>
<p>“Come for the software, stay for the community”, a popular meme within the Drupal community. Drupal has a steep learning curve, but with the help of others it’s more fun and easier to master it. At this moment, Nostr has also a steep learning curve with a lot of new features which requires a new conceptual thinking model. The Nostr community is there to help you understand the ecosystem. </p>
<h3>The <a href="https://www.drupal.org/association/open-web-manifesto">open web manifesto</a> of Drupal</h3>
<p><img src="https://nostrver.se/sites/default/files/inline-images/Screen-Shot-2023-12-19-10-38-53.88.png" alt=""><br><img src="https://nostrver.se/sites/default/files/inline-images/Screen-Shot-2023-12-19-10-41-08.91.png" alt=""></p>
<p><em>Source: <a href="https://dri.es/files/state-of-drupal-october-2023.pdf">Driesnote at DrupalCon Lille 2023</a></em></p>
<blockquote>
<p>The open web is more than a technology — it’s a cause.</p>
</blockquote>
<p>💡 In case you've missed it: Dries (founder and project lead of Drupal) is a fan of Nostr!<br>Read his article <a href="https://dri.es/nostr-love-at-first-sight">Nostr, love at first sight</a></p>
<h3>Freedom tech</h3>
<p>Drupal is FOSS and freedom tech. Free from subscriptions, free from proprietary software dependencies, free to customize and modify, and free with your own terms and conditions on how you would like to use Drupal.</p>
<h3><strong>Future of Drupal</strong></h3>
<p>When Drupal 7 was updated to Drupal 8, the community adopted the Symfony PHP framework as the basis for Drupal core. While this opened up new and powerful opportunities for integrations, it steepened the learning curve for both developers and site builders.<br>Now, with Drupal at version 10, it's faster and easy-to-use than ever. But there’s still work to be done to improve the developer and site-builder experience.</p>
<p>This will take time, but there are several <a href="https://www.thedroptimes.com/drupal/strategic-initiatives">strategic (core)</a> and <a href="https://www.thedroptimes.com/drupal/community-initiatives">community</a> initiatives which are giving a future insight where Drupal is heading:</p>
<ul>
<li>Marketing<br><em>For the first time in history, there is a dedicated initiative for promoting Drupal on the market. Their first presence was on the Web Summit 2023 (<np-embed url="https://dri.es/drupal-at-web-summit"><a href="https://dri.es/drupal-at-web-summit">https://dri.es/drupal-at-web-summit</a></np-embed>).</em></li>
<li>Automated updates<br><em>Updating Drupal is time consuming and sometimes quite hard. While WordPress has automated this already for many years, Drupal is far behind this. This feature will make Drupal much easier to maintain. It will reduce the barrier to start Drupal as well without the hassle about maintaining it.</em></li>
<li>Project browser for more easy-to-install modules<br><em>Drupal has to become more user-friendly and easier to understand as a low-code solution for building websites. This initiative is part of that objective.</em></li>
<li>Distributions and recipes<br><em>Because Drupal is so flexible, you can build almost anything. But it’s hard knowing where to start. The real magic often happens when you start using contrib modules and know how to configure them. WIth distributions / recipes it will be easier to kickstart your project with pre-installed modules and configurations.</em></li>
<li>API client<br><em>Use this JavaScript utility in your JavaScript application to connect to the JSON:API of your Drupal website.</em></li>
<li>Single Directory Components<br><em>Familiar approach for building frontend components for Javascript framework developers (React, Svelte, Vue)</em></li>
</ul>
<p>The future of Drupal is bright and optimistic. Drupal is expected to expand from an enterprise solution to also an easy-to-use content managing tool. More tools to make it easier to start, build and maintain Drupal will be included in core in time. In addition, front-end / theme development is catching up with popular Javascript development frameworks. </p>
<h1>Deliverables / roadmap</h1>
<p>I'm applying for a grant to cover development for one year. These are the three main objectives for building an application with PHP and Drupal:</p>
<ol>
<li>Develop and maintain a generalised Nostr helper library for PHP and distribute it as a PHP package for PHP developers</li>
<li>Suite of contributed Drupal modules to provide rich Nostr integration</li>
<li>Drupal recipe / distribution to provide Nostr best practices for content creators and site builders, using the aforementioned contributed modules</li>
</ol>
<h3>Nostr <strong>helper library for PHP</strong></h3>
<p>See <a href="https://www.notion.so/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160?pvs=21">OpenSats application for Nostr helper library for PHP</a><br>This package will be a dependency of every Nostr contrib module for Drupal. Because the library is project agnostic, it can be used by any PHP powered application.</p>
<ul>
<li>Github: <a href="https://github.com/swentel/nostr-php">nostr-php</a> - see roadmap and at this moment I'm the only active maintainer</li>
</ul>
<blockquote>
<p>💡 <strong>Inspired by the work of Swentel (who started to build nostr-php)</strong><br>In 2019 Swentel (Kristof) build several Drupal contrib modules for integrating ActivityPub and some <a href="https://spec.indieweb.org/">IndieWeb standards</a>. His work was partly funded with a NGI grant by NLnet foundation (<a href="https://www.thedroptimes.com/feed/indigenous-ios-indieweb-and-activitypub-drupal">source</a>).</p>
<ul>
<li><np-embed url="https://realize.be/blog/personal-reader-drupal"><a href="https://realize.be/blog/personal-reader-drupal">https://realize.be/blog/personal-reader-drupal</a></np-embed></li>
<li><np-embed url="https://www.drupal.org/project/reader"><a href="https://www.drupal.org/project/reader">https://www.drupal.org/project/reader</a></np-embed></li>
<li><a href="https://www.drupal.org/project/indieweb">IndieWeb | Drupal.org</a></li>
<li><np-embed url="https://www.drupal.org/project/activitypub"><a href="https://www.drupal.org/project/activitypub">https://www.drupal.org/project/activitypub</a></np-embed></li>
</ul>
</blockquote>
<h3>Drupal contributed modules for Nostr integration</h3>
<ul>
<li>nostr_auth<br>  Register / login with your Nostr account. A new user entity will be created with your keys attached. The provided password will be used to encrypt sensitive data. At least one of the following submodules must be activated.<br>  Submodules:<ul>
<li>nostr_nsec</li>
<li>nostr_nip07</li>
<li>nostr_nip46</li>
</ul>
</li>
<li><a href="https://www.drupal.org/project/nostr_content_nip23">nostr_content_nip23</a> (in development — alpha release)<br>Publish your Markdown formatted content from Drupal to the Nostr network. Republishing (editing) is provided and saving the content as a draft as well.</li>
<li>nostr_media<br>Provides NIP-94 (and NIP-98) integration for your media entities. With this module you could provide a Nostr media service similar to <a href="https://nostr.build/">nostr.build</a> (build with PHP). </li>
<li><a href="https://www.drupal.org/project/nostr_id_nip05">nostr_id_nip05</a> (in development — alpha release)<br>A module where you can configure the content in the <code>~/.well-know/nostr.json</code> file.</li>
<li>nostr_notes (similar to <a href="https://www.drupal.org/project/nostr_simple_publish">nostr_simple_publish</a>, in development — alpha release)<br>A module providing a feature to publish a short text note (the content is used from a pre-configured textfield of a content type) from the website.</li>
<li>nostr_reactions<br>A module providing a feature to place a reaction (with a emoticon) below a piece of content.</li>
<li>nostr_zap_button<br>A module providing a block / button to send a zap to the author of the content.</li>
<li>nostr_comments<br>A module providing the feature to place comments with your Nostr account on content on your website.</li>
<li>nostr_tags<br>Drupal provides a solid way of building fieldable taxonomies which can be used as references to other content types. With this module you can map these taxonomies to Nostr tags which will be added to the events you're publishing.</li>
<li>zap_to_unlock<br>Send a zap to the author to view the full content.</li>
<li>nostr_relay<br><np-embed url="https://github.com/nostriphant/transpher"><a href="https://github.com/nostriphant/transpher">https://github.com/nostriphant/transpher</a></np-embed><br>Configure a relay written in PHP. All Drupal entities (content) will be available as Nostr events towards clients and the relay is capable of receiving Nostr events from clients.</li>
<li>nostr_embed<br>A module where you can embed one or more Nostr events on pages on the website. Embedded Nostr events can be provided with filter arguments (like npubs, kinds, date range, limit and tags).</li>
</ul>
<p>During development sure new insights and ideas for modules will popup. I’m already working on a list with some other modules which can be build also: [[Nice to have features (modules)]]</p>
<h3><strong>Drupal recipe / distribution</strong></h3>
<p>This will include all the configuration, a frontend theme and modules to get started with Drupal as a Nostr client.</p>
<ul>
<li>Full user integration with Nostr keys</li>
<li>Posting events from the Drupal CMS</li>
<li>Support different forms of feedback (Nostr reaction events) on content</li>
<li>Full media support with NIP-94 and NIP-98 integration so Drupal can be used as a file hosting server for Nostr clients to make file sharing interoperable.<br>The baseline for the distribution with these (yet to be build) contrib modules mentioned in the previous section.</li>
</ul>
<h2>Marketing</h2>
<p><strong>Weekly reports</strong><br>On <a href="https://nostrver.se/">https://nostrver.se</a> (will be built with Drupal) weekly reports (a blog) will be published. In each report I'll share the achievements of last week and a plan with actions to work on in the coming week.<br>When this content is created on the site, also events with kind 1 and 30023 will be published for generating exposure.</p>
<p><strong>Drupal community initiative</strong><br>One of the objectives is to get this initiative listed as a community initiative for generating exposure. I will send a proposal as documented <a href="https://www.drupal.org/community-initiatives/proposing-initiatives">here</a>.<br>If approved, it will be listed on several places, including:</p>
<ul>
<li><np-embed url="https://www.drupal.org/community-initiatives"><a href="https://www.drupal.org/community-initiatives">https://www.drupal.org/community-initiatives</a></np-embed></li>
<li><np-embed url="https://www.thedroptimes.com/drupal/community-initiatives"><a href="https://www.thedroptimes.com/drupal/community-initiatives">community</a></np-embed>.<br>The initiative will get attention on <a href="https://www.drupal.org/association/drupalcon">DrupalCon events</a> worldwide.<br>If it is declined, I will just start a contrib module Nostr Initiative (similar to <a href="https://www.drupal.org/project/artificial_intelligence_initiative">Drupal artificial intelligence (AI) community initiative</a> for example).</li>
</ul>
<h1>Built for who?</h1>
<h4><strong>Online content creators and publishers who care about content ownership and their self-owned social graph</strong></h4>
<p>Content creators should use something they own by themselves. They should store their content they create on a safe, self-owned place which can be accessible by their own terms and conditions.</p>
<h4><strong>Business owners who're building a Nostr business</strong></h4>
<p>With Drupal they can build the website they need with Nostr integrated.</p>
<h4><strong>Communities</strong></h4>
<p>Community builders looking for a tool to build their community on their self-owned digital land.</p>
<h4><strong>Drupal site builders &amp; developers</strong></h4>
<h4><strong>Large organizations who need to syndicate their content across multiple websites</strong></h4>
<h4><strong>PHP framework developers</strong></h4>
<p>Developers working with Symfony / Laravel / WordPress / BackdropCMS / NextCloud. They can use the nostr-php library in their project to integrate Nostr.</p>
<p>Some potential cases for a Nostr powered Drupal website:</p>
<ul>
<li>NostReport<br>They could publish / crosspost a report as a note and/or as a Markdown formatted piece of content from the Drupal site. The website will be used mainly as an archive for all published content.</li>
<li>BitcoinBrabant webshop (with Drupal Commerce)<br>See <a href="%5Bnostr:note19xlh29q6we5afxhmtuurqtxuqksk4uscwhz4tqe3f5qauevwva8slfk9ms%5D(nostr:note19xlh29q6we5afxhmtuurqtxuqksk4uscwhz4tqe3f5qauevwva8slfk9ms)">this thread</a> where Bert shares his wish to save as least customer data as possible.<br>A Nostr account can be used in the checkout process to achieve this.</li>
</ul>
<p>We need more developers for this initiative, so there are some places where we can gather and contribute:</p>
<ul>
<li>Telegram group <a href="https://t.me/nostr_php">nostr-php</a></li>
<li>Drupal Slack channel <a href="https://drupal.slack.com/archives/C063ASS2M0B"><a href='/tag/nostr/'>#nostr</a></a> (thanks to <a href="%5BShawn%5D(https://njump.me/npub1lvfkd274unyj4z54q7gmcuk4r00zjx5r24wt933f4yh7m4uqdzkqnmukxq)">Shawn</a>)</li>
</ul>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<h1>Problem</h1>
<p>Nostr needs integration with existing well-built and well-adopted tools. Drupal is a leading Web Content Management System that powers some of the largest web sites and is one of those tools where Nostr can really shine. If we look even broader, there are many existing PHP powered applications on the web which can benefit with a Nostr integration, such as WordPress.</p>
<p>When there is useful and powerful Nostr integration with PHP, developers building these applications and platforms, will create a springboard towards more Nostr adoption.</p>
<p><strong>Most content is always centralised</strong><br>When content is published on a Drupal powered platform, it usually only exists on that website. With good Nostr integration the goal is to syndicate this content elsewhere on the Nostr network. This is called Publish (on your) Own Site, Syndicate Elsewhere (POSSE - source: <np-embed url="https://indieweb.org/POSSE"><a href="https://indieweb.org/POSSE">https://indieweb.org/POSSE</a></np-embed>) aka <a href="https://indieweb.org/cross-posting">cross-posting</a>.</p>
<p><strong>Distributing content across platforms is hard</strong><br>Drupal site owners are limited to web APIs to distribute content across different platforms, which comes with downsides such as complex access key distribution. With Nostr we don't need such complex APIs because interoperability is integrated on protocol level. This means we don't need permission to distribute content which can be read by any client.</p>
<p>Like Nostr, Drupal is able to handle many different types of content thanks to the famous flexible fieldable entity model. When we combine features of Nostr to distribute the content made in Drupal, we will enter a new era of content publishing on the web.</p>
<h1>This initiative</h1>
<p>Why should we integrate Nostr in Drupal? Drupal is a prime example of the traditional web. To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today.</p>
<p>We can use Drupal as a tool for achieving this. </p>
<p>Also Drupal is always looking for new ways to accelerate with new technology, so I’m convinced also the Drupal community will welcome Nostr with an open mindset. </p>
<p>This initiative will also benefit other similar FOSS CMS tools such as WordPress, Joomla, TYPO3 or BackdropCMS by building a general PHP library package for Nostr integration.</p>
<h2><strong>What have Drupal and Nostr in common?</strong></h2>
<p>Both have a strong critical community and are open source champions.</p>
<p>“Come for the software, stay for the community”, a popular meme within the Drupal community. Drupal has a steep learning curve, but with the help of others it’s more fun and easier to master it. At this moment, Nostr has also a steep learning curve with a lot of new features which requires a new conceptual thinking model. The Nostr community is there to help you understand the ecosystem. </p>
<h3>The <a href="https://www.drupal.org/association/open-web-manifesto">open web manifesto</a> of Drupal</h3>
<p><img src="https://nostrver.se/sites/default/files/inline-images/Screen-Shot-2023-12-19-10-38-53.88.png" alt=""><br><img src="https://nostrver.se/sites/default/files/inline-images/Screen-Shot-2023-12-19-10-41-08.91.png" alt=""></p>
<p><em>Source: <a href="https://dri.es/files/state-of-drupal-october-2023.pdf">Driesnote at DrupalCon Lille 2023</a></em></p>
<blockquote>
<p>The open web is more than a technology — it’s a cause.</p>
</blockquote>
<p>💡 In case you've missed it: Dries (founder and project lead of Drupal) is a fan of Nostr!<br>Read his article <a href="https://dri.es/nostr-love-at-first-sight">Nostr, love at first sight</a></p>
<h3>Freedom tech</h3>
<p>Drupal is FOSS and freedom tech. Free from subscriptions, free from proprietary software dependencies, free to customize and modify, and free with your own terms and conditions on how you would like to use Drupal.</p>
<h3><strong>Future of Drupal</strong></h3>
<p>When Drupal 7 was updated to Drupal 8, the community adopted the Symfony PHP framework as the basis for Drupal core. While this opened up new and powerful opportunities for integrations, it steepened the learning curve for both developers and site builders.<br>Now, with Drupal at version 10, it's faster and easy-to-use than ever. But there’s still work to be done to improve the developer and site-builder experience.</p>
<p>This will take time, but there are several <a href="https://www.thedroptimes.com/drupal/strategic-initiatives">strategic (core)</a> and <a href="https://www.thedroptimes.com/drupal/community-initiatives">community</a> initiatives which are giving a future insight where Drupal is heading:</p>
<ul>
<li>Marketing<br><em>For the first time in history, there is a dedicated initiative for promoting Drupal on the market. Their first presence was on the Web Summit 2023 (<np-embed url="https://dri.es/drupal-at-web-summit"><a href="https://dri.es/drupal-at-web-summit">https://dri.es/drupal-at-web-summit</a></np-embed>).</em></li>
<li>Automated updates<br><em>Updating Drupal is time consuming and sometimes quite hard. While WordPress has automated this already for many years, Drupal is far behind this. This feature will make Drupal much easier to maintain. It will reduce the barrier to start Drupal as well without the hassle about maintaining it.</em></li>
<li>Project browser for more easy-to-install modules<br><em>Drupal has to become more user-friendly and easier to understand as a low-code solution for building websites. This initiative is part of that objective.</em></li>
<li>Distributions and recipes<br><em>Because Drupal is so flexible, you can build almost anything. But it’s hard knowing where to start. The real magic often happens when you start using contrib modules and know how to configure them. WIth distributions / recipes it will be easier to kickstart your project with pre-installed modules and configurations.</em></li>
<li>API client<br><em>Use this JavaScript utility in your JavaScript application to connect to the JSON:API of your Drupal website.</em></li>
<li>Single Directory Components<br><em>Familiar approach for building frontend components for Javascript framework developers (React, Svelte, Vue)</em></li>
</ul>
<p>The future of Drupal is bright and optimistic. Drupal is expected to expand from an enterprise solution to also an easy-to-use content managing tool. More tools to make it easier to start, build and maintain Drupal will be included in core in time. In addition, front-end / theme development is catching up with popular Javascript development frameworks. </p>
<h1>Deliverables / roadmap</h1>
<p>I'm applying for a grant to cover development for one year. These are the three main objectives for building an application with PHP and Drupal:</p>
<ol>
<li>Develop and maintain a generalised Nostr helper library for PHP and distribute it as a PHP package for PHP developers</li>
<li>Suite of contributed Drupal modules to provide rich Nostr integration</li>
<li>Drupal recipe / distribution to provide Nostr best practices for content creators and site builders, using the aforementioned contributed modules</li>
</ol>
<h3>Nostr <strong>helper library for PHP</strong></h3>
<p>See <a href="https://www.notion.so/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160?pvs=21">OpenSats application for Nostr helper library for PHP</a><br>This package will be a dependency of every Nostr contrib module for Drupal. Because the library is project agnostic, it can be used by any PHP powered application.</p>
<ul>
<li>Github: <a href="https://github.com/swentel/nostr-php">nostr-php</a> - see roadmap and at this moment I'm the only active maintainer</li>
</ul>
<blockquote>
<p>💡 <strong>Inspired by the work of Swentel (who started to build nostr-php)</strong><br>In 2019 Swentel (Kristof) build several Drupal contrib modules for integrating ActivityPub and some <a href="https://spec.indieweb.org/">IndieWeb standards</a>. His work was partly funded with a NGI grant by NLnet foundation (<a href="https://www.thedroptimes.com/feed/indigenous-ios-indieweb-and-activitypub-drupal">source</a>).</p>
<ul>
<li><np-embed url="https://realize.be/blog/personal-reader-drupal"><a href="https://realize.be/blog/personal-reader-drupal">https://realize.be/blog/personal-reader-drupal</a></np-embed></li>
<li><np-embed url="https://www.drupal.org/project/reader"><a href="https://www.drupal.org/project/reader">https://www.drupal.org/project/reader</a></np-embed></li>
<li><a href="https://www.drupal.org/project/indieweb">IndieWeb | Drupal.org</a></li>
<li><np-embed url="https://www.drupal.org/project/activitypub"><a href="https://www.drupal.org/project/activitypub">https://www.drupal.org/project/activitypub</a></np-embed></li>
</ul>
</blockquote>
<h3>Drupal contributed modules for Nostr integration</h3>
<ul>
<li>nostr_auth<br>  Register / login with your Nostr account. A new user entity will be created with your keys attached. The provided password will be used to encrypt sensitive data. At least one of the following submodules must be activated.<br>  Submodules:<ul>
<li>nostr_nsec</li>
<li>nostr_nip07</li>
<li>nostr_nip46</li>
</ul>
</li>
<li><a href="https://www.drupal.org/project/nostr_content_nip23">nostr_content_nip23</a> (in development — alpha release)<br>Publish your Markdown formatted content from Drupal to the Nostr network. Republishing (editing) is provided and saving the content as a draft as well.</li>
<li>nostr_media<br>Provides NIP-94 (and NIP-98) integration for your media entities. With this module you could provide a Nostr media service similar to <a href="https://nostr.build/">nostr.build</a> (build with PHP). </li>
<li><a href="https://www.drupal.org/project/nostr_id_nip05">nostr_id_nip05</a> (in development — alpha release)<br>A module where you can configure the content in the <code>~/.well-know/nostr.json</code> file.</li>
<li>nostr_notes (similar to <a href="https://www.drupal.org/project/nostr_simple_publish">nostr_simple_publish</a>, in development — alpha release)<br>A module providing a feature to publish a short text note (the content is used from a pre-configured textfield of a content type) from the website.</li>
<li>nostr_reactions<br>A module providing a feature to place a reaction (with a emoticon) below a piece of content.</li>
<li>nostr_zap_button<br>A module providing a block / button to send a zap to the author of the content.</li>
<li>nostr_comments<br>A module providing the feature to place comments with your Nostr account on content on your website.</li>
<li>nostr_tags<br>Drupal provides a solid way of building fieldable taxonomies which can be used as references to other content types. With this module you can map these taxonomies to Nostr tags which will be added to the events you're publishing.</li>
<li>zap_to_unlock<br>Send a zap to the author to view the full content.</li>
<li>nostr_relay<br><np-embed url="https://github.com/nostriphant/transpher"><a href="https://github.com/nostriphant/transpher">https://github.com/nostriphant/transpher</a></np-embed><br>Configure a relay written in PHP. All Drupal entities (content) will be available as Nostr events towards clients and the relay is capable of receiving Nostr events from clients.</li>
<li>nostr_embed<br>A module where you can embed one or more Nostr events on pages on the website. Embedded Nostr events can be provided with filter arguments (like npubs, kinds, date range, limit and tags).</li>
</ul>
<p>During development sure new insights and ideas for modules will popup. I’m already working on a list with some other modules which can be build also: [[Nice to have features (modules)]]</p>
<h3><strong>Drupal recipe / distribution</strong></h3>
<p>This will include all the configuration, a frontend theme and modules to get started with Drupal as a Nostr client.</p>
<ul>
<li>Full user integration with Nostr keys</li>
<li>Posting events from the Drupal CMS</li>
<li>Support different forms of feedback (Nostr reaction events) on content</li>
<li>Full media support with NIP-94 and NIP-98 integration so Drupal can be used as a file hosting server for Nostr clients to make file sharing interoperable.<br>The baseline for the distribution with these (yet to be build) contrib modules mentioned in the previous section.</li>
</ul>
<h2>Marketing</h2>
<p><strong>Weekly reports</strong><br>On <a href="https://nostrver.se/">https://nostrver.se</a> (will be built with Drupal) weekly reports (a blog) will be published. In each report I'll share the achievements of last week and a plan with actions to work on in the coming week.<br>When this content is created on the site, also events with kind 1 and 30023 will be published for generating exposure.</p>
<p><strong>Drupal community initiative</strong><br>One of the objectives is to get this initiative listed as a community initiative for generating exposure. I will send a proposal as documented <a href="https://www.drupal.org/community-initiatives/proposing-initiatives">here</a>.<br>If approved, it will be listed on several places, including:</p>
<ul>
<li><np-embed url="https://www.drupal.org/community-initiatives"><a href="https://www.drupal.org/community-initiatives">https://www.drupal.org/community-initiatives</a></np-embed></li>
<li><np-embed url="https://www.thedroptimes.com/drupal/community-initiatives"><a href="https://www.thedroptimes.com/drupal/community-initiatives">community</a></np-embed>.<br>The initiative will get attention on <a href="https://www.drupal.org/association/drupalcon">DrupalCon events</a> worldwide.<br>If it is declined, I will just start a contrib module Nostr Initiative (similar to <a href="https://www.drupal.org/project/artificial_intelligence_initiative">Drupal artificial intelligence (AI) community initiative</a> for example).</li>
</ul>
<h1>Built for who?</h1>
<h4><strong>Online content creators and publishers who care about content ownership and their self-owned social graph</strong></h4>
<p>Content creators should use something they own by themselves. They should store their content they create on a safe, self-owned place which can be accessible by their own terms and conditions.</p>
<h4><strong>Business owners who're building a Nostr business</strong></h4>
<p>With Drupal they can build the website they need with Nostr integrated.</p>
<h4><strong>Communities</strong></h4>
<p>Community builders looking for a tool to build their community on their self-owned digital land.</p>
<h4><strong>Drupal site builders &amp; developers</strong></h4>
<h4><strong>Large organizations who need to syndicate their content across multiple websites</strong></h4>
<h4><strong>PHP framework developers</strong></h4>
<p>Developers working with Symfony / Laravel / WordPress / BackdropCMS / NextCloud. They can use the nostr-php library in their project to integrate Nostr.</p>
<p>Some potential cases for a Nostr powered Drupal website:</p>
<ul>
<li>NostReport<br>They could publish / crosspost a report as a note and/or as a Markdown formatted piece of content from the Drupal site. The website will be used mainly as an archive for all published content.</li>
<li>BitcoinBrabant webshop (with Drupal Commerce)<br>See <a href="%5Bnostr:note19xlh29q6we5afxhmtuurqtxuqksk4uscwhz4tqe3f5qauevwva8slfk9ms%5D(nostr:note19xlh29q6we5afxhmtuurqtxuqksk4uscwhz4tqe3f5qauevwva8slfk9ms)">this thread</a> where Bert shares his wish to save as least customer data as possible.<br>A Nostr account can be used in the checkout process to achieve this.</li>
</ul>
<p>We need more developers for this initiative, so there are some places where we can gather and contribute:</p>
<ul>
<li>Telegram group <a href="https://t.me/nostr_php">nostr-php</a></li>
<li>Drupal Slack channel <a href="https://drupal.slack.com/archives/C063ASS2M0B"><a href='/tag/nostr/'>#nostr</a></a> (thanks to <a href="%5BShawn%5D(https://njump.me/npub1lvfkd274unyj4z54q7gmcuk4r00zjx5r24wt933f4yh7m4uqdzkqnmukxq)">Shawn</a>)</li>
</ul>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[I just purged 11 Nostr zombies…]]></title>
      <description><![CDATA[I just purged 11 Nostr zombies using #PlebsVsZombies! 🔪🧟‍♂️🧟‍♀️

My Zombie Score was 23%! What's yours?
🟪🟪🟪🟪🟪🟪🟪🟪🟪🟪🟩🟩🟩🟩

Follow @Plebs vs. Zombies and join the hunt at: 🏹…]]></description>
             <itunes:subtitle><![CDATA[I just purged 11 Nostr zombies using #PlebsVsZombies! 🔪🧟‍♂️🧟‍♀️

My Zombie Score was 23%! What's yours?
🟪🟪🟪🟪🟪🟪🟪🟪🟪🟪🟩🟩🟩🟩

Follow @Plebs vs. Zombies and join the hunt at: 🏹…]]></itunes:subtitle>
      <pubDate>Thu, 11 Sep 2025 08:37:18 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1p6ggahm7pp940j5p6vqg4ttvpuwpjc845w5t40rdf282te3gtq7q8ej0dn/</link>
      <comments>https://sebastix.npub.pro/post/note1p6ggahm7pp940j5p6vqg4ttvpuwpjc845w5t40rdf282te3gtq7q8ej0dn/</comments>
      <guid isPermaLink="false">note1p6ggahm7pp940j5p6vqg4ttvpuwpjc845w5t40rdf282te3gtq7q8ej0dn</guid>
      <category>PlebsVsZombies</category>
      
      <noteId>note1p6ggahm7pp940j5p6vqg4ttvpuwpjc845w5t40rdf282te3gtq7q8ej0dn</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>I just purged 11 Nostr zombies using <a href='/tag/plebsvszombies/'>#PlebsVsZombies</a>! 🔪🧟‍♂️🧟‍♀️<br><br>My Zombie Score was 23%! What's yours?<br>🟪🟪🟪🟪🟪🟪🟪🟪🟪🟪🟩🟩🟩🟩<br><br>Follow <a href="https://njump.me/npub1pvz2c9z4pau26xdwfya24d0qhn6ne8zp9vwjuyxw629wkj9vh5lsrrsd4h">Plebs vs. Zombies</a> and join the hunt at: 🏹<br><np-embed url="https://plebs-vs-zombies.vercel.app"><a href="https://plebs-vs-zombies.vercel.app">https://plebs-vs-zombies.vercel.app</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>I just purged 11 Nostr zombies using <a href='/tag/plebsvszombies/'>#PlebsVsZombies</a>! 🔪🧟‍♂️🧟‍♀️<br><br>My Zombie Score was 23%! What's yours?<br>🟪🟪🟪🟪🟪🟪🟪🟪🟪🟪🟩🟩🟩🟩<br><br>Follow <a href="https://njump.me/npub1pvz2c9z4pau26xdwfya24d0qhn6ne8zp9vwjuyxw629wkj9vh5lsrrsd4h">Plebs vs. Zombies</a> and join the hunt at: 🏹<br><np-embed url="https://plebs-vs-zombies.vercel.app"><a href="https://plebs-vs-zombies.vercel.app">https://plebs-vs-zombies.vercel.app</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[+1]]></title>
      <description><![CDATA[+1

"We shouldn't fight #bluesky, boycott #nostr or bully instances that federate with #threads. They are allies. Today. To get to the next step."

My gut feeling says that this next step can take some years still, before we start to act as allies.…]]></description>
             <itunes:subtitle><![CDATA[+1

"We shouldn't fight #bluesky, boycott #nostr or bully instances that federate with #threads. They are allies. Today. To get to the next step."

My gut feeling says that this next step can take some years still, before we start to act as allies.…]]></itunes:subtitle>
      <pubDate>Tue, 01 Jul 2025 15:30:39 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note19tw5snqgk86d8qp0kapz3mlhsuc8hf26tv495n42urn77zj7le2qn3r7wv/</link>
      <comments>https://sebastix.npub.pro/post/note19tw5snqgk86d8qp0kapz3mlhsuc8hf26tv495n42urn77zj7le2qn3r7wv/</comments>
      <guid isPermaLink="false">note19tw5snqgk86d8qp0kapz3mlhsuc8hf26tv495n42urn77zj7le2qn3r7wv</guid>
      <category>bluesky</category>
      
      <noteId>note19tw5snqgk86d8qp0kapz3mlhsuc8hf26tv495n42urn77zj7le2qn3r7wv</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>+1<br><br>"We shouldn't fight <a href='/tag/bluesky/'>#bluesky</a>, boycott <a href='/tag/nostr/'>#nostr</a> or bully instances that federate with <a href='/tag/threads/'>#threads</a>. They are allies. Today. To get to the next step."<br><br>My gut feeling says that this next step can take some years still, before we start to act as allies.<br><br><np-embed nostr="nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l"><a href="https://njump.me/nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l">nostr:nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>+1<br><br>"We shouldn't fight <a href='/tag/bluesky/'>#bluesky</a>, boycott <a href='/tag/nostr/'>#nostr</a> or bully instances that federate with <a href='/tag/threads/'>#threads</a>. They are allies. Today. To get to the next step."<br><br>My gut feeling says that this next step can take some years still, before we start to act as allies.<br><br><np-embed nostr="nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l"><a href="https://njump.me/nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l">nostr:nevent1qvzqqqqqqypzqp6qh2qrs0z9mq9j975u72s66x0qxumzh6fvayteyr8zpzjrjtw6qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqstk3zq220ct59tp98rh8x0y5f0p3eqv5lgdy6pmvwzdlaclcry98gjmgd4l</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[“Imagine a system, where parent define…]]></title>
      <description><![CDATA[“Imagine a system, where parent define the domains of content and people their children can access online, by leveraging trust in various institutions; be those family, friend or other types of familiarity, schools, sports-clubs, churches, community centers, or business specialized in providing ‘child friendly’ environments and content. While not…]]></description>
             <itunes:subtitle><![CDATA[“Imagine a system, where parent define the domains of content and people their children can access online, by leveraging trust in various institutions; be those family, friend or other types of familiarity, schools, sports-clubs, churches, community centers, or business specialized in providing ‘child friendly’ environments and content. While not…]]></itunes:subtitle>
      <pubDate>Sat, 21 Jun 2025 18:18:20 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1gqx32qn5z9vn9dce8xxplwny6fc86nu92qulqvpqhnv6ghddhazq358xjz/</link>
      <comments>https://sebastix.npub.pro/post/note1gqx32qn5z9vn9dce8xxplwny6fc86nu92qulqvpqhnv6ghddhazq358xjz/</comments>
      <guid isPermaLink="false">note1gqx32qn5z9vn9dce8xxplwny6fc86nu92qulqvpqhnv6ghddhazq358xjz</guid>
      <category>nostr</category>
      
      <noteId>note1gqx32qn5z9vn9dce8xxplwny6fc86nu92qulqvpqhnv6ghddhazq358xjz</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>“Imagine a system, where parent define the domains of content and people their children can access online, by leveraging trust in various institutions; be those family, friend or other types of familiarity, schools, sports-clubs, churches, community centers, or business specialized in providing ‘child friendly’ environments and content. While not geographically restricted per se, geography is a dominant factor in the webs of trust that are being constructed. After a short while of a couple of decades, entire generations of people can lean on this trust foundation, once constructed in carefully protected environments.”<br><br><a href='/tag/nostr/'>#Nostr</a><br><np-embed nostr="nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk"><a href="https://njump.me/nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk">nostr:nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>“Imagine a system, where parent define the domains of content and people their children can access online, by leveraging trust in various institutions; be those family, friend or other types of familiarity, schools, sports-clubs, churches, community centers, or business specialized in providing ‘child friendly’ environments and content. While not geographically restricted per se, geography is a dominant factor in the webs of trust that are being constructed. After a short while of a couple of decades, entire generations of people can lean on this trust foundation, once constructed in carefully protected environments.”<br><br><a href='/tag/nostr/'>#Nostr</a><br><np-embed nostr="nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk"><a href="https://njump.me/nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk">nostr:nevent1qqs8u2f5p2scq0qjfhq8seyc499z3fc8j0nhhrsha5zwhr3n4wunyygzyp02geyqgka3lu3zv4wa6dhxmnkacs6epsnqjrzgd0hn3m69pkjm6qcyqqq823cpp4mhxue69uhkummn9ekx7mq3htvdk</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[Relaying &gt; federating]]></title>
      <description><![CDATA[Relaying &gt; federating

You don't need federation to build a distributed social layer for the web. Only relays #Nostr #relayverse…]]></description>
             <itunes:subtitle><![CDATA[Relaying &gt; federating

You don't need federation to build a distributed social layer for the web. Only relays #Nostr #relayverse…]]></itunes:subtitle>
      <pubDate>Wed, 07 May 2025 11:35:17 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1w953lzzt8havcunxzmy428jzhtthvd0yea8cj4nk8lnzqmevmgns5dhluj/</link>
      <comments>https://sebastix.npub.pro/post/note1w953lzzt8havcunxzmy428jzhtthvd0yea8cj4nk8lnzqmevmgns5dhluj/</comments>
      <guid isPermaLink="false">note1w953lzzt8havcunxzmy428jzhtthvd0yea8cj4nk8lnzqmevmgns5dhluj</guid>
      <category>nostr</category>
      
      <noteId>note1w953lzzt8havcunxzmy428jzhtthvd0yea8cj4nk8lnzqmevmgns5dhluj</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>Relaying &gt; federating<br><br>You don't need federation to build a distributed social layer for the web. Only relays <a href='/tag/nostr/'>#Nostr</a> <a href='/tag/relayverse/'>#relayverse</a><br><br><np-embed nostr="nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r"><a href="https://njump.me/nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r">nostr:nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>Relaying &gt; federating<br><br>You don't need federation to build a distributed social layer for the web. Only relays <a href='/tag/nostr/'>#Nostr</a> <a href='/tag/relayverse/'>#relayverse</a><br><br><np-embed nostr="nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r"><a href="https://njump.me/nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r">nostr:nevent1qvzqqqqqqypzqh4yvjqytwcl7g3x2hwaxmndemwugdvscfsfp3yxhmecaazsmfdaqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzqau3ja6e6u2gms5qjfvckjsapm9k3kx0grxmpcp0grhs34pukkkr0rf95r</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[At some day the author of…]]></title>
      <description><![CDATA[At some day the author of this piece will discover a protocol which can replace platforms. #Nostr…]]></description>
             <itunes:subtitle><![CDATA[At some day the author of this piece will discover a protocol which can replace platforms. #Nostr…]]></itunes:subtitle>
      <pubDate>Sat, 22 Feb 2025 23:07:39 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1cmh9asq4r69exclv950p8qh260w6e05z77ffjje242xhfwusj5xqn7tenm/</link>
      <comments>https://sebastix.npub.pro/post/note1cmh9asq4r69exclv950p8qh260w6e05z77ffjje242xhfwusj5xqn7tenm/</comments>
      <guid isPermaLink="false">note1cmh9asq4r69exclv950p8qh260w6e05z77ffjje242xhfwusj5xqn7tenm</guid>
      <category>nostr</category>
      
      <noteId>note1cmh9asq4r69exclv950p8qh260w6e05z77ffjje242xhfwusj5xqn7tenm</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>At some day the author of this piece will discover a protocol which can replace platforms. <a href='/tag/nostr/'>#Nostr</a><br><br><np-embed url="https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/"><a href="https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/">https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>At some day the author of this piece will discover a protocol which can replace platforms. <a href='/tag/nostr/'>#Nostr</a><br><br><np-embed url="https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/"><a href="https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/">https://www.joanwestenberg.com/your-creator-economy-math-is-built-on-our-broken-dreams/</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[“The Internet promised us a marketplace…]]></title>
      <description><![CDATA[“The Internet promised us a marketplace of ideas. Instead, we built a gladiatorial arena where ideas go to die—time to find better places to think.”
#Nostr…]]></description>
             <itunes:subtitle><![CDATA[“The Internet promised us a marketplace of ideas. Instead, we built a gladiatorial arena where ideas go to die—time to find better places to think.”
#Nostr…]]></itunes:subtitle>
      <pubDate>Mon, 17 Feb 2025 21:41:13 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1080e6d45cay7pg2ludua2cj3n2ephddpdpqu79v2vhr3nt42szus3eylh0/</link>
      <comments>https://sebastix.npub.pro/post/note1080e6d45cay7pg2ludua2cj3n2ephddpdpqu79v2vhr3nt42szus3eylh0/</comments>
      <guid isPermaLink="false">note1080e6d45cay7pg2ludua2cj3n2ephddpdpqu79v2vhr3nt42szus3eylh0</guid>
      <category>nostr</category>
      
      <noteId>note1080e6d45cay7pg2ludua2cj3n2ephddpdpqu79v2vhr3nt42szus3eylh0</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>“The Internet promised us a marketplace of ideas. Instead, we built a gladiatorial arena where ideas go to die—time to find better places to think.”<br><a href='/tag/nostr/'>#Nostr</a><br><br><np-embed url="https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why"><a href="https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why">https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>“The Internet promised us a marketplace of ideas. Instead, we built a gladiatorial arena where ideas go to die—time to find better places to think.”<br><a href='/tag/nostr/'>#Nostr</a><br><br><np-embed url="https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why"><a href="https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why">https://www.joanwestenberg.com/you-will-never-win-an-argument-on-the-internet-heres-why</a></np-embed></p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[My view on Drupal’s new…]]></title>
      <description><![CDATA[My view on Drupal’s new Starshot initiative & POSSE 👀 



I would like to propose some features which serve the purpose of Drupal of being an open web champion.

#Nostr #Fediverse #BlueSky #POSSE #FreedomTech #Drupal…]]></description>
             <itunes:subtitle><![CDATA[My view on Drupal’s new Starshot initiative & POSSE 👀 



I would like to propose some features which serve the purpose of Drupal of being an open web champion.

#Nostr #Fediverse #BlueSky #POSSE #FreedomTech #Drupal…]]></itunes:subtitle>
      <pubDate>Wed, 05 Jun 2024 11:52:06 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1s2hm7v7dw0n0qzwwvej5k5p23dfgtxnue9mrykcm8a4dtgn9yhlqkvjzxw/</link>
      <comments>https://sebastix.npub.pro/post/note1s2hm7v7dw0n0qzwwvej5k5p23dfgtxnue9mrykcm8a4dtgn9yhlqkvjzxw/</comments>
      <guid isPermaLink="false">note1s2hm7v7dw0n0qzwwvej5k5p23dfgtxnue9mrykcm8a4dtgn9yhlqkvjzxw</guid>
      <category>nostr</category>
      
      <noteId>note1s2hm7v7dw0n0qzwwvej5k5p23dfgtxnue9mrykcm8a4dtgn9yhlqkvjzxw</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>My view on Drupal’s new Starshot initiative &amp; POSSE 👀 <br><br><np-embed url="https://sebastix.nl/blog/drupal-starshot-initiative-posse/"><a href="https://sebastix.nl/blog/drupal-starshot-initiative-posse/">https://sebastix.nl/blog/drupal-starshot-initiative-posse/</a></np-embed><br><br>I would like to propose some features which serve the purpose of Drupal of being an open web champion.<br><br><a href='/tag/nostr/'>#Nostr</a> <a href='/tag/fediverse/'>#Fediverse</a> <a href='/tag/bluesky/'>#BlueSky</a> <a href='/tag/posse/'>#POSSE</a> <a href='/tag/freedomtech/'>#FreedomTech</a> <a href='/tag/drupal/'>#Drupal</a> </p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>My view on Drupal’s new Starshot initiative &amp; POSSE 👀 <br><br><np-embed url="https://sebastix.nl/blog/drupal-starshot-initiative-posse/"><a href="https://sebastix.nl/blog/drupal-starshot-initiative-posse/">https://sebastix.nl/blog/drupal-starshot-initiative-posse/</a></np-embed><br><br>I would like to propose some features which serve the purpose of Drupal of being an open web champion.<br><br><a href='/tag/nostr/'>#Nostr</a> <a href='/tag/fediverse/'>#Fediverse</a> <a href='/tag/bluesky/'>#BlueSky</a> <a href='/tag/posse/'>#POSSE</a> <a href='/tag/freedomtech/'>#FreedomTech</a> <a href='/tag/drupal/'>#Drupal</a> </p>
]]></itunes:summary>
      
      </item>
      
      <item>
      <title><![CDATA[OpenSats application for Nostr helper library for PHP]]></title>
      <description><![CDATA[There is no easy way for PHP developers to integrate Nostr in PHP powered websites and applications. To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today with the many PHP powered websites and applications.]]></description>
             <itunes:subtitle><![CDATA[There is no easy way for PHP developers to integrate Nostr in PHP powered websites and applications. To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today with the many PHP powered websites and applications.]]></itunes:subtitle>
      <pubDate>Mon, 22 Apr 2024 11:27:02 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/82fcc2b4/</link>
      <comments>https://sebastix.npub.pro/post/82fcc2b4/</comments>
      <guid isPermaLink="false">naddr1qqyrsvnxvd3nyc35qgsqvcu68pkfcyq5y9mz9n9u7sys33835rpnuglc6mtg7j4lv40c7ugrqsqqqa28aw5saq</guid>
      <category>nostr</category>
      
        <media:content url="https://image.nostr.build/ee77851e686dd9e63cb97bfc9a626de520a65def84e649a58fec2b08208cd4f6.jpg" medium="image"/>
        <enclosure 
          url="https://image.nostr.build/ee77851e686dd9e63cb97bfc9a626de520a65def84e649a58fec2b08208cd4f6.jpg" length="0" 
          type="image/jpeg" 
        />
      <noteId>naddr1qqyrsvnxvd3nyc35qgsqvcu68pkfcyq5y9mz9n9u7sys33835rpnuglc6mtg7j4lv40c7ugrqsqqqa28aw5saq</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<h3><em>Further development of the Nostr helper library for PHP</em></h3>
<h2>Problem</h2>
<blockquote>
<p>👉 There is no easy way for PHP developers to integrate Nostr in PHP powered websites and applications.</p>
</blockquote>
<p><strong>To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today with the many PHP powered websites and applications.</strong></p>
<p><em>But wait, isn’t PHP dead?</em></p>
<ul>
<li><a href="https://youtu.be/x7OsH3bH6DA">Why PHP?</a></li>
<li><a href="https://youtu.be/ZDZDvMB-O74">Why you should use PHP</a><br><em>Source: <np-embed url="https://stitcher.io/blog/php-in-2023"><a href="https://stitcher.io/blog/php-in-2023">https://stitcher.io/blog/php-in-2023</a></np-embed></em></li>
</ul>
<p>Nope, it’s still alive and kicking.</p>
<ul>
<li>PHP is used by 76.7% of all websites</li>
<li>Many FOSS projects are built with PHP</li>
<li>With the age of 28 years, PHP probably exist the next 28 years (Lindy effect)</li>
<li>Most used CMSs are built with PHP and used by many organizations and individuals<br><em>More stats on PHP: <np-embed url="https://w3techs.com/technologies/details/pl-php"><a href="https://w3techs.com/technologies/details/pl-php">https://w3techs.com/technologies/details/pl-php</a></np-embed></em></li>
</ul>
<p>When there is useful and powerful Nostr integration with PHP, developers building PHP powered applications and platforms will create a springboard towards more Nostr adoption.</p>
<h5>WordPress, Drupal and other PHP powered platforms</h5>
<p>I advocate that Nostr needs integration with existing well-built and well-adopted tools. Drupal is a leading Web Content Management System that powers some of the largest websites and is one of those tools where Nostr can really shine. If we look even broader, there are many existing PHP powered applications on the web which can benefit with a Nostr integration, such as WordPress.</p>
<h2>nostr-php package</h2>
<h3><em>A Nostr helper library for PHP</em></h3>
<p>There are not many PHP packages for Nostr yet: <np-embed url="https://packagist.org/?query=nostr"><a href="https://packagist.org/?query=nostr">https://packagist.org/?query=nostr</a></np-embed>. When all those PHP websites have an easier way to integrate Nostr with an existing package, possible new Nostr integrations will increase significantly. </p>
<p>I'm applying for a grant to cover development for nostr-php for one year.</p>
<p>Objective: <strong>develop and maintain a PHP helper library and distribute this as a package for PHP developers.</strong></p>
<blockquote>
<p><a href="https://github.com/swentel/nostr-php">nostr-php</a> - a PHP helper library for Nostr integration<br>— 6 <a href="https://github.com/swentel/nostr-php/watchers">watchers</a><br>— 13 <a href="https://github.com/swentel/nostr-php/forks">forks</a><br>— 37 <a href="https://github.com/swentel/nostr-php/stargazers">stars</a><br>— 142 <a href="https://packagist.org/packages/swentel/nostr-php/stats">installs</a><br>Who’s using the library? See <a href="https://github.com/swentel/nostr-php/blob/main/REFERENCES.md">REFERENCES.md</a>.</p>
</blockquote>
<p>Early 2023 the library was built by Kristof (Swentel) who is also a Drupal developer like me. We didn’t know each other before then, but we got in touch while we were both working on a Drupal contrib module for Nostr. He was working on <a href="https://www.drupal.org/project/nostr_simple_publish">Nostr Simple Publish</a> and I on <a href="https://www.drupal.org/project/nostr_id_nip05">Nostr Internet Identifier NIP-05</a>.<br>In June 2023 Kristof announced (<a href="https://www.drupal.org/project/nostr_simple_publish/issues/3367500">here</a> and <a href="https://github.com/swentel/nostr-php/issues/32">here</a>) he won’t continue with further development of nostr-php and the Drupal modules, so I volunteered to take over the maintenance. At this moment I'm the only active maintainer.</p>
<h2>Deliverables / roadmap</h2>
<ul>
<li>See <a href="https://github.com/swentel/nostr-php?tab=readme-ov-file<a href='/tag/roadmap/'>#roadmap</a>">roadmap</a> in Github repository.</li>
<li>Demo (SPA) environment built with Symfony &amp; Turbo using the nostr-php library.</li>
<li>Weekly reports on <a href="http://nostrver.se">nostrver.se</a> (Markdown formatted blog, built with Drupal)</li>
</ul>
<p>In these reports I'll share the achievements of last week and a plan with actions to work on in the coming week. When this content is created on the site, also events kind 1 and 30023 will be published to the Nostr network for generating exposure.</p>
<ul>
<li>Submit a keynote presentation proposal about why and how Drupal can adopt Nostr for <a href="https://drupaljam.nl/">DrupalJam</a> in The Netherlands (12-06-2024).</li>
</ul>
<h2>Built for who?</h2>
<h4>→ <strong>PHP (framework) developers</strong></h4>
<p>Developers working with Symfony, Laravel, Zend, Yii, CodeIgniter, CakePHP, WordPress, ReactPHP, Drupal, TYPO3, CraftCMS, BackdropCMS, Grav, Magento, NextCloud and many other less known PHP powered frameworks and systems. They can use the nostr-php library in their project to integrate Nostr.</p>
<h4><strong>→ PHP powered platforms</strong></h4>
<p>What are the current PHP powered platforms nowadays which are likely to replace their closed social layer with an open networking protocol?</p>
<ul>
<li>Etsy</li>
<li><a href="https://kbin.pub/">Kbin</a> (FOSS fediverse Reddit-clone app)</li>
<li><a href="https://pixelfed.org/">Pixelfed</a> (FOSS fediverse Instagram-clone app)</li>
<li><a href="https://flarum.org/">Flarum</a></li>
<li><a href="https://www.bookstackapp.com/">BookStack</a></li>
<li><a href="https://owncloud.com/">OwnCloud</a> &amp; NextCloud</li>
</ul>
<h4>Looking forward: Nostr empowered Drupal initiative</h4>
<p>While developing the nostr-php library, I’m also developing Nostr contrib modules to build Nostr embedded Drupal applications. After the initial development phase of nostr-php, this will be the way I’m heading in further developing new and existing Nostr contrib modules for Drupal. </p>
<blockquote>
<p>💡 <strong>What I’m currently building for Drupal?</strong><br>→ Module which enables to publish long-form content from your Drupal website<br>→ Module which enables to publish short text notes from your Drupal website<br>→ Module to register / authorize your Nostr account with a user entity on a Drupal website<br>→ Module to manage Nostr internet identifiers with user entities on a Drupal website  </p>
</blockquote>
<p>On these links you can read a concept for a grant submission for a Nostr empowered Drupal / PHP initiative and further thoughts how to integrate Nostr into Drupal: </p>
<p>→ <a href="https://sebastix.notion.site/Nostr-empowered-PHP-Drupal-initiative-d2954f43116045d0aee6cc7ea3ad5055">Nostr empowered PHP Drupal initiative</a></p>
<p>→ 📝 <a href="https://sebastix.nl/blog/how-could-drupal-adopt-nostr/">How could Drupal adopt Nostr?</a></p>
<h2>The team</h2>
<p><strong>Sebastian Hagens</strong> 🇳🇱<br>I am Sebastian Hagens (1986) living and working in The Netherlands as a fullstack webdeveloper and tech consultant. Father of two little daughters. Working 4 days in a week, self-employed (independent developer) from a small office in an old monastery. I have a set of loyal clients but I also work as a freelancer from time to time. I started to build websites in 1999 with HTML, CSS, JavaScript and PHP. </p>
<p>In 2010 I graduated with a bachelor of design at <a href="https://stjoost.nl/">St.Joost School of Arts and Design</a> with a digital project “root:\ a digital lifeline” around reclaiming your social media data and content.</p>
<p>In 2014 I started to work with Drupal and this tool became my most favorite tool for building solutions for ambitious and complex goals. It feels like a Swiss knife for building many types of web-based solutions.</p>
<ul>
<li>Gitlab: <np-embed url="https://gitlab.com/sebastix"><a href="https://gitlab.com/sebastix">https://gitlab.com/sebastix</a></np-embed> </li>
<li>Github: <np-embed url="https://github.com/sebastix"><a href="https://github.com/sebastix">https://github.com/sebastix</a></np-embed> </li>
<li>Drupal profile: <np-embed url="https://www.drupal.org/u/sebastian-hagens"><a href="https://www.drupal.org/u/sebastian-hagens">https://www.drupal.org/u/sebastian-hagens</a></np-embed> </li>
<li>Website: <np-embed url="https://sebastix.nl"><a href="https://sebastix.nl">https://sebastix.nl</a></np-embed> </li>
<li>Nostr: <np-embed url="https://njump.me/sebastian@sebastix.dev"><a href="https://njump.me/sebastian@sebastix.dev">https://njump.me/sebastian@sebastix.dev</a></np-embed></li>
</ul>
<p>I would love to see more contributors on the project, so there are some places where we can gather and discuss topics:</p>
<ul>
<li>Telegram group <a href="https://t.me/nostr_php">nostr-php</a></li>
<li>Drupal Slack channel <a href="https://drupal.slack.com/archives/C063ASS2M0B"><a href='/tag/nostr/'>#nostr</a></a> (thanks to <a href="%5BShawn%5D(https://njump.me/npub1lvfkd274unyj4z54q7gmcuk4r00zjx5r24wt933f4yh7m4uqdzkqnmukxq)">Shawn</a>)</li>
</ul>
<h2>Other Nostr stuff and projects</h2>
<p>These are some other project I'm working on as well, which are Nostr related in someway.</p>
<ul>
<li><a href="https:://nuxstr.nostrver.se">Nuxstr</a></li>
<li><a href="https://personalgraph.me">Root.app / personalgraph.me</a></li>
<li><a href="https://cchs.social">cchs.social</a></li>
<li><a href="https://github.com/Sebastix/echostr">Echostr</a></li>
<li><a href="https://ccns.sebastix.dev">CCNS</a></li>
</ul>
<p>More contributions can be found on <a href="https://nostrver.se/">https://nostrver.se</a>.</p>
<ul>
<li><a href="https://sebastix.nl/blog/why-nostr-resonates/">Why Nostr resonates</a></li>
</ul>
<p><strong>Sebastian Hagens</strong><br>📨&nbsp;<a href="mailto:info@sebastix.nl">info@sebastix.nl</a><br>☎️ +31 6 41712778   </p>
<p>This content is also published on <np-embed url="https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160"><a href="https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160">https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160</a></np-embed></p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<h3><em>Further development of the Nostr helper library for PHP</em></h3>
<h2>Problem</h2>
<blockquote>
<p>👉 There is no easy way for PHP developers to integrate Nostr in PHP powered websites and applications.</p>
</blockquote>
<p><strong>To let the adoption of Nostr grow, it needs to be integrated into the web as it exists today with the many PHP powered websites and applications.</strong></p>
<p><em>But wait, isn’t PHP dead?</em></p>
<ul>
<li><a href="https://youtu.be/x7OsH3bH6DA">Why PHP?</a></li>
<li><a href="https://youtu.be/ZDZDvMB-O74">Why you should use PHP</a><br><em>Source: <np-embed url="https://stitcher.io/blog/php-in-2023"><a href="https://stitcher.io/blog/php-in-2023">https://stitcher.io/blog/php-in-2023</a></np-embed></em></li>
</ul>
<p>Nope, it’s still alive and kicking.</p>
<ul>
<li>PHP is used by 76.7% of all websites</li>
<li>Many FOSS projects are built with PHP</li>
<li>With the age of 28 years, PHP probably exist the next 28 years (Lindy effect)</li>
<li>Most used CMSs are built with PHP and used by many organizations and individuals<br><em>More stats on PHP: <np-embed url="https://w3techs.com/technologies/details/pl-php"><a href="https://w3techs.com/technologies/details/pl-php">https://w3techs.com/technologies/details/pl-php</a></np-embed></em></li>
</ul>
<p>When there is useful and powerful Nostr integration with PHP, developers building PHP powered applications and platforms will create a springboard towards more Nostr adoption.</p>
<h5>WordPress, Drupal and other PHP powered platforms</h5>
<p>I advocate that Nostr needs integration with existing well-built and well-adopted tools. Drupal is a leading Web Content Management System that powers some of the largest websites and is one of those tools where Nostr can really shine. If we look even broader, there are many existing PHP powered applications on the web which can benefit with a Nostr integration, such as WordPress.</p>
<h2>nostr-php package</h2>
<h3><em>A Nostr helper library for PHP</em></h3>
<p>There are not many PHP packages for Nostr yet: <np-embed url="https://packagist.org/?query=nostr"><a href="https://packagist.org/?query=nostr">https://packagist.org/?query=nostr</a></np-embed>. When all those PHP websites have an easier way to integrate Nostr with an existing package, possible new Nostr integrations will increase significantly. </p>
<p>I'm applying for a grant to cover development for nostr-php for one year.</p>
<p>Objective: <strong>develop and maintain a PHP helper library and distribute this as a package for PHP developers.</strong></p>
<blockquote>
<p><a href="https://github.com/swentel/nostr-php">nostr-php</a> - a PHP helper library for Nostr integration<br>— 6 <a href="https://github.com/swentel/nostr-php/watchers">watchers</a><br>— 13 <a href="https://github.com/swentel/nostr-php/forks">forks</a><br>— 37 <a href="https://github.com/swentel/nostr-php/stargazers">stars</a><br>— 142 <a href="https://packagist.org/packages/swentel/nostr-php/stats">installs</a><br>Who’s using the library? See <a href="https://github.com/swentel/nostr-php/blob/main/REFERENCES.md">REFERENCES.md</a>.</p>
</blockquote>
<p>Early 2023 the library was built by Kristof (Swentel) who is also a Drupal developer like me. We didn’t know each other before then, but we got in touch while we were both working on a Drupal contrib module for Nostr. He was working on <a href="https://www.drupal.org/project/nostr_simple_publish">Nostr Simple Publish</a> and I on <a href="https://www.drupal.org/project/nostr_id_nip05">Nostr Internet Identifier NIP-05</a>.<br>In June 2023 Kristof announced (<a href="https://www.drupal.org/project/nostr_simple_publish/issues/3367500">here</a> and <a href="https://github.com/swentel/nostr-php/issues/32">here</a>) he won’t continue with further development of nostr-php and the Drupal modules, so I volunteered to take over the maintenance. At this moment I'm the only active maintainer.</p>
<h2>Deliverables / roadmap</h2>
<ul>
<li>See <a href="https://github.com/swentel/nostr-php?tab=readme-ov-file<a href='/tag/roadmap/'>#roadmap</a>">roadmap</a> in Github repository.</li>
<li>Demo (SPA) environment built with Symfony &amp; Turbo using the nostr-php library.</li>
<li>Weekly reports on <a href="http://nostrver.se">nostrver.se</a> (Markdown formatted blog, built with Drupal)</li>
</ul>
<p>In these reports I'll share the achievements of last week and a plan with actions to work on in the coming week. When this content is created on the site, also events kind 1 and 30023 will be published to the Nostr network for generating exposure.</p>
<ul>
<li>Submit a keynote presentation proposal about why and how Drupal can adopt Nostr for <a href="https://drupaljam.nl/">DrupalJam</a> in The Netherlands (12-06-2024).</li>
</ul>
<h2>Built for who?</h2>
<h4>→ <strong>PHP (framework) developers</strong></h4>
<p>Developers working with Symfony, Laravel, Zend, Yii, CodeIgniter, CakePHP, WordPress, ReactPHP, Drupal, TYPO3, CraftCMS, BackdropCMS, Grav, Magento, NextCloud and many other less known PHP powered frameworks and systems. They can use the nostr-php library in their project to integrate Nostr.</p>
<h4><strong>→ PHP powered platforms</strong></h4>
<p>What are the current PHP powered platforms nowadays which are likely to replace their closed social layer with an open networking protocol?</p>
<ul>
<li>Etsy</li>
<li><a href="https://kbin.pub/">Kbin</a> (FOSS fediverse Reddit-clone app)</li>
<li><a href="https://pixelfed.org/">Pixelfed</a> (FOSS fediverse Instagram-clone app)</li>
<li><a href="https://flarum.org/">Flarum</a></li>
<li><a href="https://www.bookstackapp.com/">BookStack</a></li>
<li><a href="https://owncloud.com/">OwnCloud</a> &amp; NextCloud</li>
</ul>
<h4>Looking forward: Nostr empowered Drupal initiative</h4>
<p>While developing the nostr-php library, I’m also developing Nostr contrib modules to build Nostr embedded Drupal applications. After the initial development phase of nostr-php, this will be the way I’m heading in further developing new and existing Nostr contrib modules for Drupal. </p>
<blockquote>
<p>💡 <strong>What I’m currently building for Drupal?</strong><br>→ Module which enables to publish long-form content from your Drupal website<br>→ Module which enables to publish short text notes from your Drupal website<br>→ Module to register / authorize your Nostr account with a user entity on a Drupal website<br>→ Module to manage Nostr internet identifiers with user entities on a Drupal website  </p>
</blockquote>
<p>On these links you can read a concept for a grant submission for a Nostr empowered Drupal / PHP initiative and further thoughts how to integrate Nostr into Drupal: </p>
<p>→ <a href="https://sebastix.notion.site/Nostr-empowered-PHP-Drupal-initiative-d2954f43116045d0aee6cc7ea3ad5055">Nostr empowered PHP Drupal initiative</a></p>
<p>→ 📝 <a href="https://sebastix.nl/blog/how-could-drupal-adopt-nostr/">How could Drupal adopt Nostr?</a></p>
<h2>The team</h2>
<p><strong>Sebastian Hagens</strong> 🇳🇱<br>I am Sebastian Hagens (1986) living and working in The Netherlands as a fullstack webdeveloper and tech consultant. Father of two little daughters. Working 4 days in a week, self-employed (independent developer) from a small office in an old monastery. I have a set of loyal clients but I also work as a freelancer from time to time. I started to build websites in 1999 with HTML, CSS, JavaScript and PHP. </p>
<p>In 2010 I graduated with a bachelor of design at <a href="https://stjoost.nl/">St.Joost School of Arts and Design</a> with a digital project “root:\ a digital lifeline” around reclaiming your social media data and content.</p>
<p>In 2014 I started to work with Drupal and this tool became my most favorite tool for building solutions for ambitious and complex goals. It feels like a Swiss knife for building many types of web-based solutions.</p>
<ul>
<li>Gitlab: <np-embed url="https://gitlab.com/sebastix"><a href="https://gitlab.com/sebastix">https://gitlab.com/sebastix</a></np-embed> </li>
<li>Github: <np-embed url="https://github.com/sebastix"><a href="https://github.com/sebastix">https://github.com/sebastix</a></np-embed> </li>
<li>Drupal profile: <np-embed url="https://www.drupal.org/u/sebastian-hagens"><a href="https://www.drupal.org/u/sebastian-hagens">https://www.drupal.org/u/sebastian-hagens</a></np-embed> </li>
<li>Website: <np-embed url="https://sebastix.nl"><a href="https://sebastix.nl">https://sebastix.nl</a></np-embed> </li>
<li>Nostr: <np-embed url="https://njump.me/sebastian@sebastix.dev"><a href="https://njump.me/sebastian@sebastix.dev">https://njump.me/sebastian@sebastix.dev</a></np-embed></li>
</ul>
<p>I would love to see more contributors on the project, so there are some places where we can gather and discuss topics:</p>
<ul>
<li>Telegram group <a href="https://t.me/nostr_php">nostr-php</a></li>
<li>Drupal Slack channel <a href="https://drupal.slack.com/archives/C063ASS2M0B"><a href='/tag/nostr/'>#nostr</a></a> (thanks to <a href="%5BShawn%5D(https://njump.me/npub1lvfkd274unyj4z54q7gmcuk4r00zjx5r24wt933f4yh7m4uqdzkqnmukxq)">Shawn</a>)</li>
</ul>
<h2>Other Nostr stuff and projects</h2>
<p>These are some other project I'm working on as well, which are Nostr related in someway.</p>
<ul>
<li><a href="https:://nuxstr.nostrver.se">Nuxstr</a></li>
<li><a href="https://personalgraph.me">Root.app / personalgraph.me</a></li>
<li><a href="https://cchs.social">cchs.social</a></li>
<li><a href="https://github.com/Sebastix/echostr">Echostr</a></li>
<li><a href="https://ccns.sebastix.dev">CCNS</a></li>
</ul>
<p>More contributions can be found on <a href="https://nostrver.se/">https://nostrver.se</a>.</p>
<ul>
<li><a href="https://sebastix.nl/blog/why-nostr-resonates/">Why Nostr resonates</a></li>
</ul>
<p><strong>Sebastian Hagens</strong><br>📨&nbsp;<a href="mailto:info@sebastix.nl">info@sebastix.nl</a><br>☎️ +31 6 41712778   </p>
<p>This content is also published on <np-embed url="https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160"><a href="https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160">https://sebastix.notion.site/OpenSats-application-for-Nostr-helper-library-for-PHP-8fb6bd7ac4214fbaaa397b8671170160</a></np-embed></p>
]]></itunes:summary>
      <itunes:image href="https://image.nostr.build/ee77851e686dd9e63cb97bfc9a626de520a65def84e649a58fec2b08208cd4f6.jpg"/>
      </item>
      
      <item>
      <title><![CDATA[GM!]]></title>
      <description><![CDATA[GM!

Working on this issue:  of #nostr-php

#NostrDev #PHP…]]></description>
             <itunes:subtitle><![CDATA[GM!

Working on this issue:  of #nostr-php

#NostrDev #PHP…]]></itunes:subtitle>
      <pubDate>Wed, 29 Nov 2023 09:31:22 GMT</pubDate>
      <link>https://sebastix.npub.pro/post/note1lyh4xy32mlvc5qjw2lkl2teqf7vel9xf8tt26l9rmt9xf750478swnt4ql/</link>
      <comments>https://sebastix.npub.pro/post/note1lyh4xy32mlvc5qjw2lkl2teqf7vel9xf8tt26l9rmt9xf750478swnt4ql/</comments>
      <guid isPermaLink="false">note1lyh4xy32mlvc5qjw2lkl2teqf7vel9xf8tt26l9rmt9xf750478swnt4ql</guid>
      <category>nostr</category>
      
      <noteId>note1lyh4xy32mlvc5qjw2lkl2teqf7vel9xf8tt26l9rmt9xf750478swnt4ql</noteId>
      <npub>npub1qe3e5wrvnsgpggtkytxteaqfprz0rgxr8c3l34kk3a9t7e2l3acslezefe</npub>
      <dc:creator><![CDATA[Sebastix]]></dc:creator>
      <content:encoded><![CDATA[<p>GM!<br><br>Working on this issue: <np-embed url="https://github.com/swentel/nostr-php/issues/42"><a href="https://github.com/swentel/nostr-php/issues/42">https://github.com/swentel/nostr-php/issues/42</a></np-embed> of <a href='/tag/nostr/'>#nostr</a>-php<br><br><a href='/tag/nostrdev/'>#NostrDev</a> <a href='/tag/php/'>#PHP</a> </p>
]]></content:encoded>
      <itunes:author><![CDATA[Sebastix]]></itunes:author>
      <itunes:summary><![CDATA[<p>GM!<br><br>Working on this issue: <np-embed url="https://github.com/swentel/nostr-php/issues/42"><a href="https://github.com/swentel/nostr-php/issues/42">https://github.com/swentel/nostr-php/issues/42</a></np-embed> of <a href='/tag/nostr/'>#nostr</a>-php<br><br><a href='/tag/nostrdev/'>#NostrDev</a> <a href='/tag/php/'>#PHP</a> </p>
]]></itunes:summary>
      
      </item>
      
      </channel>
      </rss>
    