Workshift is an open source application for organisations that allows organisation members to collaborate with each other. It is a realtime chat platform built on MongoDB Atlas and utilises many features provided by MongoDB Atlas and MongoDB Realm.
Link to source code: https://github.com/arnu515/workshift
Choose your own adventure
Workshift - The all-in-one app for organisations (BETA)
Worshift is an application for organisations that provides realtime communications. It was built for a hackathon and is currently in beta.
Hosted demo: https://workshift.gq
P.S.: The demo will be slow because the backend is hosted on a $6 DigitalOcean droplet
Host the app yourself
You will need:
- A server to host. Get $100 credit on digitalocean by signing up using this link.
- A MongoDB Realm Application connected to a MongoDB Atlas Cluster.
- A Pusher application for realtime support.
- A Backblaze B2 Storage bucket, or any AWS S3 compatible bucket for file storage
- Optionally: A Github OAuth App and a Discord app for OAuth.
NodeJS version 14 or higher, and
lernacommands installed globally using
sudo npm i -g yarn lerna.
A Docker Image is provided for the backend. The frontend can be built and…
Workshift uses these MongoDB Realm features:
- MongoDB Atlas for data storage
- Atlas Search for searching for users to invite
- Realm functions and triggers for sending events to Pusher when something has changed in the database
- Realm HTTPS endpoints to implement Atlas Search in the frontend without exposing secrets
- Realm hosting for storing common assets (https://assets.workshift.gq)
Workshift uses these additional providers:
- Vercel for hosting the frontend and landing page
- DigitalOcean for hosting the backend
- Pusher for realtime services
- Backblaze B2 for S3-compatible storage
- Github Actions for automated deployments
For information about the tech-stack and instructions on local hosting, checkout the README