diff --git a/docs/source/_static/css/ftc-rtd.css b/docs/source/_static/css/ftc-rtd.css
index c7ab5bc2..5c57e0fa 100644
--- a/docs/source/_static/css/ftc-rtd.css
+++ b/docs/source/_static/css/ftc-rtd.css
@@ -145,3 +145,70 @@ div.ethical-sidebar, div.ethical-footer {
.sphinx-tab img {
margin-bottom: 24px;
}
+
+/* fix link text in body content for accessibility
+ exclude .sd-btn which are the buttons on the persona pages*/
+.document a:not(.sd-btn) {
+ color: #0000EE;
+ text-decoration-line: underline;
+ text-decoration-style: solid;
+ text-decoration-color: #0000EE;
+ text-underline-offset: 0.2em;
+}
+.document a:not(.sd-btn):visited {
+ color: #551A8B;
+ text-decoration-style: dotted; /* many browsers don't support decorations on visited link */
+ text-decoration-color: #551A8B;
+}
+.document a:not(.sd-btn):focus {
+ outline: 1px solid #0000EE;;
+}
+.document a:not(.sd-btn):hover {
+ text-decoration-thickness: 0.2em;
+ text-underline-offset: 0.25em;
+}
+.document a:not(.sd-btn):active {
+ text-decoration-style: wavy;
+}
+/* handle dark mode links */
+html[data-theme='dark'] .document a:not(.sd-btn) {
+ color: #249ee8;
+ text-decoration-line: underline;
+ text-decoration-style: solid;
+ text-decoration-color: #249ee8;
+ text-underline-offset: 0.2em;
+}
+html[data-theme='dark'] .document a:not(.sd-btn):visited {
+ color: #bb7feF;
+ text-decoration-style: dotted;
+ text-decoration-color: #bb7feF;
+}
+html[data-theme='dark'] .document a:not(.sd-btn):focus {
+ outline: 1px solid #249ee8;
+}
+html[data-theme='dark'] .document a:not(.sd-btn):hover {
+ text-decoration-thickness: 0.2em;
+ text-underline-offset: 0.25em;
+}
+html[data-theme='dark'] .document a:not(.sd-btn):active {
+ text-decoration-style: wavy;
+}
+/* Screen Reader - No Select class */
+.sr-only-no-select {
+ user-select: none;
+ -webkit-user-select: none;
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ margin: -1px;
+ padding: 0;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ border: 0;
+}
+.icon-external-link:before { /* This is the fa-external-link icon */
+ font-family: FontAwesome;
+ content: "\f08e";
+ margin-left: .2em;
+ text-decoration-line: none;
+}
diff --git a/docs/source/_static/js/external-links-new-tab.js b/docs/source/_static/js/external-links-new-tab.js
index 627818d0..8e4cb50b 100644
--- a/docs/source/_static/js/external-links-new-tab.js
+++ b/docs/source/_static/js/external-links-new-tab.js
@@ -1,4 +1,8 @@
$(document).ready(function () {
- $('a.external').attr('target', '_blank');
- $('a.external').attr('rel', 'noopener');
+ $('a.external').each(function( index, elem ) {
+ var str = $(elem).html();
+ $(elem).html(str + ' (external link opens in a new tab) ');
+ $(elem).attr('target', '_blank');
+ $(elem).attr('rel', 'noopener');
+ });
});
diff --git a/docs/source/_templates/footer.html b/docs/source/_templates/footer.html
index 5e7c916c..cd8967d6 100644
--- a/docs/source/_templates/footer.html
+++ b/docs/source/_templates/footer.html
@@ -23,19 +23,19 @@
{%- if hasdoc('copyright') %}
{%- trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
{%- else %}
- © 2023 {%- trans copyright=copyright|e %}{{ copyright }}{% endtrans %}
+ © 2025 {%- trans copyright=copyright|e %}{{ copyright }}{% endtrans %}
{%- endif %}
{%- endif %}
@@ -67,19 +67,9 @@
-
+
diff --git a/docs/source/game_specific_resources/playing_field_resources/playing_field_resources.rst b/docs/source/game_specific_resources/playing_field_resources/playing_field_resources.rst
index 1044a95b..644e7ac7 100644
--- a/docs/source/game_specific_resources/playing_field_resources/playing_field_resources.rst
+++ b/docs/source/game_specific_resources/playing_field_resources/playing_field_resources.rst
@@ -2,7 +2,7 @@ Playing Field Resources
=======================
.. figure:: images/CenterStageField.png
- :alt: Arena with four teams in alliances areas. Four robots are on the field along with CENTERSTAGE game elements.
+ :alt: Arena with four teams in alliance areas. Four robots are on the field along with CENTERSTAGE game elements.
Traditional Playing Field, CENTERSTAGE presented by RTX, 2023-2024
@@ -35,17 +35,17 @@ The guide typically has the following sections:
- Most games have AprilTags placed around the field that can be used for robot navigation.
- Finally, there are teardown instructions that indicate how to take the field down for storage or transport.
-Use the following button link to download a PDF of the Field Setup Guide from the *FIRST* Website:
+Use the following button link to download a PDF of the current Field Setup Guide from the *FIRST* Website:
.. button-link:: https://ftc-resources.firstinspires.org/file/ftc/game/fieldguide
:color: primary
- Download PDF, 4.5 MB, will open in a new tab
+ Download Field Setup Guide PDF, 4.5 MB
.. note:: The Field Setup Guide has instructions for assembling an official game set as purchased from AndyMark.
A purchased game set can be full or partial. A partial game set is less expensive and also suitable for teams who
want official game elements but don't have room to setup a full field.
-The `Game and Season Materials page (FIRST website) `_ also contains downloadable PDFs for the AprilTag images that can be printed and placed on the field.
-There is also a do it yourself (DIY) Resources section that include CAD models of the game and scoring elements and DIY field and perimeter build guides.
+The `Game and Season Materials page `_ also contains a downloadable PDF for the AprilTag images that can be printed and placed on the field.
+There is a Do It Yourself (DIY) Resources section that includes CAD models of scoring elements and DIY field and perimeter build guides.
diff --git a/docs/source/index.rst b/docs/source/index.rst
index 94fc5cd2..3ea43008 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -126,13 +126,13 @@ and :doc:`gracious_professionalism/gp` to see why.
**I am a...**
-- :doc:`New Team ` - New Teams may not know where to start. This is the way!
+- :doc:`New Team ` New Teams may not know where to start. This is the way!
-- :doc:`Returning Team ` - Returning Teams looking for resources can look here.
+- :doc:`Returning Team ` Returning Teams looking for resources can look here.
-- :doc:`Coach ` - Coaches looking for help or Team Administrative Resources can look here.
+- :doc:`Coach ` Coaches looking for help or Team Administrative Resources can look here.
-- :doc:`Mentor ` - Technical Mentors looking for Technical Resources should look here first!
+- :doc:`Mentor ` Technical Mentors looking for Technical Resources should look here first!
The main menu contains links to the top level content. The following are quick links organized by topic.
@@ -290,7 +290,7 @@ The main menu contains links to the top level content. The following are quick l
:outline:
:expand:
- SDK GitHub Repository (external)
+ SDK GitHub Repository
.. div:: col-sm pl-1 pr-1
@@ -299,7 +299,7 @@ The main menu contains links to the top level content. The following are quick l
:outline:
:expand:
- SDK Releases (external)
+ SDK Releases
.. div:: col-sm pl-1 pr-1
@@ -308,7 +308,7 @@ The main menu contains links to the top level content. The following are quick l
:outline:
:expand:
- Javadoc Documentation (external)
+ Javadoc Documentation
.. grid-item-card::
:class-header: sd-bg-secondary font-weight-bold sd-text-black
@@ -350,7 +350,7 @@ The main menu contains links to the top level content. The following are quick l
:outline:
:expand:
- Game Question and Answer System (external)
+ Game Question and Answer System
.. note::