Skip to content

githubnext/blocks-dev

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
January 5, 2023 16:17
src
December 6, 2022 09:16
December 5, 2022 09:15
May 11, 2022 15:11
July 22, 2022 12:27
January 5, 2023 17:39
May 11, 2022 14:44
January 5, 2023 16:17

blocks

Welcome! This package supports local development of custom GitHub Blocks.

Scripts

Using the blocks command, you can run the following commands:

  • start - Starts a local development environment and builds Blocks bundles.
  • build - Builds Blocks bundles.

Utility functions

To reduce the cognitive load associated with writing file and folder block components, we've assembled a helper library that exposes interface definitions and a few helper functions.

How to use

yarn add @githubnext/blocks

import {
  FileBlockProps,
  FolderBlockProps,
  getLanguageFromFilename,
  getNestedFileTree,
} from '@githubnext/blocks`

FileBlockProps

import { FileBlockProps } from '@githubnext/blocks';

export default function (props: FileBlockProps) {
  const { content, metadata, onUpdateMetadata } = props;
  ...
}

FolderBlockProps

import { FolderBlockProps } from '@githubnext/blocks';

export default function (props: FileBlockProps) {
  const { tree, metadata, onUpdateMetadata, BlockComponent } = props;
  ...
}

getLanguageFromFilename

A helper function that returns the "language" of a file, given a valid file path with extension.

getNestedFileTree

A helper function to turn the flat folder tree array into a nested tree structure

import { FolderBlockProps, getNestedFileTree, } from "@githubnext/blocks";

export default function (props: FolderBlockProps) {
  const { tree, onNavigateToPath } = props;

  const data = useMemo(() => {
    const nestedTree = getNestedFileTree(tree)[0]
    return nestedTree
  }, [tree])
  ...
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published