Overall, the project looks good, and I didn't find any major issues with the implementation. A lot of the minor issues (like code readability and better variable naming) are things that will come with time as you read and write more backend code.
What I can do here is recommend things that would typically be added to make a project like this production-ready, and you can use these topics to continue your learning:
Testing: You can start by writing an integration test that starts up a mock database, runs the service using the mock database, and then calls the endpoints and checks the responses. This guide (or something similar) could be a good start.
Documentation: You often don't need to write too much manual documentation for a server like this. You can write annotations (comments) on your endpoints and use a Swagger library that can autogenerate documentation for the service.
ORM: Most production apps will typically use an Object Relational Mapping (ORM) library, like Sequelize, instead of connecting directly to the pg client. It's not always necessary, but it removes a lot of manual work with respect to testing, migrations, and querying.
Overall, the project looks good, and I didn't find any major issues with the implementation. A lot of the minor issues (like code readability and better variable naming) are things that will come with time as you read and write more backend code.
What I can do here is recommend things that would typically be added to make a project like this production-ready, and you can use these topics to continue your learning: