I've been working towards making Meetable more useful to others by making it easier to configure and deploy. I took a few shortcuts during the initial development that let me finish it faster, primarily by offloading authentication and image resizing to external services. While that's great for me, it means it requires setting up two additional projects if someone else wanted to get it running.
Today I made a few changes to make this a lot easier for others to install by removing some of these dependencies.
Meetable now can handle its own image resizing with no configuration! This is probably slower than using the external go imageproxy project, but this way there is no additional setup needed. I even made it use the exact same API, so you can launch Meetable with the built-in image resizing and switch to the external option later.
I also added a new option for logging in, so users can log in with their GitHub account now as well. It's actually a global configuration option as to whether you want to use the built-in GitHub authentication or the external authentication option using Vouch Proxy, so it's up to the site administrator which one to support. Thanks to some refactoring I did to make this work, it should also be possible to add additional options in the future, such as Twitter login.
Thanks to these two changes, you should now be able to install Meetable on a wide variety of hosting options! My next project is going to be getting it ready to deploy to Heroku to make it even more accessible!
At this point, if you're at least a little familiar with Laravel or Composer, it shouldn't be too difficult to set it up! Give it a try and let me know what you think!
It's been a few weeks since I launched the new events site for IndieWeb events! In that time, the community has already hosted 7 events, and scheduled 15 more! I've continued to push a few minor changes to the site since the launch, primarily around discovery of events with tags.
The home page now lists a few "significant" tags at the top. These are tags used by two or more upcoming events.
This strikes a good balance between having list that isn't overwhelmingly long, and also provides a good experience for discovering events when clicked. I wanted to avoid the case of clicking a tag and finding only one upcoming event.
I also added a new page "Discover", which for now shows just a list of tags in a sort of tag cloud. I spent some time on the sorting of the list, which places tags used in more than one city up front, and then tags used in just one city are sorted alphabetically afterwards.
The size corresponds to the number of events with that tag. You can see that they aren't sorted strictly by usage frequency. I think this does a pretty good job of showing tags relevant across a wide geography up front, then narrowing to the more specific city tags afterwards.
I had always intended on making this project open source, but I wanted to tidy up a few things before doing that. I initially had an ambitious list of making this an easy out-of-the-box solution at the time I made it open source, but I wasn't able to finish that list in time. Instead, I scaled back my open source goals to at least just have a nice README with installation instructions, even if the installation process still relies on too many moving parts than I am comfortable with.
Today I am releasing the project as open source under the MIT license! The project is called Meetable, and I've even registered the domain meetable.org to eventually launch a one-page website about the project there.
There are instructions on installing and configuring it, including full documentation of the config file.
So I hope you will join me in continuing to make this site better! And hopefully it will be useful for other communities as well!