🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

gatsby-plugin-hummhive-react-web-data

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gatsby-plugin-hummhive-react-web-data

Power your Gatsby site with public and/or encrypted members-only data from HummHive.

latest
npmnpm
Version
1.0.12
Version published
Maintainers
1
Created
Source

gatsby-plugin-hummhive-react-web-data

Power your Gatsby site with public and/or encrypted members-only data from HummHive.

This package abstracts all the encryption, decryption, public/private key generation, and HummHive data-bridge calls into a React Context Object that contains:

  • A HummHive state object
  • Actions to fetch or create data
  • A set of React Hooks to simplify usage of encrypted blob data.

Installation

  • Install with npm install gatsby-plugin-hummhive-react-web-data
  • In your gatsby-config.js file, add plugins: ["gatsby-plugin-hummhive-react-web-data"]

Usage

This plugin uses hummhive-react-web-data under the hood. Go there for the full documentation.

Using state

Note: This plugin automatically fetches the Hive state and the logged in Member state so there's no need to manually fetch them.

import React, { useContext } from "react"
import { HummContext } from "gatsby-plugin-hummhive-react-web-data"

const MyComponent = () => {
  const { state } = useContext(HummContext)

  return (
    <h1>Hello {state.hive.name}</h1>
  )
}

Fetching state

import React, { useEffect, useContext } from "react"
import { HummContext } from "gatsby-plugin-hummhive-react-web-data"

const MyComponent = () => {
  const { state, actions } = useContext(HummContext)

  // fetch groups when the component mounts
  useEffect(() => {
    if (!state.groups) actions.getGroups()
  }, [])

  if (!state.groups) return <p>Loading...</p>

  return (
    <h1>Hello {state.groups[0].name}</h1>
  )
}

Joining a Hive

import React, { useEffect, useContext, useState } from "react"
import { HummContext } from "gatsby-plugin-hummhive-react-web-data"

const MyComponent = () => {
  const { state, actions } = useContext(HummContext)
  const [error, setError] = useState(null)

  const handleJoin = async () => {
    try {
      await actions.joinHive(state.hive, USERNAME, EMAIL, GROUP_ID)
    } catch (err) {
      setError(err.message)
    }
  }

  return (
    <button onClick={handleJoin}>Join</button>
  )
}

FAQs

Package last updated on 06 Aug 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts