diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java
new file mode 100644
index 0000000000000000000000000000000000000000..fcf7707b4a7a0766eebf6f9a18fbb0c6d0196a1a
--- /dev/null
+++ b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java
@@ -0,0 +1,42 @@
+package gov.usgs.earthquake.nshmp.www;
+
+import java.util.logging.Logger;
+
+import org.crac.Context;
+import org.crac.Resource;
+
+import com.amazonaws.serverless.proxy.internal.testutils.MockLambdaContext;
+import com.amazonaws.serverless.proxy.model.AwsProxyRequest;
+
+import io.micronaut.context.annotation.Value;
+import io.micronaut.crac.OrderedResource;
+import io.micronaut.function.aws.proxy.MicronautLambdaHandler;
+import jakarta.inject.Singleton;
+
+/**
+ * Prime application for AWS Lambda snapstart.
+ */
+@Singleton
+public class PrimingResource implements OrderedResource {
+
+  @Value("${nshmp.context-path}")
+  String contextPath;
+
+  @Override
+  public void beforeCheckpoint(Context<? extends Resource> context) throws Exception {
+    Logger log = Logger.getAnonymousLogger();
+
+    log.info("Before checkpoint");
+  }
+
+  @Override
+  public void afterRestore(Context<? extends Resource> context) throws Exception {}
+
+  private static AwsProxyRequest getAwsProxyRequest(String path) {
+
+    final AwsProxyRequest awsProxyRequest = new AwsProxyRequest();
+    awsProxyRequest.setHttpMethod("GET");
+    awsProxyRequest.setPath(path);
+    return awsProxyRequest;
+  }
+}