Skip to content

dustinlacewell/flapper

Repository files navigation

Flapper

A freeform alternative to GraphQL for Gatsby.

The repository contains the development site (/site) that could automatically load packages (packages) thanks to yarn workspaces.

Content

Packages

Package Summary Version
Gatsby Source Flapper Plugin plugin providing freeform alternative to Gatsby's GraphQL model npm version

Site

  • Development Site - Site using for development purposes and code examples showcasing packages possibilities

Examples

Coming soon.

Development

Prerequisites

  • Nodejs
  • Yarn - npm is not supported for development, due to lack of workspaces support.

Install

  1. Install packages

    yarn # install all npm dependencies in the repository
  2. Start watch mode packages

    yarn build # build all packages
  3. Run development site

    yarn develop:site # run `gatsby develop` command in the development site

Now you are good to go. You could start browsing http://localhost:8000 for development site and http://localhost:8000/___graphql for GraphiQL explorer.

Build

To build all of the packages as well as a development site, you could use one command.

yarn build # run build script in all packages as well as in the development site
  • Packages are using ESLint with Typescript plugins for linting.

Publishing

As a publishing framework, there is a Lerna framework set up. This package is using Independent mode.

How to publish new version

If you have the rights to publish packages, just use lerna and specify the version when prompted. All the changes made by lerna are automatically committed.

A typical scenario is when everything is ready and you want to publish the version, just use command.

npx lerna publish --tag-version-prefix=''

That should summarize the publish information and prompt you to define the version number and acknowledge the publish. Once everything is OK and you acknowledge the publish:

  • the new version is published to npm
  • <YOUR VERSION> is set to lerna.json's version
  • commit with this change (and package.json files version changes) is pushed to the repository
  • commit also contains tag <YOUR VERSION> that could be used for creating GitHub release if you want

💡 If you want to test out the beta version first (which is recommended) use following command and if everything is OK, release another patch version as the final version.

npx lerna publish --tag-version-prefix='' --dist-tag=beta

About

A flexible alternative to GraphQL for Gatsby

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages