The fitness industry has experienced rapid growth in the past decade as millennials begin to realize the importance of staying fit and healthy. Strength building exercises are a primary component of all fitness routines but can be ineffective and dangerous if done incorrectly. As fitness trainers prove to be too expensive, we introduce TrainSmart. A phone application acting as an on the go virtual trainer, which not only assists users through their workout but also identifies mistakes in form and provides personalized feedback. TrainSmart uses a pose estimation library and a customized movement analysis algorithm to correctly count repetitions and spot errors in the user’s form. TrainSmart also consists of an automated phone stand, which tracks the user across the gym when he/she is performing the workout. The stand consists of an Arduino coupled together with a servo motor which communicates with the phone application via a Bluetooth connection.