Combining table under different alias
Whole row
You don't mention JSON, but it seems you are after to_json(b)() or similar. Example:
SELECT t.*, to_json(u) AS author
FROM   trips t
JOIN   users u ON u.id = t.created_by;

Or, without involving JSON:
SELECT t.*, u AS author
FROM   trips t
JOIN   users u ON u.id = t.created_by;

Then author is a ROW value, but without column names - that information is only in the definition of the row type.
Selected columns
You later commented:

... if I want id, email and name only from users table?

JSON:
SELECT t.*
     , json_build_object('id', u.id, 'email', u.email, 'name', u.name)) AS author
FROM   trips t
JOIN   users u ON u.id = t.created_by;

Or ROW value:
SELECT t.*
    , (SELECT x FROM (SELECT u.id, u.email, u.name) AS x)) AS author
FROM   trips t
JOIN   users u ON u.id = t.created_by;

See:

Return as array of JSON objects in SQL (Postgres)
Select columns inside json_agg
Raw SQL queries in a REST Api