Home
Softono

Givewp

Open source PHP
366
Stars
206
Forks
27
Issues
23
Watchers
3 months
Last Commit

 About Givewp

GiveWP is the leading donation and fundraising plugin designed specifically for WordPress websites. As the highest-rated and most downloaded solution in its category, it provides a powerful, flexible, and easy-to-use platform for organizations of all sizes to accept online contributions. The core software enables non-developers to launch fundraising campaigns quickly while offering advanced customization capabilities for developers to craft unique giving experiences. It serves as the foundation for a broader ecosystem of add-ons that extend functionality. The project is built on modern development standards, supporting tools like Node.js, NPM, Composer, and Docker for streamlined local development and testing. Whether used for managing donor data, creating donation forms, or running specific fundraising campaigns, GiveWP optimizes the path to receipt. While the core plugin is available for free, extended support and premium add-ons are accessible through official channels. This repository serves as the centra

Platforms

Web Self-hosted

Languages

PHP

Need Help Installing Givewp?

We provide expert installation service for this software. Our team will install, configure, and secure Givewp on your server. plans start at just $30.

GiveWP - The #1 WordPress Fundraising Plugin πŸ’š

This plugin is the highest rated, most downloaded, and best supported donation plugin for WordPress. Built from the ground up for all your fundraising needs, GiveWP provides you with a powerful donation platform optimized for online giving that's both easy-to-use for beginners yet flexible for developers to craft their own unique giving experiences.


πŸ‘‰ Not a developer? Running WordPress? Download GiveWP on WordPress.org.

WordPress version WordPress Rating WordPress Downloads License Wordpress Tests

Welcome to the GiveWP GitHub repository. This is the core repository and heart of an ecosystem of active development. Here you can browse the source, look at open issues, and contribute to the project.

Many of our add-ons are in public repositories, however, the majority are private. If you have a legitimate need for access, please reach out to us and we'll be happy to grant you access.

πŸ™‹ Support

This repository is not suitable for WordPress admin or donor support. Please don't use GitHub issues for non-development related support requests. Don't get us wrong, we're more than happy to help you! However, to get the support you need please use the following channels:

🌱 Getting Started

If you're looking to contribute or actively develop on GiveWP, welcome! We're glad you're here. Please ⭐️ this repository and fork it to begin local development.

βœ… Prerequisites

  • Node.js (v20+) as JavaScript engine
  • NPM npm command globally available in CLI
  • Composer composer command globally available in CLI
  • Docker running locally (for the Docker-based quick start)

🐳 Quick Start (Docker)

The fastest way to get up and running is with wp-env, which spins up a local WordPress environment using Docker.

  1. Fork this repository from GitHub and clone it anywhere on your machine
  2. Make sure Docker is running
  3. From the plugin root, run:
composer install && npm install && npm run build && npm run env:start

That's it. WordPress will be available at the URL shown in the terminal output.

πŸ’» Local Development (existing WordPress install)

To develop against an existing local WordPress install:

  1. cd into your local plugins directory: /path/to/wp-content/plugins/
  2. Fork this repository from GitHub and clone it into a new give directory
  3. Run composer install to set up dependencies
  4. Run npm install to get the necessary npm packages
  5. Run npm run dev to build the initial scripts & styles
  6. Activate the plugin in WordPress

Available commands

Note: We use @wordpress/scripts. The commands are as follows:

Command Description
npm run dev Runs a one time build for development. No production files are created.
npm run watch Automatically re-builds as changes are made.
npm run build Builds the minified production files for release.

Development Notes

  • Ensure that you have SCRIPT_DEBUG enabled within your wp-config.php file. Here's a good example of wp-config.php for debugging:
     // Enable WP_DEBUG mode
    define( 'WP_DEBUG', true );
    
    // Enable Debug logging to the /wp-content/debug.log file
    define( 'WP_DEBUG_LOG', true );
    
    // Loads unminified core files
    define( 'SCRIPT_DEBUG', true );
    
  • Commit the package.lock file. Read more about why here.
  • Your editor should recognize the .eslintrc and .editorconfig files within the Repo's root directory. Please only submit PRs following those coding style rulesets.
  • Read CONTRIBUTING.md - it contains more about contributing to GiveWP.