As we age, caring for elderly loved ones becomes an inevitable reality. However, juggling caretaking responsibilities with multiple caregivers can be challenging and even result in missed visits or tasks that are crucial for the well-being of our loved ones. To alleviate these concerns, we are proud to introduce CareCoord, a mobile application designed to simplify shared caretaking. CareCoord offers five core services to make caretaking a seamless and stress-free experience. With notes and a group messaging system, users can easily store and share important information, preventing crucial caretaking information from being overlooked. Additionally, the calendar and scheduling system allow caretaking groups to organize and track visits, protecting elderly loved ones from the dangers of long periods of time without a check up. CareCoord also helps users monitor critical health information, such as blood pressure and heart rate, making it easy to recognize any health changes. Lastly, to-do lists and reminders keep caretakers on track, making sure they are providing the care their loved ones need.
CareCoord consists of two main components - a mobile frontend built using React Native & a backend built using Express.js, a web framework for Node.js. Both the backend & frontend are written in JavaScript. To get the backend and frontend running, see the "Getting Started" section below.
Before you begin using the app, you'll need to make sure you have the current version of Node.js installed, as well as Git.
If you haven't cloned the CareCoord repo, do so now by entering the following command in your terminal:
git clone https://capstone-cs.eng.utah.edu/caretechers/caretechers.git
Then, enter the directory that the mobile application's frontend is located in:
cd caretechers/backend
Again, make sure you have Node.js installed (see Prerequisites section above).
Install dependencies by entering the following command in your terminal:
npm install
To start the development server, just type the singular command in your terminal below
npm start
Alternatively, you can run make start to run the backend server in a docker container.
Before you begin using the app, you'll need to make sure you have the current version of Node.js installed, as well as Git.
You also will need to install the Expo Go application on your mobile device.
If you haven't cloned the CareCoord repo, do so now by entering the following command in your terminal:
git clone https://capstone-cs.eng.utah.edu/caretechers/caretechers.git
Then, enter the directory that the mobile application's frontend is located in:
cd caretechers/Frontend
Again, make sure you have Node.js installed (see Prerequisites section above).
Install dependencies by entering the following command in your terminal:
npm install
In order for the Google Auth to work in CareCoord, you must log in to expo in your terminal (make sure you are in the Frontend directory) by entering this command:
npx expo login
Email/Username: caretecher
Password: 4$CareTechers
Once you have logged in, Google Auth should work.
To start the development server, just type the singular command in your terminal below
npm start
This will generate a QR code that you can scan using the iOS camera app. Assuming you have installed the Expo Go app on your iPhone, the UI should automatically load once the QR Code is scanned.
Note: These instructions are specifically for iPhone users, as this project is tailored for the iPhone. Instructions may differ for Android users. If you are an Android user, we recommend visiting these React Native docs for more information.
If you want the frontend to use your locally-running backend, navigate to the config.js file in the Frontend/constants/ directory.
Then, set the value of the local_ip variable to be your computer's IP address. Then, change the value of ip to be equal to local_ip
rather than aws_ip.
Our backend is dockerized and deployed to an AWS EC2 instance. We also use AWS RDS and S3 for data storage.
Since the AWS console frequently changes, we believe it would be best to post articles dictating how to create/manage these AWS services:
As long as the EC2 instance is up and healthy, the backend should automatically be deployed and reachable after code is merged into main (through a CI/CD pipeline).
If you have any questions or concerns, please email caretechers4@gmail.com
Aaron Heo, Benjamin Hatch, Brynnli Borrowman & Seng Rith
Final Release
