Inspiration
After realizing that many people on a diet almost always never follow their plans for which foods to eat at each meal, we realized that we needed a convenient system that could help them manage and plan each meal accordingly. Since there was no record of their plan, many of them decided to abandon their planned foods for each meal, and eat what they wanted. Thus, we have YourMeals, a SMS system that records and organizes what foods we plan to use and eat at each meal.
What it does
Through SMS text messaging, users are able to add foods to their meals of the day, breakfast, lunch, and dinner. For example, I can text "Add breakfast apple", and "Add breakfast oatmeal" to the given number. This now records the foods apple and oatmeal to my breakfast log. Then, I can text "Get breakfast", and I would then receive a text message saying "Here are your foods for breakfast: apple, oatmeal". This example can also be done for lunch and dinner.
Other commands: Add lunch food item Add dinner food item
Get lunch Get dinner
Reset: resets the records for breakfast, lunch, and dinner.
How we built it
We used the Twilio API to set up a phone number for the Express server on Node.js. Then, we used a webhook through ngrok to process all of the incoming text messages. Continuing, we used the TwiML API, or Twilio Markup Language to then respond using a SMS text message back to the user accordingly given the user's initial message. Finally, we used Node.js to organize and store all of the records for each meal and its foods.
Challenges we ran into
We have never used Express or the Twilio API, so there was a steep learning curve. As well, our team had one primary developer, which made the development process a bit more challenging. In addition, there was the hurdle of managing sleep and rest in our team.
Accomplishments that we're proud of
We are proud that we managed to create a working project that can be controlled through pure SMS, or text messaging, and that we are able to carefully organize and record all of the food items for each meal.
What we learned
We learned how to use the Twilio API, how to use SMS to connect to a Express/Node.js backend server, and how to navigate through Express.js for the first time! As well, we also learned a lot about general software engineering from the experienced mentors, as our team consisted of a grade 9 student and a second year university student!
What's next for YourMeals
We are looking at expanding the functionality beyond food items such as creating and recording full inventories of stores, where store owners can update their inventory systems via SMS.
Built With
- express.js
- javascript
- json
- ngrok
- node.js
- sms
- twilio
- twiml

Log in or sign up for Devpost to join the conversation.