Several of us at PlanetScale used to work at GitHub where we had a culture of building internal tools for our specific needs. One of the more important of these was an app called Team. For over a decade, this simple tool has helped the highly distributed GitHub workforce stay connected. Anyone in the company could post an update to Team to announce something they’ve shipped, to share a new company initiative, or just to say hello when first joining the company. Zach Holman nicely summarized the way we communicated at GitHub in this 2014 blog post.
At PlanetScale, we’ve tried a couple of tools similar to Team and recently built our own app called Beam. Posts are written in Markdown, images can be dragged in, and people can respond with a ❤️ or a comment. When new posts are published, the Beam Slack app posts in one of our channels.
Like many companies, we have employees around the world and having a central hub away from Slack's red dots makes it easier for everyone to keep a finger on the company's pulse. Being able to read updates from people in different teams is a great way to see where we’re heading. For new hires, being able to reference past posts helps them to quickly get a lay of the land.
Today we are open-sourcing Beam.
We have found Beam to be very useful and we’d like to share it with others who might find it useful. It is built with Next.js and uses a PlanetScale database for storage. Spinning up your own instance on Vercel is very simple. Authentication can be configured with GitHub or Okta.
If you'd like to give it a try, head over to the Beam repository on GitHub and follow the instructions in the README. We hope your organization finds it useful!