Description
GatherPress, a plugin created by and for the WordPress community, is a response to the community’s desire for novel event management tools that meet the diverse needs of event organizers and members. Its agenda and roadmap align with that of the WordPress community, ensuring that it evolves in tandem with our collective wants and needs.
Pilot Program
We propose a pilot program to test GatherPress, a community-developed plugin, within interested and active WordPress meetup groups. This initiative stems from our community’s need for an innovative event management tool tailored to the unique demands of WordPress event organizers and participants. Our proposal in January 2024 on make.wordpress.org
Community-built
This project is the result of a collaborative effort to build a compelling event management application using open source tools such as WordPress and BuddyPress and with the grit, sweat, and love of the community, for the community. We encourage all interested, whether a user, community member, or developer, to follow our emerging presence on our GatherPress Blog, our GitHub repositories, our GatherPress Documentation, or new features on our GatherPress Playground.
Playground Environment
The GatherPress Playground allows you to test the current state of GatherPress with existing data in a fully-functional environment.
The playground is built on the WordPress Playground with customizable json data that you can customize as you like. To get started, click the button above, or delve deeper by:
- Clicking the “Live Preview” button on WordPress.org GatherPress plugin page
- Instantly previewing changes from a commented Playground-link on each PR
- Automatically generating multilingual screenshots for WordPress.org plugins
- Run end-to-end tests (still a PR)
- Curating and maintaining your own set of demo-data, which is reusable in all WP Playgrounds.
For an introduction as to what we are creating and the specific features needed to host events and gather well, please view the introductory video.
https://www.youtube.com/watch?v=BnYS36C5d38&t=2s
Features
- Event Scheduling: set dates, times, and provide event information details.
- Attendee registration.
- Allow attendees to add guests.
- Ability for attendees to be listed anonymously (only administrators will see their names).
- Emailing system: to send emails to all the group members, or a specific event attendees, non-attendees, and those on the waiting list.
- In person events: add the venue, with an optional map (refer to point 4)
- Online event management: add the video meeting URL.
- Multi-event management: capability to handle multiple events simultaneously.
- Multisite environment: This setup allows for centralized management while providing flexibility for each site to host its own unique events with its settings (language, timezone, date time format) and set of users.
- Works with blocks.
- Fully internationalized.
- Freedom to add content besides the default event/venue blocks, to remove default blocks, and add synced patterns (useful for adding consistent information across all events).
Upcoming features
- Import events from meetup.com with an add-on plugin. (#)
- Recurring events. (#)
- Calendar block. (#)
- Email notification when event starts. (#)
- Event federation using ActivityPub (#)
Third-Party Libraries
This plugin leverages the following third-party libraries for various functionalities:
- React-Modal: Facilitates the creation of modal dialogs in React components.
- React-Tooltip: Provides customizable tooltips for React applications.
- Leaflet: Provides global, open-source mapping functionality
Configure GatherPress
In WP Admin, go to Events
> Settings
.
You can change different settings such as:
- Show publish date as event date for events.
- The default maximum limit of attendees to an event.
- Anonymous RSVP.
- Date Format.
- Time Format.
- Display the timezone for scheduled events.
- Upcoming Events page.
- Past Events page.
Create an Event
In WP Admin, go to Events
> Add New
.
By default, a few blocks are populated, you can keep them or delete them and you can add more blocks.
- The Event date block allows you to define the start and end dates and times of your event, as well as the timezone.
- The Add to Calendar block enables your users to add the event to their preferred calendar directly from the published event on the frontend.
- The Venue block lets you choose whether your event is online or in a venue. You can select the venue (refer to point 4) and the map settings: display, zoom level, type of map and map height.
- The RSVP block enables members to confirm they attend or do not attend an event.
- The description of the event is a normal paragraph block. You can add anything with any block here.
- The RSVP Response block displays a list of members who have confirmed they attend or do not attend an event.
- The event settings allow you to modify all the above mentioned settings, enable or disable anonymous RSVP, choose Topics, notify members or attendees, as well as standard WordPress settings such as the featured image, the excerpt, allow or disallow comments, etc.
Create a Venue
In WP Admin, go to Events
> Venues
.
In the Venue block, you can define:
- The full address, telephone, and website of the venue.
- The map settings.
Create an Event Topic
In WP Admin, go to Events
> Topics
.
Topics are like post categories, but for events.
Contribute
If you wish to share in the collaborative of work to build GatherPress, please drop us a line either via WordPress Slack or on GatherPress.org. The development location of the GatherPress project can be found at https://github.com/gatherpress/gatherpress. All contributions are welcome: code, design, user interface, documentation, translation, and more.
Read Developer Documentation
Find the developer documentation inside the plugins’ docs
folder or on our website. our intent is to sync the docs
folder to the website documentation.
Collaborator Access
To get write access to the GitHub repo, please reach out to our GitHub Administrators: Mervin Hernandez and Mike Auteri.
To get access to GatherPress.org via SSH or WP Admin login, please reach out to our GatherPress.org Administrator: Mervin Hernandez.
GatherPress‘ Best Practices
- Tested & validated against WordPress Coding Standards
- Not only once, but consequently tested & validated against the WordPress plugin review guidelines.
- JavaScript & PHP Unit tests are covering almost 80% of the whole codebase.
Reminder — GatherPress is still in Alpha
As we continue to refine and develop the core plugin, we’ve created the GatherPress Alpha plugin to run alongside the GatherPress plugin. The role of the Alpha plugin is to manage breaking changes easily: just make sure it is up-to-date, activate it, go to the Alpha section under GatherPress Settings, and click “Fix GatherPress!” after updating GatherPress. This process helps us avoid technical debt as we work towards launching version 1.0.0 of the plugin. When we arrive there, the Alpha plugin will no longer be necessary.
Screenshots
Blocks
This plugin provides 7 blocks.
- Venue Provides information about an event venue.
- Events List Displays events that are either upcoming or have occurred in the past.
- Online Event Utilized for virtual events, offering the capability to share a direct link to an event.
- RSVP Enables members to easily confirm their attendance for an event.
- RSVP Response Displays a list of members who have confirmed their attendance for an event.
- Event Date Displays the date and time for an event.
- Add to Calendar Allows a member to add an event to their preferred calendar.
Installation
Installation from the WordPress repository
GatherPress is now available on the WordPress plugins repository and able to be installed like any other plugin.
- Navigate to your site’s wp-admin area, and in the left-side menu click on Plugins > Add new plugin.
- Search for
gatherpress
in the search box and click the Install button. - Activate the plugin.
Installation from GitHub
Since this plugin is in active development by the community, features and functionality are still evolving. For the latest updates to GatherPress, consult our GitHub page.
- To find the latest release for installation, use the link under Releases > Assets to download
gatherpress.zip
. - Then go to your wp-admin plugins page and click on the
Upload Plugin
button. - Click on the
Choose File
button at the center of your screen to select thegatherpress.zip
file you just downloaded. - Select the proper zip file, click Open, then
Install Now
. - Activate the plugin.
Requirements
To run GatherPress, we recommend your host supports:
- PHP version 7.4 or greater.
- MySQL version 5.6 or greater, or, MariaDB version 10.0 or greater.
- HTTPS support.
FAQ
-
What external services are used in GatherPress?
-
- Mapping Services: We use OpenStreetMap and Google Maps to display meeting locations on a map. To achieve this, we send the address to OpenStreetMap or Google Maps for rendering.
- Calendar Integration: GatherPress also supports “Add to Calendar” functionality using Google Calendar and Yahoo! Calendar.
-
What about a PRO version?
-
As a Community powered plugin, GatherPress is already the PRO-version.
Because we strive for close-to-core development, love decisions – not options and follow a lot of well known best-practices within the WordPress space, we can and do focus on what matters most – powering our community’s event management needs.
-
Is GatherPress WordPress Multisite compatible?
-
Yes, GatherPress can be run on a network of sites. The additional database tables it needs, will be created automatically for each new site if the plugin is network-activated.
GatherPress can also be activated per site.
Reviews
Contributors & Developers
“GatherPress” is open source software. The following people have contributed to this plugin.
Contributors“GatherPress” has been translated into 7 locales. Thank you to the translators for their contributions.
Translate “GatherPress” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
See complete changelog at https://github.com/GatherPress/gatherpress/releases.