Skip to content
This repository has been archived by the owner on Sep 9, 2024. It is now read-only.

Latest commit

 

History

History
124 lines (80 loc) · 3.81 KB

CONTRIBUTING.md

File metadata and controls

124 lines (80 loc) · 3.81 KB

CONTRIBUTING

Contributions are always welcome, no matter how large or small. Before contributing, please read the code of conduct.

For details on contributing to documentation, see Website Directory Readme.

Setup

Install Node.js (LTS) and yarn on your system.

Install dependencies

Only required on the first run, subsequent runs can use yarn dev to both bootstrap and run the development server.

git clone https://github.com/StaticJsCMS/static-cms
cd static-cms
yarn

Run locally

yarn dev

Available scripts

dev

Starts the development server.

yarn dev

build

Runs the builds for packages.

yarn build

test

Runs unit tests for packages.

yarn test

test:integration

Runs integration tests for packages.

yarn test:integration

lint

Lints core and docs according to our style guidelines.

yarn lint

format

Formats core and docs according to our style guidelines.

yarn format

Pull Requests

We actively welcome your pull requests!

If you need help with Git or our workflow, please ask. We want your contributions even if you're just learning Git. Our maintainers are happy to help!

Static CMS uses the Forking Workflow + Feature Branches. Additionally, PR's should be rebased on main when opened, and again before merging.

  1. Fork the repo.
  2. Create a branch from main. If you're addressing a specific issue, prefix your branch name with the issue number.
  3. If you've added code that should be tested, add tests.
  4. If you've changed APIs, update the documentation.
  5. Use yarn format to format and lint your code.
  6. PR's must be rebased before merge (feel free to ask for help).
  7. PR must be reviewed prior to merging.

Debugging

yarn dev spawns a development server and uses dev-test/config.yml and dev-test/index.html to serve the CMS. In order to debug a specific issue follow the next steps:

  1. Replace dev-test/config.yml with the relevant config.yml. If you want to test the backend, make sure that the backend property of the config indicates which backend you use (Github, Gitlab, Bitbucket etc) and path to the repo.
backend: name: github;
repo: owner - name / repo - name;
  1. Run yarn dev
  2. Open http://localhost:8080/ in the browser and you should have access to the CMS

Debugging Git Gateway

When debugging the CMS with Git Gateway you must:

  1. Have a Netlify site with Git Gateway and Netlify Identity enabled. An easy way to create such a site is to use a template, for example the Gatsby template

  2. Tell the CMS the URL of your Netlify site using a local storage item. To do so:

    1. Open http://localhost:8080/ in the browser
    2. Open the Developer Console. Write the below command and press enter: localStorage.setItem('netlifySiteURL', 'https://yourwebsiteurl.netlify.app/')
    3. To be sure, you can run this command as well: localStorage.getItem('netlifySiteURL')
    4. Refresh the page
    5. You should be able to log in via your Netlify Identity email/password

License

By contributing to Static CMS, you agree that your contributions will be licensed under its MIT license.