add more modern best practices