The Model-View-ViewModel (MVVM) architectural pattern can be applied in designing a mobile complaint application. MVVM separates the graphical interface and business processes, making it easier to develop and maintain applications. In an MVVM implementation, event and observer data are separated, observing calls from event listeners are avoided, and state is used for data. The MVVM architectural pattern can also reduce dependencies so that there is no close relationship between the view and the viewmodel. In addition, MVVM can also be used to manage the concentration of Android application development that functions as a public complaint. In this community complaint application it is intended that the public can notify their complaints without having to come to the location of the complaint. In addition, it can make it easier for the authorities to follow up on these complaints, so that the public government can provide better service and be responsive to complaints from the public.