Esta pergunta e resposta têm alguns anos e, pelo que posso dizer, agora existe uma maneira correta de fazer isso. Fornecendo isso para futuros pesquisadores:
User.find().collation({locale:'en',strength: 2}).sort({username:1})
.then( (users) =>{
//do your stuff
});
Você também pode indexar em
username
sem distinção entre maiúsculas e minúsculas:UserSchema.index({username:1}, {collation: { locale: 'en', strength: 2}});
strength:1
é outra opção - é melhor consultar a documentação para decidir qual funciona melhor para você. Para obter os detalhes de tudo isso, veja aqui.