Basic validation & ugly-ass camera… can improve later