Code Monkey home page Code Monkey logo

gatherpress's Introduction

GatherPress

GatherPress, powering our community's event management needs.

GPLv2 License Coding Standards PHPUnit Tests JavaScript Unit Tests E2E Tests SonarCloud Dependency Review

WordPress.org plugin directory guidelines

WordPress Plugin Required PHP Version WordPress Plugin: Required WP Version WordPress Plugin: Tested WP Version WordPress Plugin Version WordPress version checker

WordPress Plugin Active Installs WordPress Plugin Downloads WordPress Plugin Rating

Overview

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.

This project is for the collaborative effort to build a compelling event management application using open source tools such as WordPress and BuddyPress and the grit sweat and love of the community, for the community.

We're creating the very network features we need to host events and gather well.

Demo

Features

  • Event Scheduling: set dates, times, and provide event information details.
  • Attendee registration.
  • 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

  • Allow attendees to add guests.
  • Import events from meetup.com with an add-on plugin (currently in development).
  • Recurring events.
  • Calendar block.
  • Email notification when event starts.

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 greather.
  • HTTPS support.

Installation

  1. Download the plugin: you'll find the latest release on the GatherPress GitHub repository, under Releases > Assets and download gatherpress.zip.
  2. Install it in your WordPress instance: go to WP Admin Plugins > Add new plugin. Choose the gatherpress.zip file you just downloaded.
  3. Activate the plugin.

How to Use

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.

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.

Developer Documentation

.wp-env

If you have Docker installed, you could use the wp-env package to load a WordPress development environment with this plugin automatically activated.

Local Development

Fork this repository

Although you can download a zip file of the plugin at:

https://github.com/GatherPress/gatherpress

If you want to help out with development, we suggest forking the code to your own Github repository and creating a branch from there.

Clone this repository

Once you've forked the repo, you should now have a mirrored copy of GatherPress, but on your profile's URL, or something like this:

https://github.com/YourGithubUsername/gatherpress

where YourGithubUsername corresponds to your login name for Github.

To clone a local copy, open a terminal window and run the following command:

git clone [email protected]:YourGithubUsername/gatherpress.git

if you have your SSH keys set up. If not, run:

git clone https://github.com/YourGithubUsername/gatherpress.git
Note about customizing the URL

Once you have forked the GatherPress repo, you can also change the folder name of your version of the repository by going into your settings of your repo on Github's website.

https://github.com/pbrocks/gatherpress

PBrocks GatherPress repo

Install wp-env globally

In a terminal window, run:

npm i -g @wordpress/env

Change directory and run wp-env

In your terminal window, run:

cd gatherpress
wp-env start

You should then see that a development site has been configured for you on localhost port 2003

Development Site Login

Log in to Site / Log into Site

Development Site Login

Development Site Plugins/Themes

To further customize the development site using your favorite or most familiar development plugins or themes, you are able to add whatever you like because of this code added to the .wp-env.json file:

 "mappings": {
    "wp-content/plugins": "./wp-core/plugins",
    "wp-content/themes": "./wp-core/themes"
 },

In fact, after the initial setup, you may notice that in your code editor, there is now a wp-core folder containing the default plugins and themes, but it is grayed out, so the contents of this folder will not be committed to the GatherPress repository.

Development Site Plugins/Themes

To shut down your development session

Simply run:

wp-env stop

For more info on wp-env package, consult the Block Handbook's page.

Credits

Thanks to the following folks for contributing to GatherPress: mauteri, hrmervin, pbrocks, jmarx, prashantabellad, prayagm, patricia70, meaganhanes, calebthedev, javiercasares, linusx007, cameronbarrett, courane01, newyorkerlaura, phoopee3, hauvong, deshabhishek007, jeffpaul, michelleames

gatherpress's People

Contributors

mauteri avatar pbrocks avatar jmarx avatar carstingaxion avatar jeffpaul avatar patriciabt avatar stephenerdelyi avatar linusx avatar dependabot[bot] avatar prashantabellad avatar prayag11 avatar javiercasares avatar mervinhernandez avatar bluecollarcoders avatar nilovelez avatar deshabhishek007 avatar hauvong avatar phoopee3 avatar

Watchers

 avatar  avatar

gatherpress's Issues

Introduce user taxonomy in favour of some user meta data

Is your enhancement related to a problem? Please describe.

Taxonomy

  • user time zone
  • Enabled event emails
  • Organisers

Designs

No response

Describe alternatives you've considered

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Research on options autoload handling

Is your enhancement related to a problem? Please describe.

grafik

Designs

No response

Describe alternatives you've considered

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Un-couple from post_types in favour of post_type_supports

Is your enhancement related to a problem? Please describe.

Make GatherPress agnostic from its own post types.

Designs

No response

Describe alternatives you've considered

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

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.