Ghost/ghost/portal
Rish 4689061d49 Added custom trigger button note to readme
no issue

- Adds note on how custom trigger button works for theme devs
2020-06-06 20:10:26 +05:30
..
.github/workflows
public
scripts
src Updated prop types for trigger button 2020-06-03 10:58:38 +05:30
.editorconfig
.env
.env.development.local.example Updated local env file example to use default page 2020-05-01 22:21:44 +05:30
.gitignore
LICENSE
package.json v0.5.1 2020-06-03 10:55:13 +05:30
README.md Added custom trigger button note to readme 2020-06-06 20:10:26 +05:30
renovate.json
webpack.config.js
yarn.lock Update dependency eslint-plugin-ghost to v1.5.0 2020-05-25 10:17:09 +00:00

Members.js

CI Status npm version

Drop-in script to make the bulk of members work on any theme.

Usage

Add below script in your theme's default.hbs just before the end of body tag OR in the code injection footer in Ghost Admin.

<script type="text/javascript" src="https://unpkg.com/@tryghost/members-js@latest/umd/members.min.js"></script>

Custom trigger button

By default, the script adds a default floating trigger button on the bottom right of your page which is used to trigger the popup on screen.

Its possible to override the default trigger button with your own by adding data attribute data-members-trigger-button to any HTML tag on page, which will hide the default trigger and allow controlling the popup state by clicking on this element.

The script also adds custom class names to this element for open and close state of popup - gh-members-popup-open and gh-members-popup-close, allowing devs to update its UI based on popup state.

Basic Setup

  1. Clone this repository:
git@github.com:TryGhost/members.js.git
  1. Change into the new directory and install the dependencies:
cd members.js
yarn

Configure for local development

Only useful for active UI development without publishing a version on unpkg. Always use the unpkg link for testing latest released members.js.

In this repo(Members.js):

  • Run yarn build to create the minified bundle with your changes at umd/members.min.js

In your theme(Ex. Lyra):

  • Copy members.min.js from above and paste it in your theme at assets/built/members.min.js
  • Add below code in your theme's default.hbs just before end of body tag
<script src="{{asset "built/members.min.js"}}"></script>

Available Scripts

In the project directory, you can also run:

yarn start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

yarn build

Creates the production single minified bundle for external use in umd/members.min.js.

yarn test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

Publish

  • yarn ship is an alias for npm publish
    • Before shipping, please ensure the intended version is updated in package.json.
    • Builds the script with latest code using yarn build (prePublish)
    • Publishes package on npm as @tryghost/members-js and creates an unpkg link for script at https://unpkg.com/@tryghost/members-js@VERSION

Learn More

This project was bootstrapped with Create React App. You can learn more in the Create React App documentation.

Copyright & License

Copyright (c) 2020 Ghost Foundation - Released under the MIT license.