diff --git a/CITATION.cff b/CITATION.cff
index e560f1a..a4fda53 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -8,6 +8,7 @@ authors:
given-names: "Andrew D."
- family-names: "Nürnberg"
given-names: "Jacob"
+ orcid: "https://orcid.org/0000-0001-9221-373X"
- family-names: "Sparks"
given-names: "David G."
orcid: "https://orcid.org/0000-0002-9545-3365"
diff --git a/Documentation/Alarms.md b/Documentation/Alarms.md
index 4666abc..06d624f 100644
--- a/Documentation/Alarms.md
+++ b/Documentation/Alarms.md
@@ -1,4 +1,4 @@
-#DS3231 Library
+# DS3231 Library
## Functions for Alarms
The DS3231 offers two, versatile, independent alarms.
diff --git a/Documentation/README.md b/Documentation/README.md
new file mode 100644
index 0000000..5d66878
--- /dev/null
+++ b/Documentation/README.md
@@ -0,0 +1,12 @@
+# DS3231 Library Documentation
+
+In this directory, you find documentation for most code in this library. The documentation is organized in logical sections to ease finding of specific functions.
+
+## Contents
+
+- [Time Retrieval](/Documentation/Time-Retrieval.md)
+- [Time Setting](/Documentation/Time-Set.md)
+- [Alarms](/Documentation/Alarms.md)
+- [Utilities](/Documentation/Utilities.md)
+- [DateTime Objects](/Documentation/DateTime.md)
+
diff --git a/README.md b/README.md
index 7bc7745..21a76a3 100644
--- a/README.md
+++ b/README.md
@@ -164,7 +164,7 @@ void loop() {}
## Functions
-Readers are encouraged to visit the [Documentation folder](https://github.com/NorthernWidget/DS3231/tree/master/Documentation) for detailed information about the functions in this Library. Additional information is available in the [Examples of Use](#examples-of-use) described below, and in the code source files of this repository:
+Readers are encouraged to visit the [Documentation directory](/Documentation/README.md) for detailed information about the functions in this Library. Additional information is available in the [Examples of Use](#examples-of-use) described below, and in the code source files of this repository:
* [DS3231.h](https://github.com/NorthernWidget/DS3231/blob/master/DS3231.h)
* [DS3231.cpp](https://github.com/NorthernWidget/DS3231/blob/master/DS3231.cpp)
@@ -256,7 +256,7 @@ The value of ```currentMoment``` can then be accessed as either:
## Examples of Use
-There are many examples provided in the [examples](https://github.com/NorthernWidget/DS3231/tree/master/examples) folder of this repository. At the time of writing the examples include:
+There are many examples provided in the [examples directory](/examples/README.md) of this repository. At the time of writing the examples include:
* *set*: demonstrates selected time-setting functions
* *test*: demonstrates selected time-reading functions
diff --git a/examples/README.md b/examples/README.md
new file mode 100644
index 0000000..64d1cea
--- /dev/null
+++ b/examples/README.md
@@ -0,0 +1,23 @@
+# DS3231 Library - Examples
+
+This directory contains examples demonstating code usage. This is a good place to start, if you wish to get to know this library.
+
+You can find examples on the following topics:
+- [Examples on Times](#examples-on-times)
+- [Examples on Alarms](#examples-on-alarms)
+- [Other Examples](#other-examples)
+
+## Examples on Times
+- **[now](/examples/now/now.ino)**: Basic example of reading back the current time with `RTClib::now()`.
+- **[echo_time](/examples/echo_time/echo_time.ino)**: Demonstration of read back functions for the DS3231 RTC with output to serial monitor.
+- **[DS3231_set](/examples/DS3231_set/DS3231_set.ino)**: Demonstration of set-time routines for a DS3231 RTC.
+- **[set_echo](/examples/set_echo/set_echo.ino)**: Sets the time from input and prints back time stamps for 5s.
+- **[DS3231_test](/examples/DS3231_test/DS3231_test.ino)**: Full demonstration of DS3231 RTC functions with print back to serial monitor.
+
+## Examples on Alarms
+- **[AlarmPolling](/examples/AlarmPolling/AlarmPolling.ino)**: Basic alarm example demonstrating setting and reading an alarm.
+- **[AlarmInterrupt](/examples/AlarmInterrupt/AlarmInterrupt.ino)**: Using DS3231 alarms with interrupts via the SQW output.
+- **[AdvanceAlarm](/examples/AdvanceAlarm/AdvanceAlarm.ino)**: Periodic alarm at an arbitrary interval in time based on interrupts.
+
+## Other Examples
+- **[DS3231_oscillator_test](/examples/DS3231_oscillator_test/DS3231_oscillator_test.ino)**: Output of 32 kHz signal via SQW pin.