LemmeKnow is a group activity planning platform with an integrated calendar to show availability and an integrated polling system to help make decisions. It offers a centralized dashboard of who is attending an event, their status, and that of their assigned tasks.
- Interactive web-based dashboard
- Calendar, shared between members, showing group activities and individual availabilities
- Polls, for reaching a consensus based on individual preferences
- Tasks, for assigning preparation steps in advance
- Messaging system, for general discussion and coordination
- Reminders, to increase the chance of attendance
LemmeKnow helps small groups, such as groups of students or friends, organize meetings or activities. Each member may express their time constraints, self-assign tasks, reach a consensus by creating a poll, and communicate via chat. As an activity approaches, members receive reminders and can check the confirmation status of other members.
frontend/
contains the frontend websitebackend/
contains the backend serverless functionterraform/
contains infrastructure definitionsCONTRIBUTING.md
offers advice on contributing.github/workflows/
contains the CI- here is the build history
- Our user manual is hosted along with the software
- Use a Linux or MacOS environment. Alternatively, be prepared for additional troubleshooting beyond what is described below.
- Install
go
v1.21 or higher (instructions). - Install
node
v18 or higher (instructions). - Install
make
(instructions). Alternatively, run the corresponding command(s) from eachMakefile
. - Install
zip
(Ubuntu instructions, MacOS instructions). Alternatively, manually create any applicable zip archives. - Optionally, for containerized testing, install Docker and then
act
(instructions). - Optionally, for cloud deployment, install and configure AWS CLI and then Terraform (instructions).
The first entry in each component's Makefile
will run it locally, so simply type make
in frontend/
and/or backend/
.
By default, the fronted will host http://localhost:5173/ and the backend will host http://localhost:8080. If you run both, the backend will reverse-proxy the frontend, so navigate to the latter URL only.
Each Makefile
includes a test
step, so simply type make test
in frontend/
and/or backend/
.
Some tests, notably DynamoDB unit tests, have dependencies best suited for installation in a CI workflow or Docker container. To run all tests locally, run act
(instructions) in this directory.
Building is not necessary to run locally, but it is essential for cloud deployment.
Each Makefile
includes a build
step, so simply type make build
in frontend/
and/or backend/
. The frontend will build to frontend/build/*
and the backend will build to backend/bin/bootstrap.zip
After building both frontend and backend, you may deploy to the AWS cloud (instructions).