@pinpt/changelog-generator

Changelog Generator is the tool for automatically generating static sites and emails published by changelog.so

Usage no npm install needed!

<script type="module">
  import pinptChangelogGenerator from 'https://cdn.skypack.dev/@pinpt/changelog-generator';
</script>

README

Issues MIT License LinkedIn


Changelog Logo

Changelog Generator

The project is the generator for Changelogs built using https://changelog.so and is also the project for developing new themes or otherwise customizing your own Changelog.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

Changelog.so is an app built for fast moving product teams to help them manage the way they communicate with their end users. This tool is used by changelog.so to generate static sites published by changelog.so as well as for development on new themes for yor own changelogs.

Product Name Screen Shot

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

You'll need to install a minimum of NodeJS v14 or later to use this project.

If you just want to generate your site, you can install globally:

  • npm
    npm install @pinpt/changelog-generator -g
    

To develop a new theme, you need to install the repository.

Installation

  1. Clone the repo
    git clone https://github.com/pinpt/changelog-generator.git
    
  2. Install NPM packages
    npm install
    

Usage

If you're using the npm global version, you can replace npm run below with changelog-gen.

To generate your site statically, you can run the following command:

npm run -- [slug]

Replace [slug] with your slug or custom hostname specified in settings.

This will generate your static site into $PWD/dist by default. You can change to location by specifying --output.

For help with various options for generating output, run:

npm run help

Building a new theme

If you're using the npm global version, you can replace npm run below with changelog-theme.

If you'd like to customize the look-and-feel of your generated site, you can develop a new theme. First, you can generate a new theme by using the command changelog-create. Take care to only modify the files in the theme directory as we only accept HTML and CSS files when uploading your theme.

Create the theme:

changelog-theme [name]

By default it will be placed in $PWD/[name]. You can change the location of the theme folder by passing in the --output directory. This command will copy the default theme files into this new directory. You can modify these files to override the look-n-feel of your generated static pages.

You can run with your specific built-in theme by name:

npm run -- [slug] [theme]

To run your own theme, such as if you're using the folder /mytheme, run:

changelog-gen [slug] --theme-dir /path/to/my/theme

Replace /path/to/my/theme with the path to your theme directory. In this case, you don't need to specify the name of the theme as an argument.

When you're ready to use your theme in production, just run the following command to create your theme file:

npm run build-theme -- [theme_directory]

Replace [theme_directory] with the path to your theme directory.

If you're using the npm global version, use:

changelog-theme [theme_directory]

This will generate a file such as [folder_name].zip into $PWD/dist by default. You can change to location by specifying --output.

You'll use this file in the Changelog Setting Theme section to upload your theme.

WARNING: make sure you check-in your changes to GitHub or otherwise back them up. If you delete or update the theme in the app, will cannot recover your files or changes.

Developing with watch

To develop a theme you'll likely want to use the watch functionality to re-generate your site each time you make changes to your theme.

npm run -- [slug] --watch

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Copyright © 2021 by Pinpoint Software, Inc. Distributed under the MIT License. See LICENSE for more information.

Contact

Jeff Haynie - @jhaynie - jeff@pinpoint.com

Project Link: https://github.com/pinpt/changelog-generator