Code Monkey home page Code Monkey logo

gravity-pdf's Introduction

Gravity PDF

Build Status

Gravity PDF is a GPLv2-licensed WordPress plugin that allows you to automatically generate, email and download PDF documents using the popular form-builder plugin, Gravity Forms. Find out more about Gravity PDF at https://gravitypdf.com.

About

This Git repository is for developers who want to contribute to Gravity PDF. Don't use it in production. For production use, download Gravity PDF from the WordPress Plugin Directory.

The development branch is considered our bleeding edge branch, with all new changes pushed to it. The master branch is our latest stable version of Gravity PDF.

Installation

  1. Clone the repository using git clone https://github.com/GravityPDF/gravity-pdf/
  2. Open your terminal / command prompt to the Gravity PDF root directory and run composer install. If you don't have Composer installed, here are instructions for Linux / Mac installation and Windows.
  3. You'll need to ensure WP_DEBUG is set to true in your wp-config.php file so the appropriate assets are loaded. Alternatively, if you have Node.js and Gulp installed you can run npm install && gulp from the command line.
  4. Copy the plugin to your WordPress plugin directory (if not there already) and active through your WordPress admin area.

Documentation

All documentation can be found at https://gravitypdf.com/documentation/.

Contributions

You are more than welcome to contribute to Gravity PDF but we recommend you open a new issue on GitHub and discuss your use-case before creating a pull request.

There are a few guidelines that need to be followed to ensure a smooth pull request. These include:

  1. Adhere to the existing code standard which follows WordPress standards.
  2. All PRs must be to the development branch.
  3. Modifications of the existing codebase must pass all unit tests.
  4. Any additions to the plugin must have appropriate unit tests written.
  5. PRs that don't pass existing unit testing or do not have the proper tests to accompany the changes will not be merged.
  6. Once our team is happy with the PR we'll ask you to squash your branch into a single commit, rebase it onto the development branch and push the changes to GitHub. This ensures we keep a clean Git history.

If you are uncertain whether your PR meets all these requirements, don't worry! If there are problems our friendly team will guide you in the right direction.

Run Unit Tests

The plugin uses PHPUnit as part of the development process. Installing the testing environment is best done using a flavour of Vagrant (try Varying Vagrant Vagrants).

  1. From your terminal SSH into your Vagrant box using the vagrant ssh command
  2. cd into the root of your Gravity PDF directory
  3. Run bash tests/bin/install.sh gravitypdf_test root root localhost where root root is substituted for your mysql username and password (VVV users can run the command as is).
  4. Upon success you can run vendor/bin/phpunit, vendor/bin/phpunit --group ajax and vendor/bin/phpunit --group slow-pdf-processes.

gravity-pdf's People

Contributors

jakejackson1 avatar tfrommen avatar

Stargazers

Mike Garrett avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.