You can see most of Luan's dependencies here. The complete list is: Java, Lucene, JavaMail, SLF4J, Postgres, and nginx. I have been eliminating dependencies over time as each dependency caused me trouble. Most recently I eliminated Log4j.
Java is a core dependency. The best I can do is to not upgrade and stick to Java 8. But ideally Luan should work with as many versions of Java as possible.
Lucene is a core dependency. Again I stick to an old version. Ideally someone who hates modern culture should fork Lucene and clean it up. But I need to add a layer on top of Lucene for backup, which I am working on now.
JavaMail is horrible but I used it for convenience. The SMTP protocol is simple, so I should replace JavaMail in the future.
SLF4J is needed for compatibility with modern scum software, so I will keep it.
I am currently using Postgres for backup, but I am working on replacing this with a layer over Lucene. Postgres is a heavy weight dependency that will soon be gone.
I use nginx as a proxy server for performance and to handle the newer modern scum HTTP versions. I could probably extend goodjava.webserver to eliminate nginx, but I don't see the need. nginx works well and is being maintained by Russians, not modern scum. So I plan to keep nginx.