Predicting crimes before they happen can save lives and prevent property loss. Using machine learning, many researchers have extensively studied how to predict crimes. In this paper, we review the best crime prediction techniques from the last decade, discuss the challenges, and suggest future research directions. Although there are many studies on crime prediction, they use a variety of datasets and methods. By using a Systematic Literature Review (SLR) approach, we aim to gather and summarize essential knowledge on machine learning-based crime prediction to aid law enforcement and scientists in preventing future crimes. We focus on 68 key machine learning papers that predict crime, formulating eight research questions. We found that most studies used supervised machine learning, which requires labeled data, although real-world scenarios often lack labeled data. We also discuss the main challenges researchers faced in these studies. We believe this research will guide further studies to help governments and countries combat crime and enhance safety and security.