A tool for communities to create quick and easy public sign-up sheets with no account required.
Fursvp gives your community a central hub for organizers and members to plan events in the real world. At the most basic level, it allows organizers to quickly create a page for an event in just a few steps, and attendees do not need to create an account to sign up or see who else is coming.
This tool is intended to replace the closed-source Fursvp.com that is currently in use by furry fandom communities. Other communities or subcommunities are welcome to build and deploy for their own use. The design is intended to be containerized and able to run with a nosql database on the "free" tier of major cloud hosting platforms like Google Cloud Platform and AWS.
Although these tools are similar, and many organizers may find them suitable as they are, each of them has some shortcoming that Fursvp aims to make up for.
Organizers may find that members of their community span across many different social media platforms such as Meetup.com, Facebook or community forums, and there is no single service that all members use. There are reasons for potential attendees to be reluctant to create a new user account on a platform they don't intend to use except to review and sign up for an event. Fursvp does not aim to be "yet another app" for all parties involved to keep track of and maintain accounts for. Hence, one of its goals is accessibility and ease for all members of your community.
Google Forms is an almost perfect RSVP tool. It lacks two notable features: A public sign-up sheet (or RSVP list) and a persistent details page. The former might not be a must-have for your community, but the latter is. The entire form and all details become hidden as soon as the form is closed to a member (such as after submitting a form that is limited to one per Google account, or after an arbitrary deadline is passed). If you do prefer to use Google Forms, I strongly recommend using it ONLY for signups, and keep important event details published somewhere else that is accessible and won't disappear!
- Browser and mobile browser web UIs
- Standalone backend API that can be used by multiple or custom UIs
- Accessible and easy to use: Setting up an event is easy; signing up for an event is trivial. No account creation required.
- Containerized codebase - able to run with a nosql database on the "free" tier of Google Cloud Platform or AWS
- Customizable event pages (details, activities, rules, contact info); no knowledge of CSS, HTML, formatting or graphic design necessary
- Email-based identification for control panel access
- Social media integration (share your event; designate a photo gallery)
- Geographical features (find events nearby, view map of upcoming events)
- Calendar views and calendar app support
- Limited attendance and Wait Lists
- Designated co-organizers
- Revisit past/archived events
- Email notifications (event updates, new events, reminders for upcoming deadlines)
- SMS notifications
- Buildable/customizable sign-up forms
- Custom form options with limited availability
- Moderated sign-ups (hidden until approved)
- Third-party payment integration for ticket purchases
If you're reading this in mid-2020, this source is nearly functional! We could probably use some help! If you'd like to be a contributor, well, THANKS! Having outside help is the biggest reasons this project is open source. Check the Issues section to see what's still needed.
We don't have an established set of Contributing Guidelines yet, but we do have a Code of Conduct.
Until this code is functional, you can check out the old closed-source fursvp.com.
At a minimum, you will need Docker (or Docker Desktop) to run this codebase.
Having Visual Studio is recommended, but the project can be built entirely within containers. Visual Studio provides you the option of running it outside of a container. You can work against a Google Firestore database by copying your service account key to %appdata%\Microsoft\UserSecrets\fursvp\firestore.json.
cd src
docker build -t fursvp .
docker run -p 80:80 --env-file=fursvp.api/settings.env fursvp:latest
To persist data in Firebase, some additional configuration is needed.
- Edit src/fursvp.api/settings.env and set GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/gcp.json
- Export a variable with the path of your GCP service account json
export GOOGLE_APPLICATION_CREDENTIALS=/local/path/to/gcp.json
- Mount the path as shown below
docker run -p 80:80 --env-file fursvp.api/settings.env -v$GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/gcp.json:ro fursvp:latest
This project is licensed under the MIT License - see the LICENSE.md file for details
The original closed-source version of Fursvp was a collaboration between LupineFox, Protocollie and skippyfox back in 2008 called "Surple." It was started in classic ASP before being rewritten in .NET Web Forms in 2010, though the same blue UI and SQL Server backend remain in 2020. While the Open Source Fursvp is a complete rewrite leaving all of that behind, everything is owed to LupineFox and Protocollie for the initial commitment that brought the project to life, as well as to Kitt3ns and other early adopters for the gratitude and support that kept it going!