Memoria is a self-hosted family tree web app, built using a minimalist Java web framework. It may be used to document a family tree on the web. Search and homepage show people who are deceased and have an associated photograph.
Furthermore, it is an example of pragmatic minimalism and test-driven development, focused on maintainability. It may differ from the conventional expectation of contemporary web app programming style, but it is debatably well-suited for a long-term approach, having only one dependency.
Instructions: Once running (see quick start), become authenticated by entering credentials at http://localhost:8080/login. Enter new persons using "Create New Person". Persons may be related to one another through anchor tags, and the system will then calculate the family tree from that information. Help is provided by the "i" icon in the top right in the application.
Please let me know what you think.
- Main programming language: Java version 21 and upwards - required for virtual threads
- Size of the application, including all necessary dependencies: 600 Kb
- Database/Web server: provided by the Minum web framework (https://github.com/byronka/minum)
- Startup time: 500 milliseconds
- Average memory usage: 64 Mb
- Peak memory usage: 300 Mb with 176 persons and 387 photos under heavy continuous loading
- Average time per request: 5 milliseconds