Passport + Node.js / Automatic login after adding user

Please use code from the @Weston answer bellow, because it's more universal and straightforward

Should look something like this

app.post('/sign', function(req, res){
    authProvider.saveUser(...do stuff), function(error, user){
        if(error){
            res.redirect('/sign');
        } else {
            passport.authenticate('local')(req, res, function () {
                res.redirect('/account');
            })
        }
    });
});         

I don't sure about name of strategy, but by default LocalStrategy should provide 'local' name

http://passportjs.org/guide/authenticate/


Based on the Passport Guide req.login() is intended for this exact purpose.

This function is primarily used when users sign up, during which req.login() can be invoked to automatically log in the newly registered user.

Modifying krasu's code:

app.post('/sign', function(req, res){
    authProvider.saveUser(...do stuff), function(error, user){
        if ( error ){
            res.redirect('/sign');
        } else {
            req.login(user, function (err) {
                if ( ! err ){
                    res.redirect('/account');
                } else {
                    //handle error
                }
            })
        }
    });
});

The potential error from the login() callback would come from your serializeUser() function.