/docs

Primary LanguageCSSApache License 2.0Apache-2.0

Welcome to WaveMaker Documentation

To access the WaveMaker documentation, see WaveMaker Docs.

Contributors Workflow

Pre requisites

  1. Node >= 8.x
  2. Git

Other things to have

  1. GitHub account. Sign up, if you do not have an account with GitHub.
  2. See Markdown cheat sheet to get familiar with the editor.

Getting Started

  1. Go to https://github.com/wavemaker/docs

Note
If you are already a member of WaveMaker organization, you can skip the Fork step and directly clone the repo.

  1. Fork the repo. For more information, see Fork a repo.

  2. Clone the wavemaker/docs repo. For more information, see Cloning a repository

  3. Open Git/GitBash

    a. Go to copied location by using the following command:

    cd <path>/docs/website
    
    // Example: 
    // cd documents/gitHub/docs/website
    

    b. Install the package to your local machine

    npm install
    

    c. Run the site using the following command.

    npm start
    

    The step-c launches the website on the local machine automatically with the following url:

    http://localhost:3000/learn

Editing Content

Editing an existing docs page

  1. Locate the file from the file explorer by navigating to learn/ to edit the doc-to-be-edited.md in your local machine.

  2. Open the doc-to-be-edited.md in any markdown editor. For example, Visual Studio Code.

---
id: page-needs-edit
title: This Doc Needs To Be Edited
---

Edit me...

For more information on how to edit docs, click here

Adding Content

Adding a new docs page to an existing sidebar

  • Create the doc as a new markdown file in /learn, example learn/newly-created-doc.md:
---
id: newly-created-doc
title: This Doc Needs To Be Edited
---

My new content here..

Adding to Sidebar (TOC)

  • Refer to that doc's ID in an existing sidebar in website/sidebar.json:
// Add newly-created-doc to the Getting Started category of docs
{
  "docs": 
  {
    "Getting started": 
    [
        "documentation-reference", 
        "newly-created-doc" // new doc here  
        {
          "type": "subcategory",
          "label": "App Design",
          "ids": 
            [ 
                "app-development/ui-design/designing-app",            
                "app-development/ui-design/page-creation",            
            ]
        } 
       ...                      
    ]
    ...
  }
}

Adding a Blog

Go to the blog directory to add team blog feed.

Create a file within the blog directory with a formatted name of YYYY-MM-DD-my-blog-post-title.md. The post date is extracted from the file name.

For example, at website/blog/2019-11-01-developers-team-blog:

---
title: "Welcome to the WaveMaker Developers Blog"
author: Samantha Sam
authorURL: http://twitter.com/sam**m
authorFBID: 1212***24
authorTwitter: Sama****am
---

Summary of blog in less than 100 words..

<!--truncate-->

Blog Content..

The truncate tag in the above content enables to show the blogs in the list view with the summary. Please refer to the existing blogs to check the usage.

Adding Environment Variables

Do not directly add secrets like passwords, API keys to the sourcecode. Instead add entries in the .env file in the website directory. The values to the keys are picked up from Amplify console per environment/branch. There is a sample .env.sample file with the list of environment variables that are currently in use. Copy all the keys from the .env.sample file to the newly created .env file and populate the keys with required values for local environment testing.

Check the project dotenv for more details

Editing Release Notes

Add/update the following documents on releasing a new version.

  1. Add a new document in the learn/wavemaker-release-notes directory with version name. For example, v10.2.2.
  2. Edit the release table in the wavemaker-release-notes file in the /learn directory.
  3. Update the sidebar.json file with the new version release notes.
  4. Remove the current keyword from the previous release notes by changing the sidebar_label and make the new document as current.

License

Apache 2.0 License