npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@debiki/gatsby-plugin-talkyard

v0.5.8

Published

Talkyard embedded comments for Gatsby static sites.

Downloads

27

Readme

gatsby-plugin-talkyard

Source code: https://github.com/debiki/gatsby-plugin-ed-comments

Talkyard adds embedded comments to your website or blog, in an iframe. It's open source: https://github.com/debiki/talkyard. Serverless hosting: https://www.talkyard.io/plans, choose Blog Comments.

Talkyard is also forum software with chat and question-answers features: you can create a community for your website, integrated with the blog comments.

Example blog post: https://www.kajmagnus.blog/new-embedded-comments
(scroll down to the bottom)

Installation

npm install --save @debiki/gatsby-plugin-talkyard  # with npm
yarn add @debiki/gatsby-plugin-talkyard            # with Yarn

And tell us that you're using this — so we get the chance to notify you about security updates and other things. Send us an email: hello at talkyard.io.

Getting started

To try out Talkyard, do this: (this is for Gatsby 1, might not work with Gatsby v2)

// In your gatsby-config.js
plugins: [
    {
      resolve: `@debiki/gatsby-plugin-talkyard`,
      options: {
        talkyardServerUrl: 'https://comments-demo.talkyard.io'
      }
    },
]

The URL above is to a demo test site, so you can try out Talkyard, without signing up for hosting, or getting your own server. Comments people post might get deleted at any time (because it's a test demo site).

Then, in your blog post template:

import TalkyardCommentsIframe from '@debiki/gatsby-plugin-talkyard';

// And where the comments shall appear:
<TalkyardCommentsIframe />

Now, restart Gatsby and look at the comments that should appear below your blog posts.

Real installation

Follow the Getting Started instructions just above. Then, go to https://www.talkyard.io/plans and choose Blog Comments. Follow the instructions, and then copy-paste the URL to your site into the talkyardServerUrl config value above, e.g.:

    talkyardServerUrl: 'https://comments-for-your-blog.talkyard.net'

And restart Gatsby.

Changing the URL of a blog post?

Comments are remembered, per blog post URL. But what if you change the URL? Then all comments will be gone — unless you instead of URLs, use permanent discussion ids that stay the same when you change the URL. For each blog post, add a discussion id: (for all blog posts, otherwise weird bugs)

---
title: Blog post title
author: ...
date: ...
description: ...
discussionId: "2018-01-01-page-slug"   <—— look. You can type whatever, but avoid weird chars
---

Blog post text ...

And also tell React to include the discussion id in the props. At the GraphQL query at the bottom of the blog post template page:

export const pageQuery = graphql`
  query BlogPostBySlug($slug: String!) {
    site {
      siteMetadata {
        title
        author
      }
    }
    markdownRemark(fields: { slug: { eq: $slug } }) {
      id
      html
      frontmatter {
        title
        date ...
        discussionId        <—— look
      }
    }
  }
`;

And also change from: <TalkyardCommentsIframe /> to:

<TalkyardCommentsIframe discussionId={post.frontmatter.discussionId} />

Getting help

Here's our support forum: https://www.talkyard.io/forum/latest/support

Changelog

  • v0.5.8, 2018-12-27: Change CDN address to a separate eTLD+1 domain.
  • v0.5.7, 2018-05-17: Update email addr.
  • v0.5.6, 2018-05-17: Add talkyardDebug config value, set to false to disable debug log messages.
  • v0.5.5, 2018-01-23: Edit readme.
  • v0.5.4, 2018-01-23: Rename to talkyardServerUrl.
  • v0.5.3, 2018-01-21: Use CDN CNAME: cdn.talkyard.net, use comments-demo not .demo.
  • v0.5.2, 2018-01-21: Use CDN CNAME: cdn.talkyard.io.
  • v0.5.1, 2018-01-18: Fix 'undefined' bug.
  • v0.5.0 Rename npm package to @debiki/gatsby-plugin-talkyard.
  • v0.4.5 Rename to Talkyard, should be backwards compatible.
  • v0.4.4 Fix compilation error: don't use window.location.
  • v0.4.3 Bug fix: Reload comments if navigating to new blog URL.
  • v0.4.2 Initial release.

Building and publishing

To "publish" this Gatsby module locally, and use in another project on your localhost:

  • Build this lib: yarn prepublish.
  • Then type yarn help link and read the docs.
  • Then type yarn link in this directory.
  • And type yarn link @debiki/gatsby-plugin-talkyard in the project where you want to use this local build.

To publish to the NPM registry:

  • Edit the version in package.js or maybe type npm version patch (or minor or major).
  • Type npm whoami — are you the correct user? If not, create an account over at https://www.npmjs.com, then type npm login.
  • Type npm publish
  • Go to https://npmjs.com/package/<package> and see what happened.
  • Type npm logout

License

Copyright (c) 2017-2018 Kaj Magnus Linberg. The MIT license.