Family Map
Full Android app and independent server, all built in Java
One of the most exciting aspects of researching family history is discovering your origins and seeing how everyone is connected. Family Map is a mobile application that displays interactive information about key events in your ancestors’ lives. It plots their locations and relationships on Google Maps, with deeper interactive views for details. Users can apply various event filters and display settings, and a handy search feature makes it easy to find who or what you're looking for.

The Java server runs at a publicly-accessible location in the cloud. When a user first runs the Family Map client app, they are first asked to log in or register. After authenticating the user’s identity with the Family Map server, the client app retrieves the user’s family history data from the server. The server is responsible for maintaining user accounts and sessions in the database, as well as storing and providing family history data for users.
The app consists of six main views:
-
Main Activity (Login and top-level map)
-
Event Activity (Lower-level maps)
-
Person Activity
-
Settings Activity
-
Filter Activity
-
Search Activity
The Family Map Client application uses two external services:​
-
Family Map Server - Used for user management, data generation, and requesting data
-
Google Maps for Android
​
The following diagram shows the basic connected design of the project.

Settings

Filter

Person Details
