<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.accesstomemory.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dan</id>
		<title>AtoM wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.accesstomemory.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dan"/>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/wiki/Special:Contributions/Dan"/>
		<updated>2026-05-27T20:05:06Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.7</generator>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Development/Functional_testing/Single_sign-on_(CAS)_tests&amp;diff=3714</id>
		<title>Development/Functional testing/Single sign-on (CAS) tests</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Development/Functional_testing/Single_sign-on_(CAS)_tests&amp;diff=3714"/>
				<updated>2025-07-01T12:18:35Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Add category and navigation footer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle: Single sign-on (CAS) tests }}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Development]] &amp;gt; [[Development/Functional testing]] &amp;gt; Development/Functional testing/Single sign-on (CAS) tests&lt;br /&gt;
&lt;br /&gt;
==About==&lt;br /&gt;
Centralized Authentication Service (CAS) is an enterprise single sign-on protocol that can be implemented in AtoM by enabling the arCasPlugin and by registering user accounts with a CAS server. For more about CAS see https://www.apereo.org/projects/cas.&lt;br /&gt;
&lt;br /&gt;
For testing purposes, a public CAS demo server can be used. See https://python-cas-flask-example.herokuapp.com/. The username ''admin'' and the password ''django-cas-ng'' can be used to authenticate on the demo server.&lt;br /&gt;
&lt;br /&gt;
The arCasPlugin also provides an optional mechanism for dynamically setting AclUserGroup membership on each login, based on the presence or absence of expected values in the attributes returned from the CAS server during p3/serviceValidate (CAS version 3.0 only).&lt;br /&gt;
&lt;br /&gt;
==Single sign-on login==&lt;br /&gt;
&lt;br /&gt;
Test scenario: A user is authenticated through a Central Authentication Service (CAS) single sign-on form and is automatically logged in to an AtoM session.&lt;br /&gt;
&lt;br /&gt;
Given: The institution hosting AtoM is running a CAS server.&lt;br /&gt;
&lt;br /&gt;
And: The user has an active CAS account.&lt;br /&gt;
&lt;br /&gt;
And: The user account is present in the AtoM group member list on the CAS server.&lt;br /&gt;
&lt;br /&gt;
When: The user starts a new session on the institution’s domain and navigates to an AtoM page that requires authentication.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Then: The unauthenticated user is redirected to the CAS login form where they enter their CAS username and password.&lt;br /&gt;
&lt;br /&gt;
And: The CAS server successfully authenticates the user, assigns them a session service ticket, and redirects them to the AtoM server.&lt;br /&gt;
&lt;br /&gt;
And: AtoM sends the service ticket to the CAS server over HTTPS for validation.&lt;br /&gt;
&lt;br /&gt;
And: The CAS server sends a success response to AtoM which includes the user attributes set on the CAS server.&lt;br /&gt;
&lt;br /&gt;
And: AtoM creates a new user account if one matching the CAS account doesn’t already exist.&lt;br /&gt;
&lt;br /&gt;
And: AtoM sets the user session cookie (with the service ticket stripped off) and redirects the user to a new, authenticated AtoM session.&lt;br /&gt;
&lt;br /&gt;
And: AtoM checks its configuration file to see if there are expected CAS attributes for user groups. If so, AtoM checks whether the user has the appropriate attribute for a given group and elevates their user authorization to become an authenticated member of one or more of these groups if this is the case (e.g. editor, translator, administrator).&lt;br /&gt;
And: When the user logs out of AtoM, they will also be automatically logged out of CAS.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Given: A user account is created on the CAS server and the user has logged into AtoM&lt;br /&gt;
&lt;br /&gt;
When: An AtoM administrator user deletes that user account in AtoM&lt;br /&gt;
&lt;br /&gt;
Then: The user is still able to log-in using their CAS account and their AtoM account is re-created&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
* [[Development/Functional_testing|Back to Functional testing]]&lt;br /&gt;
* [[Development|Back to Development]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development documentation]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Groups/NA&amp;diff=3713</id>
		<title>Community/Groups/NA</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Groups/NA&amp;diff=3713"/>
				<updated>2025-07-01T12:17:02Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Add page category and navigation footer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle: Joint US Canada Users group}}&lt;br /&gt;
[[Main Page]]  &amp;gt; [[Community]]  &amp;gt; [[Community/Groups]]  &amp;gt; Community/Groups/NA&lt;br /&gt;
&lt;br /&gt;
'''Background'''&lt;br /&gt;
&lt;br /&gt;
The Joint US-Canada AtoM Users Group began in 2020. We discuss issues of interest identified in surveys carried out of group members. To date, we have 100 members on our mailing list from the US, Canada, and a small number from Europe. Originally, we held quarterly meetings, but now we meet twice yearly using Zoom. We also have a subgroup, the New Users Group, which makes training videos for our YouTube channel. We also have a subgroup, the New Users Group, which makes training videos for our YouTube channel.&lt;br /&gt;
&lt;br /&gt;
'''Who is it for?'''&lt;br /&gt;
&lt;br /&gt;
Membership is open to anyone who is interested.&lt;br /&gt;
&lt;br /&gt;
'''Contact'''&lt;br /&gt;
To join, send an email with your name, institution, and email address to mkosta (at) uwo (dot) ca. Indicate whether you are willing to share your contact information with other Users Group members. You will then be added to the mailing list.&lt;br /&gt;
&lt;br /&gt;
'''Past presentations include'''&lt;br /&gt;
&lt;br /&gt;
November 2023: Presentations on how we use AtoM with:&lt;br /&gt;
Sr. Rebecca Abel, Sisters of St. Benedict, Indiana, John Thiesen, Bethel College, Kansas, Stephen Logsdon, Bernard Becker Medical Library, Washington University School of Medicine, Missouri, Sandra Yates, McGovern Historical Research Center, Texas Medical Center Library, Texas&lt;br /&gt;
&lt;br /&gt;
November 2023: AtoM Foundation Update with:&lt;br /&gt;
Anna Dysert, McGill University, Quebec&lt;br /&gt;
&lt;br /&gt;
March 2023: Social Networks and Archival Context (SNAC) with:&lt;br /&gt;
Dina Herbert and Jerry Simmons of NARA&lt;br /&gt;
&lt;br /&gt;
March 2023: National Finding Aid Network (NAFAN) with:&lt;br /&gt;
Adrian Turner of the California Digital Library.&lt;br /&gt;
&lt;br /&gt;
January 2023: AtoM Import Tool for Formatting Bulk Descriptions at Simon Fraser University Archives with:&lt;br /&gt;
Kelsey Poloney&lt;br /&gt;
&lt;br /&gt;
October 2022: IIIF and digital images in AtoM with:&lt;br /&gt;
Kelli Babcock, The University of Toronto&lt;br /&gt;
&lt;br /&gt;
October 2022: Archives Canada with:&lt;br /&gt;
Joanna Aiton-Kerr and Yves Lapointe, Canada Council of Archives&lt;br /&gt;
&lt;br /&gt;
June 2022 Using metadata from AtoM in Wikidata with:&lt;br /&gt;
Anna Dysert, McGill University&lt;br /&gt;
&lt;br /&gt;
March 2022 AtoM Foundation Update with:&lt;br /&gt;
Brett Lougheed, Anna McNally, Cliff Hight&lt;br /&gt;
&lt;br /&gt;
September 2021 CAAIS Study with:&lt;br /&gt;
Melissa McCarthy, Archivist, City of Edmonton, Edmonton, Alberta&lt;br /&gt;
&lt;br /&gt;
May 2021 Bulk Uploads with CSV with:&lt;br /&gt;
Jody Robinson, Archivist of the Eastern Townships Resource Centre, Bishops University. Sherbrooke, Québec&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Groups|Back to regional user groups]]&lt;br /&gt;
* [[Community|Back to Community]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Camps&amp;diff=3673</id>
		<title>Community/Camps</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Camps&amp;diff=3673"/>
				<updated>2025-04-14T12:06:51Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Upcoming AtoM Camps */ remove &amp;quot;2019&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:AtoM Camps}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Camps&lt;br /&gt;
&lt;br /&gt;
Inspired by similar events like Hydra Camp, Islandora Camp and Fedora Camp, this event is intended to provide a space for anyone interested in or currently using AtoM, to come together, learn about the platform, and share their experiences.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''Want an AtoM Camp in your area?''' We'd love to partner with you and your institution to help make it happen. See this page for more information!&lt;br /&gt;
&lt;br /&gt;
* [[Community/Camps/Organize|Organizing an AtoM Camp near you]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Upcoming AtoM Camps==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Currently we have no upcoming Camps planned - we're taking this opportunity to learn from all the feedback we've gotten! We'll be planning more Camps for 2020 and onwards. If you are interested potentially hosting a Camp, check out this page!&lt;br /&gt;
&lt;br /&gt;
* [[Community/Camps/Organize|Organizing an AtoM Camp near you]]&lt;br /&gt;
&lt;br /&gt;
==Previous AtoM Camps==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[[Community/Camps/London2019|July 15-17, 2019 - University of Westminster; London, UK]]'''&lt;br /&gt;
&lt;br /&gt;
* We returned to the United Kingdom for our fourth AtoM Camp, organized in partnership with the University of Westminster!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[[Community/Camps/UofT2018|August 2018 - University of Toronto; Toronto, ON, Canada]]'''&lt;br /&gt;
&lt;br /&gt;
* Our third AtoM Camp was hosted by the University of Toronto, from Wednesday August 29th, to Friday, August 31st, 2018.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[[Community/Camps/SJC2017|May 2017 - St. John's College; Cambridge, UK]]'''&lt;br /&gt;
&lt;br /&gt;
* Our second AtoM Camp, and the first in the United Kingdom, was hosted by St. John's College at the University of Cambridge, in Cambridge, UK from Tuesday, May 9th to Thursday, May 11th, 2017.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[[Community/Camps/SFU2017|March 2017 - Simon Fraser University; Vancouver, BC, Canada]]'''&lt;br /&gt;
&lt;br /&gt;
* The first ever AtoM Camp, which was hosted by the Simon Fraser University Archives, in Vancouver, British Columbia from Monday, March 20 to Wednesday, March 22, 2017.&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
* [[Community|Back to Community]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3667</id>
		<title>Community/Contributors</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3667"/>
				<updated>2025-03-12T12:02:47Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Code contributors}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Contributors&lt;br /&gt;
&lt;br /&gt;
On this page we'll try to gather up all the information we can about anyone who has contributed code to the AtoM project. If you've shared code that has been incorporated into a public AtoM release, we want to acknowledge your contributions! Have we missed you or someone else you know? Help us fill this page in and keep it up to date!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
'''NOTE:''' The AtoM Maintainers now track and acknowledge community code contributors in the [https://github.com/artefactual/atom/releases GitHub release notes]. The list below has not been updated since the 2.8.1 release, but is maintained here to acknowledge previous release contributors.&lt;br /&gt;
&lt;br /&gt;
Interested in contributing code to the public AtoM project? Here are some helpful links!&lt;br /&gt;
&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Development resources]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Artefactual contributors==&lt;br /&gt;
&lt;br /&gt;
Here's a list of Artefactual code contributors, past and present.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Artefactual code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)&lt;br /&gt;
|-&lt;br /&gt;
| Peter Van Garderen|| ICA-AtoM beta - [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]]&lt;br /&gt;
|-&lt;br /&gt;
| David Juhasz|| ICA-AtoM beta -&lt;br /&gt;
|-&lt;br /&gt;
| Jack Bates|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| MJ Suhonos|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| Jesús García Crespo|| ICA-AtoM beta -  [[Releases/Release_announcements/Release_2.4|Release 2.4]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Cantelon|| [[Releases/Release_announcements/Release_1.2|Release 1.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| Mike Gale|| [[Releases/Release_announcements/Release_1.3|Release 1.3]] - [[Releases/Release_announcements/Release_2.5|Release 2.5]]&lt;br /&gt;
|-&lt;br /&gt;
| Misty De Meo|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.2|Release 2.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Justin Simpson|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.0.1|Release 2.0.1]]&lt;br /&gt;
|-&lt;br /&gt;
| José Raddaoui Marín|| [[Releases/Release_announcements/Release_2.1|Release 2.1]] -&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker|| [[Releases/Release_announcements/Release_2.3|Release 2.3]] -&lt;br /&gt;
|-&lt;br /&gt;
| Douglas Cerna|| [[Releases/Release_announcements/Release_2.6|Release 2.6]] -  [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Tessa Walsh|| [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Melanie Kung|| [[Releases/Release_announcements/Release_2.7|Release 2.7]] -&lt;br /&gt;
|-&lt;br /&gt;
| Anvit Srivastav|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| TJ Taylor-James|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Sara Allain|| [[Releases/Release_announcements/Release_2.8.1|Release 2.8.1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Community contributors==&lt;br /&gt;
&lt;br /&gt;
Community developers who have submitted pull requests or patches to AtoM, which have been incorporated into a subsequent public release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Since the AtoM 2.8.2 release, we are now tracking and acknowledging community code contributors in the [https://github.com/artefactual/atom/releases GitHub release notes]. The list below is no longer being updated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Community code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)  ||  Notes&lt;br /&gt;
|-&lt;br /&gt;
|Kehan Harman || [[Releases/Release announcements/Release 2.0.0|Release 2.0.0]], [[Releases/Release announcements/Release 2.1|Release 2.1]] || [https://github.com/artefactual/atom/commits?author=kehh 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Edgar Rossil || [[Releases/Release announcements/Release 2.1|Release 2.1]]||  [https://github.com/artefactual/atom/commits?author=edgarrodsil 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Jen Whitney  || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=jwhitney 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Séamus O'Connor || [[Releases/Release announcements/Release 2.1|Release 2.1]]    || [https://github.com/artefactual/atom/commits?author=seamus-oconnor 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Hutchinson || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=timhutch 5 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]]   || [https://github.com/artefactual/atom/commits?author=sbreker 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Gioele Barabucci || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=gioele 4 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Zachary Howarth || [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=zacho 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Triggs || [[Releases/Release announcements/Release 2.2|Release 2.2]] ||3 commits ([https://github.com/artefactual/atom/commit/7d7cf2d0374183a0402de304120093c066cfef38 1], [https://github.com/artefactual/atom/commit/8d72f57ad5b6e4988016a49c35ee56c8180ebc60 2], [https://github.com/artefactual/atom/commit/f129fb01c8d80dcb4ffa6fcc33416d6645a0563b 3])&lt;br /&gt;
|-&lt;br /&gt;
| Damian Bauder || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=drbauder 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Andrew Foster || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=afoster 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| David Lung || [[Releases/Release announcements/Release 2.3|Release 2.3]] ||3 commits ([https://github.com/artefactual/atom/commit/f51c666d6378bbc0f448bc0c755faa77b564ff24 1], [https://github.com/artefactual/atom/commit/311b7a293fa045a0fd65d2dfc83b545f41966000 2], [https://github.com/artefactual/atom/commit/f8581ee3db95d84d7495f7ee75fd7a9ee0c0adf3 3])&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Mancini || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commit/d45cefcb4e85a1fa483bf25a945e9f1c5cca27a6 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Margaret Vail || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/5f83110a92acbfb0af7b58fdfb76f71357a39d0a 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Martin Malmsten || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/62123f4c3b85e731e87d7e756a1a9249e240b2391 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Darryl Friesen || [[Releases/Release announcements/Release 2.4|Release 2.4]] || 2 commits ([https://github.com/artefactual/atom/commits?author=g011um 1], [https://github.com/artefactual/atom/commit/9c71043cf2e8a1fdd300c5bbb9c7526efb721b86 2])&lt;br /&gt;
|-&lt;br /&gt;
| Jason Hildebrand || [[Releases/Release announcements/Release 2.4|Release 2.4]], [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]] || 2 commits ([https://github.com/artefactual/atom/commits?author=jasonhildebrand 1], [https://github.com/artefactual/atom/pull/1219 2])&lt;br /&gt;
|-&lt;br /&gt;
| Kenji Kobayashi || [[Releases/Release announcements/Release 2.4.1|Release 2.4.1]] || [https://github.com/artefactual/atom/commits?author=knjko 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Rohan Ferris || [[Releases/Release announcements/Release 2.6|Release 2.6]], [[Releases/Release announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=rferris 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Innes|| [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]], [[Releases/Release announcements/Release 2.7|Release 2.7]], [[Releases/Release announcements/Release 2.8.0|Release 2.8.0]] || [https://github.com/artefactual/atom/commits?author=mInnes-archives 12 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Sunny Lee || [[Releases/Release_announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=sunnywd 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Marcelo Alencar || [[Releases/Release_announcements/Release 2.8.1|Release 2.8.1]] || [https://github.com/artefactual/atom/commits?author=marceloalencar 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community|Back to the Community landing page]]&lt;br /&gt;
* [[Main Page|Back to the AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3666</id>
		<title>Community/Contributors</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3666"/>
				<updated>2025-03-12T12:02:29Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: mention page maintenance changes in opening admonition&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Code contributors}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Contributors&lt;br /&gt;
&lt;br /&gt;
On this page we'll try to gather up all the information we can about anyone who has contributed code to the AtoM project. If you've shared code that has been incorporated into a public AtoM release, we want to acknowledge your contributions! Have we missed you or someone else you know? Help us fill this page in and keep it up to date!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
'''NOTE: The AtoM Maintainers now track and acknowledge community code contributors in the [https://github.com/artefactual/atom/releases GitHub release notes]. The list below has not been updated since the 2.8.1 release, but is maintained here to acknowledge previous release contributors.&lt;br /&gt;
&lt;br /&gt;
Interested in contributing code to the public AtoM project? Here are some helpful links!&lt;br /&gt;
&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Development resources]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Artefactual contributors==&lt;br /&gt;
&lt;br /&gt;
Here's a list of Artefactual code contributors, past and present.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Artefactual code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)&lt;br /&gt;
|-&lt;br /&gt;
| Peter Van Garderen|| ICA-AtoM beta - [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]]&lt;br /&gt;
|-&lt;br /&gt;
| David Juhasz|| ICA-AtoM beta -&lt;br /&gt;
|-&lt;br /&gt;
| Jack Bates|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| MJ Suhonos|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| Jesús García Crespo|| ICA-AtoM beta -  [[Releases/Release_announcements/Release_2.4|Release 2.4]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Cantelon|| [[Releases/Release_announcements/Release_1.2|Release 1.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| Mike Gale|| [[Releases/Release_announcements/Release_1.3|Release 1.3]] - [[Releases/Release_announcements/Release_2.5|Release 2.5]]&lt;br /&gt;
|-&lt;br /&gt;
| Misty De Meo|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.2|Release 2.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Justin Simpson|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.0.1|Release 2.0.1]]&lt;br /&gt;
|-&lt;br /&gt;
| José Raddaoui Marín|| [[Releases/Release_announcements/Release_2.1|Release 2.1]] -&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker|| [[Releases/Release_announcements/Release_2.3|Release 2.3]] -&lt;br /&gt;
|-&lt;br /&gt;
| Douglas Cerna|| [[Releases/Release_announcements/Release_2.6|Release 2.6]] -  [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Tessa Walsh|| [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Melanie Kung|| [[Releases/Release_announcements/Release_2.7|Release 2.7]] -&lt;br /&gt;
|-&lt;br /&gt;
| Anvit Srivastav|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| TJ Taylor-James|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Sara Allain|| [[Releases/Release_announcements/Release_2.8.1|Release 2.8.1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Community contributors==&lt;br /&gt;
&lt;br /&gt;
Community developers who have submitted pull requests or patches to AtoM, which have been incorporated into a subsequent public release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Since the AtoM 2.8.2 release, we are now tracking and acknowledging community code contributors in the [https://github.com/artefactual/atom/releases GitHub release notes]. The list below is no longer being updated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Community code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)  ||  Notes&lt;br /&gt;
|-&lt;br /&gt;
|Kehan Harman || [[Releases/Release announcements/Release 2.0.0|Release 2.0.0]], [[Releases/Release announcements/Release 2.1|Release 2.1]] || [https://github.com/artefactual/atom/commits?author=kehh 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Edgar Rossil || [[Releases/Release announcements/Release 2.1|Release 2.1]]||  [https://github.com/artefactual/atom/commits?author=edgarrodsil 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Jen Whitney  || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=jwhitney 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Séamus O'Connor || [[Releases/Release announcements/Release 2.1|Release 2.1]]    || [https://github.com/artefactual/atom/commits?author=seamus-oconnor 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Hutchinson || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=timhutch 5 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]]   || [https://github.com/artefactual/atom/commits?author=sbreker 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Gioele Barabucci || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=gioele 4 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Zachary Howarth || [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=zacho 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Triggs || [[Releases/Release announcements/Release 2.2|Release 2.2]] ||3 commits ([https://github.com/artefactual/atom/commit/7d7cf2d0374183a0402de304120093c066cfef38 1], [https://github.com/artefactual/atom/commit/8d72f57ad5b6e4988016a49c35ee56c8180ebc60 2], [https://github.com/artefactual/atom/commit/f129fb01c8d80dcb4ffa6fcc33416d6645a0563b 3])&lt;br /&gt;
|-&lt;br /&gt;
| Damian Bauder || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=drbauder 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Andrew Foster || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=afoster 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| David Lung || [[Releases/Release announcements/Release 2.3|Release 2.3]] ||3 commits ([https://github.com/artefactual/atom/commit/f51c666d6378bbc0f448bc0c755faa77b564ff24 1], [https://github.com/artefactual/atom/commit/311b7a293fa045a0fd65d2dfc83b545f41966000 2], [https://github.com/artefactual/atom/commit/f8581ee3db95d84d7495f7ee75fd7a9ee0c0adf3 3])&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Mancini || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commit/d45cefcb4e85a1fa483bf25a945e9f1c5cca27a6 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Margaret Vail || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/5f83110a92acbfb0af7b58fdfb76f71357a39d0a 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Martin Malmsten || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/62123f4c3b85e731e87d7e756a1a9249e240b2391 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Darryl Friesen || [[Releases/Release announcements/Release 2.4|Release 2.4]] || 2 commits ([https://github.com/artefactual/atom/commits?author=g011um 1], [https://github.com/artefactual/atom/commit/9c71043cf2e8a1fdd300c5bbb9c7526efb721b86 2])&lt;br /&gt;
|-&lt;br /&gt;
| Jason Hildebrand || [[Releases/Release announcements/Release 2.4|Release 2.4]], [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]] || 2 commits ([https://github.com/artefactual/atom/commits?author=jasonhildebrand 1], [https://github.com/artefactual/atom/pull/1219 2])&lt;br /&gt;
|-&lt;br /&gt;
| Kenji Kobayashi || [[Releases/Release announcements/Release 2.4.1|Release 2.4.1]] || [https://github.com/artefactual/atom/commits?author=knjko 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Rohan Ferris || [[Releases/Release announcements/Release 2.6|Release 2.6]], [[Releases/Release announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=rferris 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Innes|| [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]], [[Releases/Release announcements/Release 2.7|Release 2.7]], [[Releases/Release announcements/Release 2.8.0|Release 2.8.0]] || [https://github.com/artefactual/atom/commits?author=mInnes-archives 12 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Sunny Lee || [[Releases/Release_announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=sunnywd 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Marcelo Alencar || [[Releases/Release_announcements/Release 2.8.1|Release 2.8.1]] || [https://github.com/artefactual/atom/commits?author=marceloalencar 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community|Back to the Community landing page]]&lt;br /&gt;
* [[Main Page|Back to the AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3665</id>
		<title>Community/Contributors</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3665"/>
				<updated>2025-03-12T12:00:10Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Community contributors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Code contributors}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Contributors&lt;br /&gt;
&lt;br /&gt;
On this page we'll try to gather up all the information we can about anyone who has contributed code to the AtoM project. If you've shared code that has been incorporated into a public AtoM release, we want to acknowledge your contributions! Have we missed you or someone else you know? Help us fill this page in and keep it up to date!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
We're also tracking our volunteer community translators on this page: [[Community/Translators|Translators]]&lt;br /&gt;
&lt;br /&gt;
Interested in contributing code to the public AtoM project? Here are some helpful links!&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Development resources]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Artefactual contributors==&lt;br /&gt;
&lt;br /&gt;
Here's a list of Artefactual code contributors, past and present.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Artefactual code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)&lt;br /&gt;
|-&lt;br /&gt;
| Peter Van Garderen|| ICA-AtoM beta - [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]]&lt;br /&gt;
|-&lt;br /&gt;
| David Juhasz|| ICA-AtoM beta -&lt;br /&gt;
|-&lt;br /&gt;
| Jack Bates|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| MJ Suhonos|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| Jesús García Crespo|| ICA-AtoM beta -  [[Releases/Release_announcements/Release_2.4|Release 2.4]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Cantelon|| [[Releases/Release_announcements/Release_1.2|Release 1.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| Mike Gale|| [[Releases/Release_announcements/Release_1.3|Release 1.3]] - [[Releases/Release_announcements/Release_2.5|Release 2.5]]&lt;br /&gt;
|-&lt;br /&gt;
| Misty De Meo|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.2|Release 2.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Justin Simpson|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.0.1|Release 2.0.1]]&lt;br /&gt;
|-&lt;br /&gt;
| José Raddaoui Marín|| [[Releases/Release_announcements/Release_2.1|Release 2.1]] -&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker|| [[Releases/Release_announcements/Release_2.3|Release 2.3]] -&lt;br /&gt;
|-&lt;br /&gt;
| Douglas Cerna|| [[Releases/Release_announcements/Release_2.6|Release 2.6]] -  [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Tessa Walsh|| [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Melanie Kung|| [[Releases/Release_announcements/Release_2.7|Release 2.7]] -&lt;br /&gt;
|-&lt;br /&gt;
| Anvit Srivastav|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| TJ Taylor-James|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Sara Allain|| [[Releases/Release_announcements/Release_2.8.1|Release 2.8.1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Community contributors==&lt;br /&gt;
&lt;br /&gt;
Community developers who have submitted pull requests or patches to AtoM, which have been incorporated into a subsequent public release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Since the AtoM 2.8.2 release, we are now tracking and acknowledging community code contributors in the [https://github.com/artefactual/atom/releases GitHub release notes]. The list below is no longer being updated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Community code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)  ||  Notes&lt;br /&gt;
|-&lt;br /&gt;
|Kehan Harman || [[Releases/Release announcements/Release 2.0.0|Release 2.0.0]], [[Releases/Release announcements/Release 2.1|Release 2.1]] || [https://github.com/artefactual/atom/commits?author=kehh 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Edgar Rossil || [[Releases/Release announcements/Release 2.1|Release 2.1]]||  [https://github.com/artefactual/atom/commits?author=edgarrodsil 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Jen Whitney  || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=jwhitney 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Séamus O'Connor || [[Releases/Release announcements/Release 2.1|Release 2.1]]    || [https://github.com/artefactual/atom/commits?author=seamus-oconnor 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Hutchinson || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=timhutch 5 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]]   || [https://github.com/artefactual/atom/commits?author=sbreker 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Gioele Barabucci || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=gioele 4 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Zachary Howarth || [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=zacho 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Triggs || [[Releases/Release announcements/Release 2.2|Release 2.2]] ||3 commits ([https://github.com/artefactual/atom/commit/7d7cf2d0374183a0402de304120093c066cfef38 1], [https://github.com/artefactual/atom/commit/8d72f57ad5b6e4988016a49c35ee56c8180ebc60 2], [https://github.com/artefactual/atom/commit/f129fb01c8d80dcb4ffa6fcc33416d6645a0563b 3])&lt;br /&gt;
|-&lt;br /&gt;
| Damian Bauder || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=drbauder 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Andrew Foster || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=afoster 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| David Lung || [[Releases/Release announcements/Release 2.3|Release 2.3]] ||3 commits ([https://github.com/artefactual/atom/commit/f51c666d6378bbc0f448bc0c755faa77b564ff24 1], [https://github.com/artefactual/atom/commit/311b7a293fa045a0fd65d2dfc83b545f41966000 2], [https://github.com/artefactual/atom/commit/f8581ee3db95d84d7495f7ee75fd7a9ee0c0adf3 3])&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Mancini || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commit/d45cefcb4e85a1fa483bf25a945e9f1c5cca27a6 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Margaret Vail || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/5f83110a92acbfb0af7b58fdfb76f71357a39d0a 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Martin Malmsten || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/62123f4c3b85e731e87d7e756a1a9249e240b2391 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Darryl Friesen || [[Releases/Release announcements/Release 2.4|Release 2.4]] || 2 commits ([https://github.com/artefactual/atom/commits?author=g011um 1], [https://github.com/artefactual/atom/commit/9c71043cf2e8a1fdd300c5bbb9c7526efb721b86 2])&lt;br /&gt;
|-&lt;br /&gt;
| Jason Hildebrand || [[Releases/Release announcements/Release 2.4|Release 2.4]], [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]] || 2 commits ([https://github.com/artefactual/atom/commits?author=jasonhildebrand 1], [https://github.com/artefactual/atom/pull/1219 2])&lt;br /&gt;
|-&lt;br /&gt;
| Kenji Kobayashi || [[Releases/Release announcements/Release 2.4.1|Release 2.4.1]] || [https://github.com/artefactual/atom/commits?author=knjko 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Rohan Ferris || [[Releases/Release announcements/Release 2.6|Release 2.6]], [[Releases/Release announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=rferris 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Innes|| [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]], [[Releases/Release announcements/Release 2.7|Release 2.7]], [[Releases/Release announcements/Release 2.8.0|Release 2.8.0]] || [https://github.com/artefactual/atom/commits?author=mInnes-archives 12 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Sunny Lee || [[Releases/Release_announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=sunnywd 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Marcelo Alencar || [[Releases/Release_announcements/Release 2.8.1|Release 2.8.1]] || [https://github.com/artefactual/atom/commits?author=marceloalencar 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community|Back to the Community landing page]]&lt;br /&gt;
* [[Main Page|Back to the AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3664</id>
		<title>Community/Contributors</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Contributors&amp;diff=3664"/>
				<updated>2025-03-12T11:59:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Community contributors */ add admonition noting that this page is no longer active&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Code contributors}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Contributors&lt;br /&gt;
&lt;br /&gt;
On this page we'll try to gather up all the information we can about anyone who has contributed code to the AtoM project. If you've shared code that has been incorporated into a public AtoM release, we want to acknowledge your contributions! Have we missed you or someone else you know? Help us fill this page in and keep it up to date!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
We're also tracking our volunteer community translators on this page: [[Community/Translators|Translators]]&lt;br /&gt;
&lt;br /&gt;
Interested in contributing code to the public AtoM project? Here are some helpful links!&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Development resources]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Artefactual contributors==&lt;br /&gt;
&lt;br /&gt;
Here's a list of Artefactual code contributors, past and present.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Artefactual code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)&lt;br /&gt;
|-&lt;br /&gt;
| Peter Van Garderen|| ICA-AtoM beta - [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]]&lt;br /&gt;
|-&lt;br /&gt;
| David Juhasz|| ICA-AtoM beta -&lt;br /&gt;
|-&lt;br /&gt;
| Jack Bates|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| MJ Suhonos|| ICA-AtoM beta - [[Releases/Release_announcements/Release_1.1|Release 1.1]]&lt;br /&gt;
|-&lt;br /&gt;
| Jesús García Crespo|| ICA-AtoM beta -  [[Releases/Release_announcements/Release_2.4|Release 2.4]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Cantelon|| [[Releases/Release_announcements/Release_1.2|Release 1.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| Mike Gale|| [[Releases/Release_announcements/Release_1.3|Release 1.3]] - [[Releases/Release_announcements/Release_2.5|Release 2.5]]&lt;br /&gt;
|-&lt;br /&gt;
| Misty De Meo|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.2|Release 2.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Justin Simpson|| [[Releases/Release_announcements/Release_2.0.0|Release 2.0.0]] -  [[Releases/Release_announcements/Release_2.0.1|Release 2.0.1]]&lt;br /&gt;
|-&lt;br /&gt;
| José Raddaoui Marín|| [[Releases/Release_announcements/Release_2.1|Release 2.1]] -&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker|| [[Releases/Release_announcements/Release_2.3|Release 2.3]] -&lt;br /&gt;
|-&lt;br /&gt;
| Douglas Cerna|| [[Releases/Release_announcements/Release_2.6|Release 2.6]] -  [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Tessa Walsh|| [[Releases/Release_announcements/Release_2.7|Release 2.7]]&lt;br /&gt;
|-&lt;br /&gt;
| Melanie Kung|| [[Releases/Release_announcements/Release_2.7|Release 2.7]] -&lt;br /&gt;
|-&lt;br /&gt;
| Anvit Srivastav|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]] -&lt;br /&gt;
|-&lt;br /&gt;
| TJ Taylor-James|| [[Releases/Release_announcements/Release_2.7.2|Release 2.7.2]]&lt;br /&gt;
|-&lt;br /&gt;
| Sara Allain|| [[Releases/Release_announcements/Release_2.8.1|Release 2.8.1]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Community contributors==&lt;br /&gt;
&lt;br /&gt;
Community developers who have submitted pull requests or patches to AtoM, which have been incorporated into a subsequent public release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Since the AtoM 2.8.2 release, we are now tracking and acknowledging community code contributors in the [GitHub release notes](https://github.com/artefactual/atom/releases). The list below is no longer being updated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color:#ffffff;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;caption-side:top; color:#e76700;&amp;quot;|''Community code contributors''&lt;br /&gt;
!  Name   || AtoM version(s)  ||  Notes&lt;br /&gt;
|-&lt;br /&gt;
|Kehan Harman || [[Releases/Release announcements/Release 2.0.0|Release 2.0.0]], [[Releases/Release announcements/Release 2.1|Release 2.1]] || [https://github.com/artefactual/atom/commits?author=kehh 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Edgar Rossil || [[Releases/Release announcements/Release 2.1|Release 2.1]]||  [https://github.com/artefactual/atom/commits?author=edgarrodsil 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Jen Whitney  || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=jwhitney 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Séamus O'Connor || [[Releases/Release announcements/Release 2.1|Release 2.1]]    || [https://github.com/artefactual/atom/commits?author=seamus-oconnor 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Hutchinson || [[Releases/Release announcements/Release 2.1|Release 2.1]]   || [https://github.com/artefactual/atom/commits?author=timhutch 5 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Steve Breker || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]]   || [https://github.com/artefactual/atom/commits?author=sbreker 3 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Gioele Barabucci || [[Releases/Release announcements/Release 2.1|Release 2.1]], [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=gioele 4 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Zachary Howarth || [[Releases/Release announcements/Release 2.2|Release 2.2]] || [https://github.com/artefactual/atom/commits?author=zacho 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Triggs || [[Releases/Release announcements/Release 2.2|Release 2.2]] ||3 commits ([https://github.com/artefactual/atom/commit/7d7cf2d0374183a0402de304120093c066cfef38 1], [https://github.com/artefactual/atom/commit/8d72f57ad5b6e4988016a49c35ee56c8180ebc60 2], [https://github.com/artefactual/atom/commit/f129fb01c8d80dcb4ffa6fcc33416d6645a0563b 3])&lt;br /&gt;
|-&lt;br /&gt;
| Damian Bauder || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=drbauder 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Andrew Foster || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commits?author=afoster 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| David Lung || [[Releases/Release announcements/Release 2.3|Release 2.3]] ||3 commits ([https://github.com/artefactual/atom/commit/f51c666d6378bbc0f448bc0c755faa77b564ff24 1], [https://github.com/artefactual/atom/commit/311b7a293fa045a0fd65d2dfc83b545f41966000 2], [https://github.com/artefactual/atom/commit/f8581ee3db95d84d7495f7ee75fd7a9ee0c0adf3 3])&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Mancini || [[Releases/Release announcements/Release 2.3|Release 2.3]] || [https://github.com/artefactual/atom/commit/d45cefcb4e85a1fa483bf25a945e9f1c5cca27a6 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Margaret Vail || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/5f83110a92acbfb0af7b58fdfb76f71357a39d0a 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Martin Malmsten || [[Releases/Release announcements/Release 2.4|Release 2.4]] || [https://github.com/artefactual/atom/commit/62123f4c3b85e731e87d7e756a1a9249e240b2391 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Darryl Friesen || [[Releases/Release announcements/Release 2.4|Release 2.4]] || 2 commits ([https://github.com/artefactual/atom/commits?author=g011um 1], [https://github.com/artefactual/atom/commit/9c71043cf2e8a1fdd300c5bbb9c7526efb721b86 2])&lt;br /&gt;
|-&lt;br /&gt;
| Jason Hildebrand || [[Releases/Release announcements/Release 2.4|Release 2.4]], [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]] || 2 commits ([https://github.com/artefactual/atom/commits?author=jasonhildebrand 1], [https://github.com/artefactual/atom/pull/1219 2])&lt;br /&gt;
|-&lt;br /&gt;
| Kenji Kobayashi || [[Releases/Release announcements/Release 2.4.1|Release 2.4.1]] || [https://github.com/artefactual/atom/commits?author=knjko 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Rohan Ferris || [[Releases/Release announcements/Release 2.6|Release 2.6]], [[Releases/Release announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=rferris 2 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Innes|| [[Releases/Release announcements/Release 2.6.2|Release 2.6.2]], [[Releases/Release announcements/Release 2.7|Release 2.7]], [[Releases/Release announcements/Release 2.8.0|Release 2.8.0]] || [https://github.com/artefactual/atom/commits?author=mInnes-archives 12 commits]&lt;br /&gt;
|-&lt;br /&gt;
| Sunny Lee || [[Releases/Release_announcements/Release 2.7.2|Release 2.7.2]] || [https://github.com/artefactual/atom/commits?author=sunnywd 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
| Marcelo Alencar || [[Releases/Release_announcements/Release 2.8.1|Release 2.8.1]] || [https://github.com/artefactual/atom/commits?author=marceloalencar 1 commit]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community|Back to the Community landing page]]&lt;br /&gt;
* [[Main Page|Back to the AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3621</id>
		<title>Community/Community resources/Development</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3621"/>
				<updated>2024-09-10T12:12:29Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* PeaceWorks MAID plugins */ fix formatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Community development}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; [[Community/Community resources]] &amp;gt; Community/Community resources/Development&lt;br /&gt;
&lt;br /&gt;
In this section of the wiki, we'll add links to custom patches, plugins, themes, images, forks, and other resources developed by community users and publicly available for developers to explore and work with.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
'''PLEASE NOTE''': Artefactual does '''not''' test these features and modules developed by AtoM community members. As such, we cannot offer support for them, nor can we speak as to their security, quality, performance, or compatibility with the latest public releases. If you intend to make use of these features, do so at your own risk. We strongly recommend studying the code prior to use, and deploying any community-developed features in a test environment where they can be properly evaluated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Have you developed custom code for your AtoM installation? Let us know! And... why not consider contributing your code to the public project? That way, we maintain the code for you through future releases, and the entire community benefits from your work! Here are some links to get you started:&lt;br /&gt;
* [[Development/Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Other developer resources in our wiki]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.7 Drupal 9 feed module==&lt;br /&gt;
&lt;br /&gt;
Developed by members of the University of Toronto (U of T) Libraries, this AtoM Drupal importer is a Drupal 9 module based on the AtoM API. The module is used at U of T to facilitate publishing archival description once, in U of T's [https://discoverarchives.library.utoronto.ca/ Discover Archives (AtoM)] finding aid database, after which it pulls description data into Drupal as Nodes and Taxonomies. This data can then generate a searchable collections list (A-Z) in Drupal as well as a Drupal page per top-level fonds/collections. When data in the linked AtoM instance is updated or new data is added, the module can also fetch and update the Drupal data at a designated frequency.&lt;br /&gt;
&lt;br /&gt;
The goal of the module is to reuse published AtoM description metadata in a more end-user-friendly Drupal website to facilitate &amp;quot;general user&amp;quot; browse/discovery of top-level descriptions on the University's Drupal-based departmental websites, where users may not normally encounter the archival AtoM instance.&lt;br /&gt;
&lt;br /&gt;
You can see an example of the module in use on the U of T's [https://media-archives.library.utoronto.ca/archival-collections Media Commons Archives Drupal website ], displaying data from their [https://discoverarchives.library.utoronto.ca/index.php/university-of-toronto-media-commons AtoM descriptions].&lt;br /&gt;
&lt;br /&gt;
You can find this plugin at:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/utlib/drupal_atom&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It has been confirmed to work with AtoM 2.7.x.&lt;br /&gt;
&lt;br /&gt;
This work was originally shared in the AtoM User Forum on November 16, 2023:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/g/ica-atom-users/c/aCAdGKdFgNQ/m/E14KAUOKBAAJ&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Initial module planning, creation, and development included:&lt;br /&gt;
&lt;br /&gt;
* Rachel Beattie, Assistant Media Archivist&lt;br /&gt;
* Gordon Belray, Information Architect&lt;br /&gt;
* Andy Foster, Senior Software Engineer&lt;br /&gt;
* Lillian Hogendoorn, Curator of Digital Experience&lt;br /&gt;
* Bilal Khalid, Manager of Digital Library Applications&lt;br /&gt;
* Sunny Lee, Digital Initiatives Programmer Analyst&lt;br /&gt;
* Christina Stewart, Assistant Media Archivist&lt;br /&gt;
* Chul Hee Yoon, Project Application Programmer Analyst&lt;br /&gt;
* Kelli Babcock, Digital Initiatives Librarian&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.4 Drupal front-end display bridge==&lt;br /&gt;
&lt;br /&gt;
[https://github.com/andreaem Michael Andreae] of the University of Toronto has created a fork of Drupal's Views Database Connector that has been modified to work as a bridge for AtoM, so that Drupal can be used as a public-facing front-end. From the README on the GitHub project:&lt;br /&gt;
&lt;br /&gt;
''Views Database Connector is a powerful module that gives Views full access to external database tables found in the settings for your Drupal installation. With this module, you can setup a view around any table in any database configuration. This can be extremely useful to pull external data from a database to show to your users in a view.''&lt;br /&gt;
&lt;br /&gt;
''The Drupal AtoM connector is a non generalized version of Views Database Connector, VDC was just used as a template. In Drupal you can create blocks and add whatever sections you need based on an object.''&lt;br /&gt;
&lt;br /&gt;
''For example adding in a fonds you can link another view in fields of notes types and then link based on id. Because there can be multiple notes etc... on one record it was easier to add the relations in the Drupal View rather than in the Database Connector.''&lt;br /&gt;
&lt;br /&gt;
According to notes on the README, this bridge has only been tested with AtoM version 2.4.0 - 156.&lt;br /&gt;
&lt;br /&gt;
The code, along with basic installation instructions, can be found on GitHub, here:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/Vic-Lib/DrupalAtoMViewer&lt;br /&gt;
&lt;br /&gt;
==AtoM Linux Installer scripts==&lt;br /&gt;
&lt;br /&gt;
Community user Guillermo Castellano Casas has developed some automated bash installation scripts that can be used to install AtoM 2.4, 2.5, or 2.6. Below are the GNU/Linux distributions currently supported for each AtoM version:&lt;br /&gt;
&lt;br /&gt;
* 2.6: Ubuntu 18.04, Debian 10.&lt;br /&gt;
* 2.5: Ubuntu 16.04/18.04, Debian 9.&lt;br /&gt;
* 2.4: Ubuntu 16.04.&lt;br /&gt;
&lt;br /&gt;
* The GitLab repository where the scripts and basic usage instructions can be found: [https://gitlab.com/guillearch/atom-installer here]&lt;br /&gt;
* A [https://gitlab.com/guillearch/atom-installer/blob/master/contributing.md contributor's guide] if you'd like to help improve the installers!&lt;br /&gt;
* The AtoM [https://groups.google.com/d/msg/ica-atom-users/xy4Fha_OUe4/gVJBlHSWBgAJ user forum post] where these were first shared with the AtoM community (September 2019)&lt;br /&gt;
&lt;br /&gt;
==AtoM virtual machines==&lt;br /&gt;
&lt;br /&gt;
Community user [https://github.com/ricardodepinho Ricardo Pinho] has prepared a webite, [https://atom-vm.com/store atom-vm.com], where he is sharing production-ready virtual machine (VM) images of AtoM releases. Intended for use either as local development environments or in production for small to medium archives, these VMs are built using the recommended AtoM [https://www.accesstomemory.org/docs/latest/admin-manual/installation/linux/ubuntu-bionic/ installation instructions].&lt;br /&gt;
&lt;br /&gt;
As of November 2023 the site currently hosts Virtual Machines for:&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.5.4|(Release 2.5.4)]] -  [https://atom-vm.com/atom-vm-2-5-4/ AtoM-VM 2.5.4];&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.6.4|(Release 2.6.4)]] -  [https://atom-vm.com/atom-vm-2-6-4/ AtoM-VM 2.6.4];&lt;br /&gt;
&lt;br /&gt;
Other versions will be added in the future.&lt;br /&gt;
&lt;br /&gt;
Ricardo asks for a small donation to support the site and future releases. To run the VMs you will first need to install any Virtual Machine player able to import the standard ovf and vmdk file format or run directly from a vmx file - examples include [https://www.virtualbox.org/wiki/Downloads Virtualbox] or the free [https://www.vmware.com/go/downloadplayer VMWare Player]. At this time, the current release of AtoM-VM runs only on 64-bit computers (x86-amd64). For more information, see:&lt;br /&gt;
&lt;br /&gt;
* [https://atom-vm.com atom-vm.com]&lt;br /&gt;
&lt;br /&gt;
==CENDARI Shibboleth authentication plugin==&lt;br /&gt;
&lt;br /&gt;
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an &amp;quot;''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The plugin was developed against AtoM 2.1, and has had compatibility updates for 2.3. In 2019, a community user has also reported success in the [https://groups.google.com/d/msg/ica-atom-users/xZeV1VAvJuM/rhvI7n_GBwAJ User forum] using this plugin with a 2.4.1 release. Another user forked the plugin, added a few additional commit (details [https://github.com/CENDARI/sfDariahShibUserPlugin/compare/master...kstatelibraries:sfDariahShibUserPlugin:ksul-shibconfig here] and [https://github.com/CENDARI/sfDariahShibUserPlugin/pulls here]), and reports it working with those changes in a 2.6.4 release. Status of testing against other releases is unknown.&lt;br /&gt;
&lt;br /&gt;
The original plugin development was done by [https://github.com/schildwaechter Carsten Thiel], primarily between November and December of 2014.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]&lt;br /&gt;
* [http://www.cendari.eu/sites/default/files/CENDARI%20technical%20documentation.pdf Plugin documentation]&lt;br /&gt;
&lt;br /&gt;
==PeaceWorks MAID plugins ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE: As of 2024-09, these plugins have been upgraded to work with 2.8.x AtoM installations'''&lt;br /&gt;
&lt;br /&gt;
In March of 2015, [http://www.peaceworks.ca/ PeaceWorks Technology Solutions] helped to launch [http://archives.mhsc.ca/ MAID] (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada  which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce &amp;quot;shopping cart&amp;quot; plugin for purchasing prints of images available in MAID; an image carousel for the home page; integration with [http://www.tinymce.com/ TinyMCE] to add a [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages); and the ability to upload a different watermark (to be applied to digital object derivatives) for each institution. More details on each below.&lt;br /&gt;
&lt;br /&gt;
===eCommerce plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
According to the [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md plugin documentation's] Overview section, &amp;quot;This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).&lt;br /&gt;
&lt;br /&gt;
Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = &amp;quot;Disallow,&amp;quot; a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/ecommerce PeaceWorks GitHub AtoM fork, eCommerce branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md eCommerce plugin documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID], where you can see the shopping cart in action&lt;br /&gt;
&lt;br /&gt;
MAID has also prepared a summary description of the plugin's functionality, available as a PDF here:&lt;br /&gt;
&lt;br /&gt;
* [[File:Ecommerce-MAID.pdf]] (PDF, approx 431KB)&lt;br /&gt;
&lt;br /&gt;
===Home page carousel plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/carousel PeaceWorks GitHub AtoM fork, Carousel branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/carousel/plugins/sfCarouselPlugin/README.md Carousel README documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID] homepage, where you can see the carousel in action&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===TinyMCE visual editor integration for editing static pages===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
[http://www.tinymce.com/ TinyMCE] is &amp;quot;'' a platform independent web based Javascript HTML [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor control released as Open Source under LGPL,''&amp;quot; that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/tinymce PeaceWorks GitHub AtoM fork, TinyMCE branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/tinymce/README_tinymce.md TinyMCE README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Per-institution watermarks for digital objects===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], between July 2014 and March 2015 (primarily in July 2014). At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
AtoM includes the little-known ability to apply a watermark to uploaded photos. However there is only provision for a single global watermark which is applied to all images. This customization allows each institution to have their own watermark, and institutional watermarks can be uploaded and managed via the user interface, in the archival institution's &amp;quot;Edit theme&amp;quot; page. Uploading a new watermark will not affect photos already present in AtoM, but AtoM does provide a way for a developer to cause all watermarks to be re-applied (see “Regenerating Derivatives” in the Command-line tools section of the Administrator's Manual of the [https://www.accesstomemory.org/docs AtoM documentation] for more details).&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/multiple-watermarks Peaceworks GitHub AtoM fork, multiple-watermarks branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/commit/6e1e9e9e4bd4c2df5bf4da7b4063e4c739031fb4 the commit with the changes]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/multiple-watermarks/README_watermarks.md Multiple watermarks README documentation]&lt;br /&gt;
&lt;br /&gt;
==Docker and AtoM==&lt;br /&gt;
&lt;br /&gt;
Two different community developers have combined AtoM with [https://www.docker.com/ Docker], an open, container-based virtualization platform for distributed applications. Details below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Did you know? As of the AtoM 2.3 release, the AtoM project now has its own officially supported Docker Compose development environment! See:&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/dev-manual/env/compose/&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Files===&lt;br /&gt;
&lt;br /&gt;
Created by Dominic Boisvert ([https://github.com/DominicBoisvert @DominicBoisvert]) for use in an archival course taught at the University of Montreal, Boisvert has shared Docker files for [[Releases/Release_announcements/Release_2.1.2|AtoM 2.1.2]], and [[Releases/Release_announcements/Release_2.1.1,_2.0.2,_1.3.2|ICA-AtoM 1.3.2]], including simple installation instructions (written in French):&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/ARV3054/docker-atom AtoM 2.1.2 Dockerfile]&lt;br /&gt;
* [https://github.com/ARV3054/docker-ica-atom ICA-AtoM 1.3.2 Dockerfile]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Compose recipe===&lt;br /&gt;
&lt;br /&gt;
Created by John Fink ([https://github.com/jbfink @jbfink]), this is a Docker [https://docs.docker.com/compose/ Compose] recipe for AtoM. Compose is described by Docker as &amp;quot;''a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The developer adds, &amp;quot;''Note that I've only tested this on 64bit native Linux using Docker directly, so if you're using boot2docker or a VM things might be different.''&amp;quot; For further configuration information and troubleshooting, see the [https://github.com/jbfink/docker-atom/blob/master/README.md README] provided.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jbfink/docker-atom Docker Compose recipe for AtoM - GitHub repository]&lt;br /&gt;
* [https://github.com/jbfink/docker-atom/blob/master/README.md README file for configuration and troubleshooting]&lt;br /&gt;
* [https://groups.google.com/d/topic/ica-atom-users/p7ACO3jKZv8/discussion Related AtoM User Forum thread]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Image===&lt;br /&gt;
&lt;br /&gt;
Created by the Governo Regional Azores, this is a Docker image of AtoM 2.2.0. Note that it does not currently include the MySQL database required for AtoM, which needs to be linked.&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/governoregionalazores/atom-accesstomemory/ Link on the DockerHub page]&lt;br /&gt;
* [https://github.com/GovernoRegionalAcores/atom-accesstomemory GitHub repository for the Docker image]&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.3 ISO image - ready for use on a flash drive==&lt;br /&gt;
&lt;br /&gt;
A group of archivists in Brazil, the [http://documentosarquivisticosdigitais.blogspot.com.br/ Grupo de Pesquisa do CNPq GED/A e Patrimônio Documental Arquivístico], have used the  [https://launchpad.net/systemback SystemBack] backup management tool to prepare an ISO image of AtoM 2.3 that can be launched from a flash drive. From the related blog post:&lt;br /&gt;
&lt;br /&gt;
* Operating System: Ubuntu 16.04 - 64 Bits;&lt;br /&gt;
* Size: 3GBs&lt;br /&gt;
* Format: sblive&lt;br /&gt;
* Remasterer: SystemBack&lt;br /&gt;
&lt;br /&gt;
&amp;quot;''After Download, use SystemBack to write to the flash drive, and use with a system boot that is persistent - your data stored in the session will remain available in the next.'&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux password: &amp;lt;code&amp;gt;icaatom99&amp;lt;/code&amp;gt;&lt;br /&gt;
* User in AtoM (ICA-AtoM): &amp;lt;code&amp;gt;GrupoCNPqDocsDigitais@gmail.com&amp;lt;/code&amp;gt;&lt;br /&gt;
* Password in AtoM (ICA-AtoM):  &amp;lt;code&amp;gt;icaatom&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Blog post here (Brazilian Portuguese): http://documentosarquivisticosdigitais.blogspot.com.br/2017/01/o-grupo-de-pesquisa-cnpq-ufsm-geda.html&lt;br /&gt;
* Download link: https://drive.google.com/file/d/0BwBRoubj23bpNWZLSVhtSmNoN00/view?usp=sharing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==HTML scrub scripts for other entities==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''UPDATE''': Thanks to collaboration among several community members, this work has now been added to the existing AtoM task, and merged into the 2.4 release. For more information, see:&lt;br /&gt;
&lt;br /&gt;
* Source pull request: https://github.com/artefactual/atom/pull/568&lt;br /&gt;
&lt;br /&gt;
Thank you to Clara Rosales and Darryl Friesen for this collaborative enhancement!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In [[Releases/Release_announcements/Release_2.2|Release 2.2]] we introduced [[Releases/Release_announcements/Release_2.2#Security_enhancement:_HTML_escaping_to_prevent_XSS_exploits|HTML escaping]] as part of the security enhancements included in the release. Since some users might have legacy HTML content in their descriptions, we also included a command-line task that would allow users to scrub legacy HTML from archival descriptions - see the related documentation [https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields here].&lt;br /&gt;
&lt;br /&gt;
However, this task '''only''' currently works for archival descriptions. To help clean up other entities, users from Brazil have adapted versions of the original task that can be run for actors, notes, repository records, and rights records. These were posted in the AtoM user forum on 2017-05-22:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/d/msg/ica-atom-users/_xdBK0ucegg/RQnNM5DKBAAJ&lt;br /&gt;
&lt;br /&gt;
Artefactual has not tested these scripts. To run them:&lt;br /&gt;
&lt;br /&gt;
# Download and unzip the rar file attached to the message in the user forum.&lt;br /&gt;
# Place the scripts in a directory accessible from the root directory of your AtoM instance, such as a new tmp directory.&lt;br /&gt;
# Use the tools:run command to run each script. For example, for the script to clean up HTML in authority records:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
php symfony tools:run tmp/actor_i18n.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effects will be similar to what is described for the command-line task:&lt;br /&gt;
&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields&lt;br /&gt;
&lt;br /&gt;
==Custom theme plugins==&lt;br /&gt;
&lt;br /&gt;
This section will be a place for community members to share any theme plugins they have developed! Note that we have [https://www.accesstomemory.org/docs/latest/admin-manual/customization/theming/ documentation] and [https://www.slideshare.net/accesstomemory/creating-custom-themes-in-atom slides] to help developers get started with theming - be sure to check them out, as well as our general [[Development#Development_resources|Development resources]]!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Alberto Pereira's custom theme===&lt;br /&gt;
&lt;br /&gt;
Developed against AtoM 2.5, this custom theme by [https://github.com/albertopereira Alberto Pereira] includes a number of customizations, including the following change notes from the developer:&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;Popular this week&amp;quot; box gets a bigger highlight;&lt;br /&gt;
* The first element of the &amp;quot;Popular this week&amp;quot; also shows its thumbnail (if it exists);&lt;br /&gt;
* Overall style changes (including new icons);&lt;br /&gt;
* A Blog! (well, sort of), it uses static pages to mimic a blog. You just have to create a page called &amp;quot;Blog&amp;quot;, and any other page that has a title that starts with &amp;quot;_X-&amp;quot;, will automatically be listed in the blog page (e.g. &amp;quot;_X-A post title&amp;quot;);&lt;br /&gt;
* You don't have to chose between the sidebar treeview and the full width treeview. You can have both. There's a new link, right below the sidebar treeview, that opens a popup with the full width treeview.&lt;br /&gt;
&lt;br /&gt;
[[File:arAPPlugin-theme.jpg|center|700px|thumb| An image of the arAPPlugin theme]]&lt;br /&gt;
&lt;br /&gt;
You can find the theme and more details at the following links:&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/albertopereira/arAPPlugin Theme code, images, and installation instructions on GitHub]&lt;br /&gt;
* [https://groups.google.com/d/msg/ica-atom-users/OpX9CvU0pAY/3sOgeJavBAAJ AtoM user forum announcement] (2019-02-27)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Community resources|Back to Community resources]]&lt;br /&gt;
* [[Community|Back to Community landing page]]&lt;br /&gt;
* [[Main Page|Main AtoM wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3620</id>
		<title>Community/Community resources/Development</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3620"/>
				<updated>2024-09-10T12:12:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* PeaceWorks MAID plugins */ Add note about recent updates to 2.8.x&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Community development}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; [[Community/Community resources]] &amp;gt; Community/Community resources/Development&lt;br /&gt;
&lt;br /&gt;
In this section of the wiki, we'll add links to custom patches, plugins, themes, images, forks, and other resources developed by community users and publicly available for developers to explore and work with.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
'''PLEASE NOTE''': Artefactual does '''not''' test these features and modules developed by AtoM community members. As such, we cannot offer support for them, nor can we speak as to their security, quality, performance, or compatibility with the latest public releases. If you intend to make use of these features, do so at your own risk. We strongly recommend studying the code prior to use, and deploying any community-developed features in a test environment where they can be properly evaluated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Have you developed custom code for your AtoM installation? Let us know! And... why not consider contributing your code to the public project? That way, we maintain the code for you through future releases, and the entire community benefits from your work! Here are some links to get you started:&lt;br /&gt;
* [[Development/Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Other developer resources in our wiki]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.7 Drupal 9 feed module==&lt;br /&gt;
&lt;br /&gt;
Developed by members of the University of Toronto (U of T) Libraries, this AtoM Drupal importer is a Drupal 9 module based on the AtoM API. The module is used at U of T to facilitate publishing archival description once, in U of T's [https://discoverarchives.library.utoronto.ca/ Discover Archives (AtoM)] finding aid database, after which it pulls description data into Drupal as Nodes and Taxonomies. This data can then generate a searchable collections list (A-Z) in Drupal as well as a Drupal page per top-level fonds/collections. When data in the linked AtoM instance is updated or new data is added, the module can also fetch and update the Drupal data at a designated frequency.&lt;br /&gt;
&lt;br /&gt;
The goal of the module is to reuse published AtoM description metadata in a more end-user-friendly Drupal website to facilitate &amp;quot;general user&amp;quot; browse/discovery of top-level descriptions on the University's Drupal-based departmental websites, where users may not normally encounter the archival AtoM instance.&lt;br /&gt;
&lt;br /&gt;
You can see an example of the module in use on the U of T's [https://media-archives.library.utoronto.ca/archival-collections Media Commons Archives Drupal website ], displaying data from their [https://discoverarchives.library.utoronto.ca/index.php/university-of-toronto-media-commons AtoM descriptions].&lt;br /&gt;
&lt;br /&gt;
You can find this plugin at:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/utlib/drupal_atom&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It has been confirmed to work with AtoM 2.7.x.&lt;br /&gt;
&lt;br /&gt;
This work was originally shared in the AtoM User Forum on November 16, 2023:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/g/ica-atom-users/c/aCAdGKdFgNQ/m/E14KAUOKBAAJ&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Initial module planning, creation, and development included:&lt;br /&gt;
&lt;br /&gt;
* Rachel Beattie, Assistant Media Archivist&lt;br /&gt;
* Gordon Belray, Information Architect&lt;br /&gt;
* Andy Foster, Senior Software Engineer&lt;br /&gt;
* Lillian Hogendoorn, Curator of Digital Experience&lt;br /&gt;
* Bilal Khalid, Manager of Digital Library Applications&lt;br /&gt;
* Sunny Lee, Digital Initiatives Programmer Analyst&lt;br /&gt;
* Christina Stewart, Assistant Media Archivist&lt;br /&gt;
* Chul Hee Yoon, Project Application Programmer Analyst&lt;br /&gt;
* Kelli Babcock, Digital Initiatives Librarian&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.4 Drupal front-end display bridge==&lt;br /&gt;
&lt;br /&gt;
[https://github.com/andreaem Michael Andreae] of the University of Toronto has created a fork of Drupal's Views Database Connector that has been modified to work as a bridge for AtoM, so that Drupal can be used as a public-facing front-end. From the README on the GitHub project:&lt;br /&gt;
&lt;br /&gt;
''Views Database Connector is a powerful module that gives Views full access to external database tables found in the settings for your Drupal installation. With this module, you can setup a view around any table in any database configuration. This can be extremely useful to pull external data from a database to show to your users in a view.''&lt;br /&gt;
&lt;br /&gt;
''The Drupal AtoM connector is a non generalized version of Views Database Connector, VDC was just used as a template. In Drupal you can create blocks and add whatever sections you need based on an object.''&lt;br /&gt;
&lt;br /&gt;
''For example adding in a fonds you can link another view in fields of notes types and then link based on id. Because there can be multiple notes etc... on one record it was easier to add the relations in the Drupal View rather than in the Database Connector.''&lt;br /&gt;
&lt;br /&gt;
According to notes on the README, this bridge has only been tested with AtoM version 2.4.0 - 156.&lt;br /&gt;
&lt;br /&gt;
The code, along with basic installation instructions, can be found on GitHub, here:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/Vic-Lib/DrupalAtoMViewer&lt;br /&gt;
&lt;br /&gt;
==AtoM Linux Installer scripts==&lt;br /&gt;
&lt;br /&gt;
Community user Guillermo Castellano Casas has developed some automated bash installation scripts that can be used to install AtoM 2.4, 2.5, or 2.6. Below are the GNU/Linux distributions currently supported for each AtoM version:&lt;br /&gt;
&lt;br /&gt;
* 2.6: Ubuntu 18.04, Debian 10.&lt;br /&gt;
* 2.5: Ubuntu 16.04/18.04, Debian 9.&lt;br /&gt;
* 2.4: Ubuntu 16.04.&lt;br /&gt;
&lt;br /&gt;
* The GitLab repository where the scripts and basic usage instructions can be found: [https://gitlab.com/guillearch/atom-installer here]&lt;br /&gt;
* A [https://gitlab.com/guillearch/atom-installer/blob/master/contributing.md contributor's guide] if you'd like to help improve the installers!&lt;br /&gt;
* The AtoM [https://groups.google.com/d/msg/ica-atom-users/xy4Fha_OUe4/gVJBlHSWBgAJ user forum post] where these were first shared with the AtoM community (September 2019)&lt;br /&gt;
&lt;br /&gt;
==AtoM virtual machines==&lt;br /&gt;
&lt;br /&gt;
Community user [https://github.com/ricardodepinho Ricardo Pinho] has prepared a webite, [https://atom-vm.com/store atom-vm.com], where he is sharing production-ready virtual machine (VM) images of AtoM releases. Intended for use either as local development environments or in production for small to medium archives, these VMs are built using the recommended AtoM [https://www.accesstomemory.org/docs/latest/admin-manual/installation/linux/ubuntu-bionic/ installation instructions].&lt;br /&gt;
&lt;br /&gt;
As of November 2023 the site currently hosts Virtual Machines for:&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.5.4|(Release 2.5.4)]] -  [https://atom-vm.com/atom-vm-2-5-4/ AtoM-VM 2.5.4];&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.6.4|(Release 2.6.4)]] -  [https://atom-vm.com/atom-vm-2-6-4/ AtoM-VM 2.6.4];&lt;br /&gt;
&lt;br /&gt;
Other versions will be added in the future.&lt;br /&gt;
&lt;br /&gt;
Ricardo asks for a small donation to support the site and future releases. To run the VMs you will first need to install any Virtual Machine player able to import the standard ovf and vmdk file format or run directly from a vmx file - examples include [https://www.virtualbox.org/wiki/Downloads Virtualbox] or the free [https://www.vmware.com/go/downloadplayer VMWare Player]. At this time, the current release of AtoM-VM runs only on 64-bit computers (x86-amd64). For more information, see:&lt;br /&gt;
&lt;br /&gt;
* [https://atom-vm.com atom-vm.com]&lt;br /&gt;
&lt;br /&gt;
==CENDARI Shibboleth authentication plugin==&lt;br /&gt;
&lt;br /&gt;
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an &amp;quot;''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The plugin was developed against AtoM 2.1, and has had compatibility updates for 2.3. In 2019, a community user has also reported success in the [https://groups.google.com/d/msg/ica-atom-users/xZeV1VAvJuM/rhvI7n_GBwAJ User forum] using this plugin with a 2.4.1 release. Another user forked the plugin, added a few additional commit (details [https://github.com/CENDARI/sfDariahShibUserPlugin/compare/master...kstatelibraries:sfDariahShibUserPlugin:ksul-shibconfig here] and [https://github.com/CENDARI/sfDariahShibUserPlugin/pulls here]), and reports it working with those changes in a 2.6.4 release. Status of testing against other releases is unknown.&lt;br /&gt;
&lt;br /&gt;
The original plugin development was done by [https://github.com/schildwaechter Carsten Thiel], primarily between November and December of 2014.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]&lt;br /&gt;
* [http://www.cendari.eu/sites/default/files/CENDARI%20technical%20documentation.pdf Plugin documentation]&lt;br /&gt;
&lt;br /&gt;
==PeaceWorks MAID plugins ==&lt;br /&gt;
&lt;br /&gt;
''NOTE: 'As of 2024-09, these plugins have been upgraded to work with 2.8.x AtoM installations'''&lt;br /&gt;
&lt;br /&gt;
In March of 2015, [http://www.peaceworks.ca/ PeaceWorks Technology Solutions] helped to launch [http://archives.mhsc.ca/ MAID] (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada  which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce &amp;quot;shopping cart&amp;quot; plugin for purchasing prints of images available in MAID; an image carousel for the home page; integration with [http://www.tinymce.com/ TinyMCE] to add a [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages); and the ability to upload a different watermark (to be applied to digital object derivatives) for each institution. More details on each below.&lt;br /&gt;
&lt;br /&gt;
===eCommerce plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
According to the [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md plugin documentation's] Overview section, &amp;quot;This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).&lt;br /&gt;
&lt;br /&gt;
Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = &amp;quot;Disallow,&amp;quot; a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/ecommerce PeaceWorks GitHub AtoM fork, eCommerce branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md eCommerce plugin documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID], where you can see the shopping cart in action&lt;br /&gt;
&lt;br /&gt;
MAID has also prepared a summary description of the plugin's functionality, available as a PDF here:&lt;br /&gt;
&lt;br /&gt;
* [[File:Ecommerce-MAID.pdf]] (PDF, approx 431KB)&lt;br /&gt;
&lt;br /&gt;
===Home page carousel plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/carousel PeaceWorks GitHub AtoM fork, Carousel branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/carousel/plugins/sfCarouselPlugin/README.md Carousel README documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID] homepage, where you can see the carousel in action&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===TinyMCE visual editor integration for editing static pages===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
[http://www.tinymce.com/ TinyMCE] is &amp;quot;'' a platform independent web based Javascript HTML [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor control released as Open Source under LGPL,''&amp;quot; that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/tinymce PeaceWorks GitHub AtoM fork, TinyMCE branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/tinymce/README_tinymce.md TinyMCE README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Per-institution watermarks for digital objects===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], between July 2014 and March 2015 (primarily in July 2014). At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
AtoM includes the little-known ability to apply a watermark to uploaded photos. However there is only provision for a single global watermark which is applied to all images. This customization allows each institution to have their own watermark, and institutional watermarks can be uploaded and managed via the user interface, in the archival institution's &amp;quot;Edit theme&amp;quot; page. Uploading a new watermark will not affect photos already present in AtoM, but AtoM does provide a way for a developer to cause all watermarks to be re-applied (see “Regenerating Derivatives” in the Command-line tools section of the Administrator's Manual of the [https://www.accesstomemory.org/docs AtoM documentation] for more details).&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/multiple-watermarks Peaceworks GitHub AtoM fork, multiple-watermarks branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/commit/6e1e9e9e4bd4c2df5bf4da7b4063e4c739031fb4 the commit with the changes]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/multiple-watermarks/README_watermarks.md Multiple watermarks README documentation]&lt;br /&gt;
&lt;br /&gt;
==Docker and AtoM==&lt;br /&gt;
&lt;br /&gt;
Two different community developers have combined AtoM with [https://www.docker.com/ Docker], an open, container-based virtualization platform for distributed applications. Details below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Did you know? As of the AtoM 2.3 release, the AtoM project now has its own officially supported Docker Compose development environment! See:&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/dev-manual/env/compose/&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Files===&lt;br /&gt;
&lt;br /&gt;
Created by Dominic Boisvert ([https://github.com/DominicBoisvert @DominicBoisvert]) for use in an archival course taught at the University of Montreal, Boisvert has shared Docker files for [[Releases/Release_announcements/Release_2.1.2|AtoM 2.1.2]], and [[Releases/Release_announcements/Release_2.1.1,_2.0.2,_1.3.2|ICA-AtoM 1.3.2]], including simple installation instructions (written in French):&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/ARV3054/docker-atom AtoM 2.1.2 Dockerfile]&lt;br /&gt;
* [https://github.com/ARV3054/docker-ica-atom ICA-AtoM 1.3.2 Dockerfile]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Compose recipe===&lt;br /&gt;
&lt;br /&gt;
Created by John Fink ([https://github.com/jbfink @jbfink]), this is a Docker [https://docs.docker.com/compose/ Compose] recipe for AtoM. Compose is described by Docker as &amp;quot;''a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The developer adds, &amp;quot;''Note that I've only tested this on 64bit native Linux using Docker directly, so if you're using boot2docker or a VM things might be different.''&amp;quot; For further configuration information and troubleshooting, see the [https://github.com/jbfink/docker-atom/blob/master/README.md README] provided.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jbfink/docker-atom Docker Compose recipe for AtoM - GitHub repository]&lt;br /&gt;
* [https://github.com/jbfink/docker-atom/blob/master/README.md README file for configuration and troubleshooting]&lt;br /&gt;
* [https://groups.google.com/d/topic/ica-atom-users/p7ACO3jKZv8/discussion Related AtoM User Forum thread]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Image===&lt;br /&gt;
&lt;br /&gt;
Created by the Governo Regional Azores, this is a Docker image of AtoM 2.2.0. Note that it does not currently include the MySQL database required for AtoM, which needs to be linked.&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/governoregionalazores/atom-accesstomemory/ Link on the DockerHub page]&lt;br /&gt;
* [https://github.com/GovernoRegionalAcores/atom-accesstomemory GitHub repository for the Docker image]&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.3 ISO image - ready for use on a flash drive==&lt;br /&gt;
&lt;br /&gt;
A group of archivists in Brazil, the [http://documentosarquivisticosdigitais.blogspot.com.br/ Grupo de Pesquisa do CNPq GED/A e Patrimônio Documental Arquivístico], have used the  [https://launchpad.net/systemback SystemBack] backup management tool to prepare an ISO image of AtoM 2.3 that can be launched from a flash drive. From the related blog post:&lt;br /&gt;
&lt;br /&gt;
* Operating System: Ubuntu 16.04 - 64 Bits;&lt;br /&gt;
* Size: 3GBs&lt;br /&gt;
* Format: sblive&lt;br /&gt;
* Remasterer: SystemBack&lt;br /&gt;
&lt;br /&gt;
&amp;quot;''After Download, use SystemBack to write to the flash drive, and use with a system boot that is persistent - your data stored in the session will remain available in the next.'&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux password: &amp;lt;code&amp;gt;icaatom99&amp;lt;/code&amp;gt;&lt;br /&gt;
* User in AtoM (ICA-AtoM): &amp;lt;code&amp;gt;GrupoCNPqDocsDigitais@gmail.com&amp;lt;/code&amp;gt;&lt;br /&gt;
* Password in AtoM (ICA-AtoM):  &amp;lt;code&amp;gt;icaatom&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Blog post here (Brazilian Portuguese): http://documentosarquivisticosdigitais.blogspot.com.br/2017/01/o-grupo-de-pesquisa-cnpq-ufsm-geda.html&lt;br /&gt;
* Download link: https://drive.google.com/file/d/0BwBRoubj23bpNWZLSVhtSmNoN00/view?usp=sharing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==HTML scrub scripts for other entities==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''UPDATE''': Thanks to collaboration among several community members, this work has now been added to the existing AtoM task, and merged into the 2.4 release. For more information, see:&lt;br /&gt;
&lt;br /&gt;
* Source pull request: https://github.com/artefactual/atom/pull/568&lt;br /&gt;
&lt;br /&gt;
Thank you to Clara Rosales and Darryl Friesen for this collaborative enhancement!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In [[Releases/Release_announcements/Release_2.2|Release 2.2]] we introduced [[Releases/Release_announcements/Release_2.2#Security_enhancement:_HTML_escaping_to_prevent_XSS_exploits|HTML escaping]] as part of the security enhancements included in the release. Since some users might have legacy HTML content in their descriptions, we also included a command-line task that would allow users to scrub legacy HTML from archival descriptions - see the related documentation [https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields here].&lt;br /&gt;
&lt;br /&gt;
However, this task '''only''' currently works for archival descriptions. To help clean up other entities, users from Brazil have adapted versions of the original task that can be run for actors, notes, repository records, and rights records. These were posted in the AtoM user forum on 2017-05-22:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/d/msg/ica-atom-users/_xdBK0ucegg/RQnNM5DKBAAJ&lt;br /&gt;
&lt;br /&gt;
Artefactual has not tested these scripts. To run them:&lt;br /&gt;
&lt;br /&gt;
# Download and unzip the rar file attached to the message in the user forum.&lt;br /&gt;
# Place the scripts in a directory accessible from the root directory of your AtoM instance, such as a new tmp directory.&lt;br /&gt;
# Use the tools:run command to run each script. For example, for the script to clean up HTML in authority records:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
php symfony tools:run tmp/actor_i18n.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effects will be similar to what is described for the command-line task:&lt;br /&gt;
&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields&lt;br /&gt;
&lt;br /&gt;
==Custom theme plugins==&lt;br /&gt;
&lt;br /&gt;
This section will be a place for community members to share any theme plugins they have developed! Note that we have [https://www.accesstomemory.org/docs/latest/admin-manual/customization/theming/ documentation] and [https://www.slideshare.net/accesstomemory/creating-custom-themes-in-atom slides] to help developers get started with theming - be sure to check them out, as well as our general [[Development#Development_resources|Development resources]]!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Alberto Pereira's custom theme===&lt;br /&gt;
&lt;br /&gt;
Developed against AtoM 2.5, this custom theme by [https://github.com/albertopereira Alberto Pereira] includes a number of customizations, including the following change notes from the developer:&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;Popular this week&amp;quot; box gets a bigger highlight;&lt;br /&gt;
* The first element of the &amp;quot;Popular this week&amp;quot; also shows its thumbnail (if it exists);&lt;br /&gt;
* Overall style changes (including new icons);&lt;br /&gt;
* A Blog! (well, sort of), it uses static pages to mimic a blog. You just have to create a page called &amp;quot;Blog&amp;quot;, and any other page that has a title that starts with &amp;quot;_X-&amp;quot;, will automatically be listed in the blog page (e.g. &amp;quot;_X-A post title&amp;quot;);&lt;br /&gt;
* You don't have to chose between the sidebar treeview and the full width treeview. You can have both. There's a new link, right below the sidebar treeview, that opens a popup with the full width treeview.&lt;br /&gt;
&lt;br /&gt;
[[File:arAPPlugin-theme.jpg|center|700px|thumb| An image of the arAPPlugin theme]]&lt;br /&gt;
&lt;br /&gt;
You can find the theme and more details at the following links:&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/albertopereira/arAPPlugin Theme code, images, and installation instructions on GitHub]&lt;br /&gt;
* [https://groups.google.com/d/msg/ica-atom-users/OpX9CvU0pAY/3sOgeJavBAAJ AtoM user forum announcement] (2019-02-27)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Community resources|Back to Community resources]]&lt;br /&gt;
* [[Community|Back to Community landing page]]&lt;br /&gt;
* [[Main Page|Main AtoM wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Daejin&amp;diff=3600</id>
		<title>User:Daejin</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Daejin&amp;diff=3600"/>
				<updated>2024-05-28T13:46:50Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ph.D. in Archives and Records Management&lt;br /&gt;
Founder of Archive Lab Inc. (South Korea)&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Dcraze&amp;diff=3591</id>
		<title>User:Dcraze</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Dcraze&amp;diff=3591"/>
				<updated>2024-05-17T14:28:01Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Artefactual technical support and deployment manager.  30 years experience in support and IT.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Sofibru86&amp;diff=3587</id>
		<title>User:Sofibru86</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Sofibru86&amp;diff=3587"/>
				<updated>2024-04-29T14:42:28Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Licenciada en Archivología. Profesora Titular en la carrera de Archivología FFyH-UNC Córdoba, Argentina.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Doradorosa&amp;diff=3586</id>
		<title>User:Doradorosa</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Doradorosa&amp;diff=3586"/>
				<updated>2024-04-29T14:42:16Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bibliotecas Archivos Centros de documentación Sistema operativo formato MARC Digitalización Catalogación Clasificación&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Bvasquez&amp;diff=3585</id>
		<title>User:Bvasquez</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Bvasquez&amp;diff=3585"/>
				<updated>2024-04-23T12:38:21Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am the current administrator of the technical managment of our AtoM Installation in Costa Rica's National Archives, we want to add our installation to the list of users in this page, that's the reason of this login request.&lt;br /&gt;
&lt;br /&gt;
Thanks in advance!&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:GemmaGdlP&amp;diff=3584</id>
		<title>User:GemmaGdlP</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:GemmaGdlP&amp;diff=3584"/>
				<updated>2024-04-23T12:38:11Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Librarian and Archivist of Escola Massana, Centre d'Art i Disseny de Barcelona&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:CDC&amp;diff=3583</id>
		<title>User:CDC</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:CDC&amp;diff=3583"/>
				<updated>2024-04-23T12:37:59Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Estudiante de post-grado en Patrimonio Cultura y Tecnología desde la UNED&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3582</id>
		<title>Community/Community resources/Development</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3582"/>
				<updated>2024-04-12T13:20:31Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* CENDARI Shibboleth authentication plugin */ Added updates about another user's forking&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Community development}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; [[Community/Community resources]] &amp;gt; Community/Community resources/Development&lt;br /&gt;
&lt;br /&gt;
In this section of the wiki, we'll add links to custom patches, plugins, themes, images, forks, and other resources developed by community users and publicly available for developers to explore and work with.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
'''PLEASE NOTE''': Artefactual does '''not''' test these features and modules developed by AtoM community members. As such, we cannot offer support for them, nor can we speak as to their security, quality, performance, or compatibility with the latest public releases. If you intend to make use of these features, do so at your own risk. We strongly recommend studying the code prior to use, and deploying any community-developed features in a test environment where they can be properly evaluated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Have you developed custom code for your AtoM installation? Let us know! And... why not consider contributing your code to the public project? That way, we maintain the code for you through future releases, and the entire community benefits from your work! Here are some links to get you started:&lt;br /&gt;
* [[Development/Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Other developer resources in our wiki]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.7 Drupal 9 feed module==&lt;br /&gt;
&lt;br /&gt;
Developed by members of the University of Toronto (U of T) Libraries, this AtoM Drupal importer is a Drupal 9 module based on the AtoM API. The module is used at U of T to facilitate publishing archival description once, in U of T's [https://discoverarchives.library.utoronto.ca/ Discover Archives (AtoM)] finding aid database, after which it pulls description data into Drupal as Nodes and Taxonomies. This data can then generate a searchable collections list (A-Z) in Drupal as well as a Drupal page per top-level fonds/collections. When data in the linked AtoM instance is updated or new data is added, the module can also fetch and update the Drupal data at a designated frequency.&lt;br /&gt;
&lt;br /&gt;
The goal of the module is to reuse published AtoM description metadata in a more end-user-friendly Drupal website to facilitate &amp;quot;general user&amp;quot; browse/discovery of top-level descriptions on the University's Drupal-based departmental websites, where users may not normally encounter the archival AtoM instance.&lt;br /&gt;
&lt;br /&gt;
You can see an example of the module in use on the U of T's [https://media-archives.library.utoronto.ca/archival-collections Media Commons Archives Drupal website ], displaying data from their [https://discoverarchives.library.utoronto.ca/index.php/university-of-toronto-media-commons AtoM descriptions].&lt;br /&gt;
&lt;br /&gt;
You can find this plugin at:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/utlib/drupal_atom&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It has been confirmed to work with AtoM 2.7.x.&lt;br /&gt;
&lt;br /&gt;
This work was originally shared in the AtoM User Forum on November 16, 2023:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/g/ica-atom-users/c/aCAdGKdFgNQ/m/E14KAUOKBAAJ&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Initial module planning, creation, and development included:&lt;br /&gt;
&lt;br /&gt;
* Rachel Beattie, Assistant Media Archivist&lt;br /&gt;
* Gordon Belray, Information Architect&lt;br /&gt;
* Andy Foster, Senior Software Engineer&lt;br /&gt;
* Lillian Hogendoorn, Curator of Digital Experience&lt;br /&gt;
* Bilal Khalid, Manager of Digital Library Applications&lt;br /&gt;
* Sunny Lee, Digital Initiatives Programmer Analyst&lt;br /&gt;
* Christina Stewart, Assistant Media Archivist&lt;br /&gt;
* Chul Hee Yoon, Project Application Programmer Analyst&lt;br /&gt;
* Kelli Babcock, Digital Initiatives Librarian&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.4 Drupal front-end display bridge==&lt;br /&gt;
&lt;br /&gt;
[https://github.com/andreaem Michael Andreae] of the University of Toronto has created a fork of Drupal's Views Database Connector that has been modified to work as a bridge for AtoM, so that Drupal can be used as a public-facing front-end. From the README on the GitHub project:&lt;br /&gt;
&lt;br /&gt;
''Views Database Connector is a powerful module that gives Views full access to external database tables found in the settings for your Drupal installation. With this module, you can setup a view around any table in any database configuration. This can be extremely useful to pull external data from a database to show to your users in a view.''&lt;br /&gt;
&lt;br /&gt;
''The Drupal AtoM connector is a non generalized version of Views Database Connector, VDC was just used as a template. In Drupal you can create blocks and add whatever sections you need based on an object.''&lt;br /&gt;
&lt;br /&gt;
''For example adding in a fonds you can link another view in fields of notes types and then link based on id. Because there can be multiple notes etc... on one record it was easier to add the relations in the Drupal View rather than in the Database Connector.''&lt;br /&gt;
&lt;br /&gt;
According to notes on the README, this bridge has only been tested with AtoM version 2.4.0 - 156.&lt;br /&gt;
&lt;br /&gt;
The code, along with basic installation instructions, can be found on GitHub, here:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/Vic-Lib/DrupalAtoMViewer&lt;br /&gt;
&lt;br /&gt;
==AtoM Linux Installer scripts==&lt;br /&gt;
&lt;br /&gt;
Community user Guillermo Castellano Casas has developed some automated bash installation scripts that can be used to install AtoM 2.4, 2.5, or 2.6. Below are the GNU/Linux distributions currently supported for each AtoM version:&lt;br /&gt;
&lt;br /&gt;
* 2.6: Ubuntu 18.04, Debian 10.&lt;br /&gt;
* 2.5: Ubuntu 16.04/18.04, Debian 9.&lt;br /&gt;
* 2.4: Ubuntu 16.04.&lt;br /&gt;
&lt;br /&gt;
* The GitLab repository where the scripts and basic usage instructions can be found: [https://gitlab.com/guillearch/atom-installer here]&lt;br /&gt;
* A [https://gitlab.com/guillearch/atom-installer/blob/master/contributing.md contributor's guide] if you'd like to help improve the installers!&lt;br /&gt;
* The AtoM [https://groups.google.com/d/msg/ica-atom-users/xy4Fha_OUe4/gVJBlHSWBgAJ user forum post] where these were first shared with the AtoM community (September 2019)&lt;br /&gt;
&lt;br /&gt;
==AtoM virtual machines==&lt;br /&gt;
&lt;br /&gt;
Community user [https://github.com/ricardodepinho Ricardo Pinho] has prepared a webite, [https://atom-vm.com/store atom-vm.com], where he is sharing production-ready virtual machine (VM) images of AtoM releases. Intended for use either as local development environments or in production for small to medium archives, these VMs are built using the recommended AtoM [https://www.accesstomemory.org/docs/latest/admin-manual/installation/linux/ubuntu-bionic/ installation instructions].&lt;br /&gt;
&lt;br /&gt;
As of November 2023 the site currently hosts Virtual Machines for:&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.5.4|(Release 2.5.4)]] -  [https://atom-vm.com/atom-vm-2-5-4/ AtoM-VM 2.5.4];&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.6.4|(Release 2.6.4)]] -  [https://atom-vm.com/atom-vm-2-6-4/ AtoM-VM 2.6.4];&lt;br /&gt;
&lt;br /&gt;
Other versions will be added in the future.&lt;br /&gt;
&lt;br /&gt;
Ricardo asks for a small donation to support the site and future releases. To run the VMs you will first need to install any Virtual Machine player able to import the standard ovf and vmdk file format or run directly from a vmx file - examples include [https://www.virtualbox.org/wiki/Downloads Virtualbox] or the free [https://www.vmware.com/go/downloadplayer VMWare Player]. At this time, the current release of AtoM-VM runs only on 64-bit computers (x86-amd64). For more information, see:&lt;br /&gt;
&lt;br /&gt;
* [https://atom-vm.com atom-vm.com]&lt;br /&gt;
&lt;br /&gt;
==CENDARI Shibboleth authentication plugin==&lt;br /&gt;
&lt;br /&gt;
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an &amp;quot;''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The plugin was developed against AtoM 2.1, and has had compatibility updates for 2.3. In 2019, a community user has also reported success in the [https://groups.google.com/d/msg/ica-atom-users/xZeV1VAvJuM/rhvI7n_GBwAJ User forum] using this plugin with a 2.4.1 release. Another user forked the plugin, added a few additional commit (details [https://github.com/CENDARI/sfDariahShibUserPlugin/compare/master...kstatelibraries:sfDariahShibUserPlugin:ksul-shibconfig here] and [https://github.com/CENDARI/sfDariahShibUserPlugin/pulls here]), and reports it working with those changes in a 2.6.4 release. Status of testing against other releases is unknown.&lt;br /&gt;
&lt;br /&gt;
The original plugin development was done by [https://github.com/schildwaechter Carsten Thiel], primarily between November and December of 2014.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]&lt;br /&gt;
* [http://www.cendari.eu/sites/default/files/CENDARI%20technical%20documentation.pdf Plugin documentation]&lt;br /&gt;
&lt;br /&gt;
==PeaceWorks MAID plugins ==&lt;br /&gt;
&lt;br /&gt;
In March of 2015, [http://www.peaceworks.ca/ PeaceWorks Technology Solutions] helped to launch [http://archives.mhsc.ca/ MAID] (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada  which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce &amp;quot;shopping cart&amp;quot; plugin for purchasing prints of images available in MAID; an image carousel for the home page; integration with [http://www.tinymce.com/ TinyMCE] to add a [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages); and the ability to upload a different watermark (to be applied to digital object derivatives) for each institution. More details on each below.&lt;br /&gt;
&lt;br /&gt;
===eCommerce plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
According to the [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md plugin documentation's] Overview section, &amp;quot;This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).&lt;br /&gt;
&lt;br /&gt;
Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = &amp;quot;Disallow,&amp;quot; a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/ecommerce PeaceWorks GitHub AtoM fork, eCommerce branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md eCommerce plugin documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID], where you can see the shopping cart in action&lt;br /&gt;
&lt;br /&gt;
MAID has also prepared a summary description of the plugin's functionality, available as a PDF here:&lt;br /&gt;
&lt;br /&gt;
* [[File:Ecommerce-MAID.pdf]] (PDF, approx 431KB)&lt;br /&gt;
&lt;br /&gt;
===Home page carousel plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/carousel PeaceWorks GitHub AtoM fork, Carousel branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/carousel/plugins/sfCarouselPlugin/README.md Carousel README documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID] homepage, where you can see the carousel in action&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===TinyMCE visual editor integration for editing static pages===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
[http://www.tinymce.com/ TinyMCE] is &amp;quot;'' a platform independent web based Javascript HTML [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor control released as Open Source under LGPL,''&amp;quot; that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/tinymce PeaceWorks GitHub AtoM fork, TinyMCE branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/tinymce/README_tinymce.md TinyMCE README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Per-institution watermarks for digital objects===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], between July 2014 and March 2015 (primarily in July 2014). At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
AtoM includes the little-known ability to apply a watermark to uploaded photos. However there is only provision for a single global watermark which is applied to all images. This customization allows each institution to have their own watermark, and institutional watermarks can be uploaded and managed via the user interface, in the archival institution's &amp;quot;Edit theme&amp;quot; page. Uploading a new watermark will not affect photos already present in AtoM, but AtoM does provide a way for a developer to cause all watermarks to be re-applied (see “Regenerating Derivatives” in the Command-line tools section of the Administrator's Manual of the [https://www.accesstomemory.org/docs AtoM documentation] for more details).&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/multiple-watermarks Peaceworks GitHub AtoM fork, multiple-watermarks branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/commit/6e1e9e9e4bd4c2df5bf4da7b4063e4c739031fb4 the commit with the changes]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/multiple-watermarks/README_watermarks.md Multiple watermarks README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Docker and AtoM==&lt;br /&gt;
&lt;br /&gt;
Two different community developers have combined AtoM with [https://www.docker.com/ Docker], an open, container-based virtualization platform for distributed applications. Details below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Did you know? As of the AtoM 2.3 release, the AtoM project now has its own officially supported Docker Compose development environment! See:&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/dev-manual/env/compose/&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Files===&lt;br /&gt;
&lt;br /&gt;
Created by Dominic Boisvert ([https://github.com/DominicBoisvert @DominicBoisvert]) for use in an archival course taught at the University of Montreal, Boisvert has shared Docker files for [[Releases/Release_announcements/Release_2.1.2|AtoM 2.1.2]], and [[Releases/Release_announcements/Release_2.1.1,_2.0.2,_1.3.2|ICA-AtoM 1.3.2]], including simple installation instructions (written in French):&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/ARV3054/docker-atom AtoM 2.1.2 Dockerfile]&lt;br /&gt;
* [https://github.com/ARV3054/docker-ica-atom ICA-AtoM 1.3.2 Dockerfile]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Compose recipe===&lt;br /&gt;
&lt;br /&gt;
Created by John Fink ([https://github.com/jbfink @jbfink]), this is a Docker [https://docs.docker.com/compose/ Compose] recipe for AtoM. Compose is described by Docker as &amp;quot;''a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The developer adds, &amp;quot;''Note that I've only tested this on 64bit native Linux using Docker directly, so if you're using boot2docker or a VM things might be different.''&amp;quot; For further configuration information and troubleshooting, see the [https://github.com/jbfink/docker-atom/blob/master/README.md README] provided.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jbfink/docker-atom Docker Compose recipe for AtoM - GitHub repository]&lt;br /&gt;
* [https://github.com/jbfink/docker-atom/blob/master/README.md README file for configuration and troubleshooting]&lt;br /&gt;
* [https://groups.google.com/d/topic/ica-atom-users/p7ACO3jKZv8/discussion Related AtoM User Forum thread]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Image===&lt;br /&gt;
&lt;br /&gt;
Created by the Governo Regional Azores, this is a Docker image of AtoM 2.2.0. Note that it does not currently include the MySQL database required for AtoM, which needs to be linked.&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/governoregionalazores/atom-accesstomemory/ Link on the DockerHub page]&lt;br /&gt;
* [https://github.com/GovernoRegionalAcores/atom-accesstomemory GitHub repository for the Docker image]&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.3 ISO image - ready for use on a flash drive==&lt;br /&gt;
&lt;br /&gt;
A group of archivists in Brazil, the [http://documentosarquivisticosdigitais.blogspot.com.br/ Grupo de Pesquisa do CNPq GED/A e Patrimônio Documental Arquivístico], have used the  [https://launchpad.net/systemback SystemBack] backup management tool to prepare an ISO image of AtoM 2.3 that can be launched from a flash drive. From the related blog post:&lt;br /&gt;
&lt;br /&gt;
* Operating System: Ubuntu 16.04 - 64 Bits;&lt;br /&gt;
* Size: 3GBs&lt;br /&gt;
* Format: sblive&lt;br /&gt;
* Remasterer: SystemBack&lt;br /&gt;
&lt;br /&gt;
&amp;quot;''After Download, use SystemBack to write to the flash drive, and use with a system boot that is persistent - your data stored in the session will remain available in the next.'&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux password: &amp;lt;code&amp;gt;icaatom99&amp;lt;/code&amp;gt;&lt;br /&gt;
* User in AtoM (ICA-AtoM): &amp;lt;code&amp;gt;GrupoCNPqDocsDigitais@gmail.com&amp;lt;/code&amp;gt;&lt;br /&gt;
* Password in AtoM (ICA-AtoM):  &amp;lt;code&amp;gt;icaatom&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Blog post here (Brazilian Portuguese): http://documentosarquivisticosdigitais.blogspot.com.br/2017/01/o-grupo-de-pesquisa-cnpq-ufsm-geda.html&lt;br /&gt;
* Download link: https://drive.google.com/file/d/0BwBRoubj23bpNWZLSVhtSmNoN00/view?usp=sharing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==HTML scrub scripts for other entities==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''UPDATE''': Thanks to collaboration among several community members, this work has now been added to the existing AtoM task, and merged into the 2.4 release. For more information, see:&lt;br /&gt;
&lt;br /&gt;
* Source pull request: https://github.com/artefactual/atom/pull/568&lt;br /&gt;
&lt;br /&gt;
Thank you to Clara Rosales and Darryl Friesen for this collaborative enhancement!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In [[Releases/Release_announcements/Release_2.2|Release 2.2]] we introduced [[Releases/Release_announcements/Release_2.2#Security_enhancement:_HTML_escaping_to_prevent_XSS_exploits|HTML escaping]] as part of the security enhancements included in the release. Since some users might have legacy HTML content in their descriptions, we also included a command-line task that would allow users to scrub legacy HTML from archival descriptions - see the related documentation [https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields here].&lt;br /&gt;
&lt;br /&gt;
However, this task '''only''' currently works for archival descriptions. To help clean up other entities, users from Brazil have adapted versions of the original task that can be run for actors, notes, repository records, and rights records. These were posted in the AtoM user forum on 2017-05-22:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/d/msg/ica-atom-users/_xdBK0ucegg/RQnNM5DKBAAJ&lt;br /&gt;
&lt;br /&gt;
Artefactual has not tested these scripts. To run them:&lt;br /&gt;
&lt;br /&gt;
# Download and unzip the rar file attached to the message in the user forum.&lt;br /&gt;
# Place the scripts in a directory accessible from the root directory of your AtoM instance, such as a new tmp directory.&lt;br /&gt;
# Use the tools:run command to run each script. For example, for the script to clean up HTML in authority records:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
php symfony tools:run tmp/actor_i18n.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effects will be similar to what is described for the command-line task:&lt;br /&gt;
&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields&lt;br /&gt;
&lt;br /&gt;
==Custom theme plugins==&lt;br /&gt;
&lt;br /&gt;
This section will be a place for community members to share any theme plugins they have developed! Note that we have [https://www.accesstomemory.org/docs/latest/admin-manual/customization/theming/ documentation] and [https://www.slideshare.net/accesstomemory/creating-custom-themes-in-atom slides] to help developers get started with theming - be sure to check them out, as well as our general [[Development#Development_resources|Development resources]]!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Alberto Pereira's custom theme===&lt;br /&gt;
&lt;br /&gt;
Developed against AtoM 2.5, this custom theme by [https://github.com/albertopereira Alberto Pereira] includes a number of customizations, including the following change notes from the developer:&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;Popular this week&amp;quot; box gets a bigger highlight;&lt;br /&gt;
* The first element of the &amp;quot;Popular this week&amp;quot; also shows its thumbnail (if it exists);&lt;br /&gt;
* Overall style changes (including new icons);&lt;br /&gt;
* A Blog! (well, sort of), it uses static pages to mimic a blog. You just have to create a page called &amp;quot;Blog&amp;quot;, and any other page that has a title that starts with &amp;quot;_X-&amp;quot;, will automatically be listed in the blog page (e.g. &amp;quot;_X-A post title&amp;quot;);&lt;br /&gt;
* You don't have to chose between the sidebar treeview and the full width treeview. You can have both. There's a new link, right below the sidebar treeview, that opens a popup with the full width treeview.&lt;br /&gt;
&lt;br /&gt;
[[File:arAPPlugin-theme.jpg|center|700px|thumb| An image of the arAPPlugin theme]]&lt;br /&gt;
&lt;br /&gt;
You can find the theme and more details at the following links:&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/albertopereira/arAPPlugin Theme code, images, and installation instructions on GitHub]&lt;br /&gt;
* [https://groups.google.com/d/msg/ica-atom-users/OpX9CvU0pAY/3sOgeJavBAAJ AtoM user forum announcement] (2019-02-27)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Community resources|Back to Community resources]]&lt;br /&gt;
* [[Community|Back to Community landing page]]&lt;br /&gt;
* [[Main Page|Main AtoM wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3581</id>
		<title>Community/Community resources/Development</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Development&amp;diff=3581"/>
				<updated>2024-04-10T12:21:54Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* CENDARI Shibboleth authentication plugin */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Community development}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; [[Community/Community resources]] &amp;gt; Community/Community resources/Development&lt;br /&gt;
&lt;br /&gt;
In this section of the wiki, we'll add links to custom patches, plugins, themes, images, forks, and other resources developed by community users and publicly available for developers to explore and work with.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
'''PLEASE NOTE''': Artefactual does '''not''' test these features and modules developed by AtoM community members. As such, we cannot offer support for them, nor can we speak as to their security, quality, performance, or compatibility with the latest public releases. If you intend to make use of these features, do so at your own risk. We strongly recommend studying the code prior to use, and deploying any community-developed features in a test environment where they can be properly evaluated.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Have you developed custom code for your AtoM installation? Let us know! And... why not consider contributing your code to the public project? That way, we maintain the code for you through future releases, and the entire community benefits from your work! Here are some links to get you started:&lt;br /&gt;
* [[Development/Contribute code]]&lt;br /&gt;
* [[Development#Development_resources|Other developer resources in our wiki]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.7 Drupal 9 feed module==&lt;br /&gt;
&lt;br /&gt;
Developed by members of the University of Toronto (U of T) Libraries, this AtoM Drupal importer is a Drupal 9 module based on the AtoM API. The module is used at U of T to facilitate publishing archival description once, in U of T's [https://discoverarchives.library.utoronto.ca/ Discover Archives (AtoM)] finding aid database, after which it pulls description data into Drupal as Nodes and Taxonomies. This data can then generate a searchable collections list (A-Z) in Drupal as well as a Drupal page per top-level fonds/collections. When data in the linked AtoM instance is updated or new data is added, the module can also fetch and update the Drupal data at a designated frequency.&lt;br /&gt;
&lt;br /&gt;
The goal of the module is to reuse published AtoM description metadata in a more end-user-friendly Drupal website to facilitate &amp;quot;general user&amp;quot; browse/discovery of top-level descriptions on the University's Drupal-based departmental websites, where users may not normally encounter the archival AtoM instance.&lt;br /&gt;
&lt;br /&gt;
You can see an example of the module in use on the U of T's [https://media-archives.library.utoronto.ca/archival-collections Media Commons Archives Drupal website ], displaying data from their [https://discoverarchives.library.utoronto.ca/index.php/university-of-toronto-media-commons AtoM descriptions].&lt;br /&gt;
&lt;br /&gt;
You can find this plugin at:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/utlib/drupal_atom&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It has been confirmed to work with AtoM 2.7.x.&lt;br /&gt;
&lt;br /&gt;
This work was originally shared in the AtoM User Forum on November 16, 2023:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/g/ica-atom-users/c/aCAdGKdFgNQ/m/E14KAUOKBAAJ&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Initial module planning, creation, and development included:&lt;br /&gt;
&lt;br /&gt;
* Rachel Beattie, Assistant Media Archivist&lt;br /&gt;
* Gordon Belray, Information Architect&lt;br /&gt;
* Andy Foster, Senior Software Engineer&lt;br /&gt;
* Lillian Hogendoorn, Curator of Digital Experience&lt;br /&gt;
* Bilal Khalid, Manager of Digital Library Applications&lt;br /&gt;
* Sunny Lee, Digital Initiatives Programmer Analyst&lt;br /&gt;
* Christina Stewart, Assistant Media Archivist&lt;br /&gt;
* Chul Hee Yoon, Project Application Programmer Analyst&lt;br /&gt;
* Kelli Babcock, Digital Initiatives Librarian&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.4 Drupal front-end display bridge==&lt;br /&gt;
&lt;br /&gt;
[https://github.com/andreaem Michael Andreae] of the University of Toronto has created a fork of Drupal's Views Database Connector that has been modified to work as a bridge for AtoM, so that Drupal can be used as a public-facing front-end. From the README on the GitHub project:&lt;br /&gt;
&lt;br /&gt;
''Views Database Connector is a powerful module that gives Views full access to external database tables found in the settings for your Drupal installation. With this module, you can setup a view around any table in any database configuration. This can be extremely useful to pull external data from a database to show to your users in a view.''&lt;br /&gt;
&lt;br /&gt;
''The Drupal AtoM connector is a non generalized version of Views Database Connector, VDC was just used as a template. In Drupal you can create blocks and add whatever sections you need based on an object.''&lt;br /&gt;
&lt;br /&gt;
''For example adding in a fonds you can link another view in fields of notes types and then link based on id. Because there can be multiple notes etc... on one record it was easier to add the relations in the Drupal View rather than in the Database Connector.''&lt;br /&gt;
&lt;br /&gt;
According to notes on the README, this bridge has only been tested with AtoM version 2.4.0 - 156.&lt;br /&gt;
&lt;br /&gt;
The code, along with basic installation instructions, can be found on GitHub, here:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/Vic-Lib/DrupalAtoMViewer&lt;br /&gt;
&lt;br /&gt;
==AtoM Linux Installer scripts==&lt;br /&gt;
&lt;br /&gt;
Community user Guillermo Castellano Casas has developed some automated bash installation scripts that can be used to install AtoM 2.4, 2.5, or 2.6. Below are the GNU/Linux distributions currently supported for each AtoM version:&lt;br /&gt;
&lt;br /&gt;
* 2.6: Ubuntu 18.04, Debian 10.&lt;br /&gt;
* 2.5: Ubuntu 16.04/18.04, Debian 9.&lt;br /&gt;
* 2.4: Ubuntu 16.04.&lt;br /&gt;
&lt;br /&gt;
* The GitLab repository where the scripts and basic usage instructions can be found: [https://gitlab.com/guillearch/atom-installer here]&lt;br /&gt;
* A [https://gitlab.com/guillearch/atom-installer/blob/master/contributing.md contributor's guide] if you'd like to help improve the installers!&lt;br /&gt;
* The AtoM [https://groups.google.com/d/msg/ica-atom-users/xy4Fha_OUe4/gVJBlHSWBgAJ user forum post] where these were first shared with the AtoM community (September 2019)&lt;br /&gt;
&lt;br /&gt;
==AtoM virtual machines==&lt;br /&gt;
&lt;br /&gt;
Community user [https://github.com/ricardodepinho Ricardo Pinho] has prepared a webite, [https://atom-vm.com/store atom-vm.com], where he is sharing production-ready virtual machine (VM) images of AtoM releases. Intended for use either as local development environments or in production for small to medium archives, these VMs are built using the recommended AtoM [https://www.accesstomemory.org/docs/latest/admin-manual/installation/linux/ubuntu-bionic/ installation instructions].&lt;br /&gt;
&lt;br /&gt;
As of November 2023 the site currently hosts Virtual Machines for:&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.5.4|(Release 2.5.4)]] -  [https://atom-vm.com/atom-vm-2-5-4/ AtoM-VM 2.5.4];&lt;br /&gt;
&lt;br /&gt;
[[Releases/Release_announcements/Release_2.6.4|(Release 2.6.4)]] -  [https://atom-vm.com/atom-vm-2-6-4/ AtoM-VM 2.6.4];&lt;br /&gt;
&lt;br /&gt;
Other versions will be added in the future.&lt;br /&gt;
&lt;br /&gt;
Ricardo asks for a small donation to support the site and future releases. To run the VMs you will first need to install any Virtual Machine player able to import the standard ovf and vmdk file format or run directly from a vmx file - examples include [https://www.virtualbox.org/wiki/Downloads Virtualbox] or the free [https://www.vmware.com/go/downloadplayer VMWare Player]. At this time, the current release of AtoM-VM runs only on 64-bit computers (x86-amd64). For more information, see:&lt;br /&gt;
&lt;br /&gt;
* [https://atom-vm.com atom-vm.com]&lt;br /&gt;
&lt;br /&gt;
==CENDARI Shibboleth authentication plugin==&lt;br /&gt;
&lt;br /&gt;
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an &amp;quot;''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The plugin was developed against AtoM 2.1, and has had compatibility updates for 2.3. In 2019, a community user has also reported success in the [https://groups.google.com/d/msg/ica-atom-users/xZeV1VAvJuM/rhvI7n_GBwAJ User forum] using this plugin with a 2.4.1 release. Status of testing against other releases is unknown. The development was done by [https://github.com/schildwaechter Carsten Thiel], primarily between November and December of 2014.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]&lt;br /&gt;
* [http://www.cendari.eu/sites/default/files/CENDARI%20technical%20documentation.pdf Plugin documentation]&lt;br /&gt;
&lt;br /&gt;
==PeaceWorks MAID plugins ==&lt;br /&gt;
&lt;br /&gt;
In March of 2015, [http://www.peaceworks.ca/ PeaceWorks Technology Solutions] helped to launch [http://archives.mhsc.ca/ MAID] (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada  which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce &amp;quot;shopping cart&amp;quot; plugin for purchasing prints of images available in MAID; an image carousel for the home page; integration with [http://www.tinymce.com/ TinyMCE] to add a [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages); and the ability to upload a different watermark (to be applied to digital object derivatives) for each institution. More details on each below.&lt;br /&gt;
&lt;br /&gt;
===eCommerce plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
According to the [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md plugin documentation's] Overview section, &amp;quot;This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).&lt;br /&gt;
&lt;br /&gt;
Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = &amp;quot;Disallow,&amp;quot; a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/ecommerce PeaceWorks GitHub AtoM fork, eCommerce branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md eCommerce plugin documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID], where you can see the shopping cart in action&lt;br /&gt;
&lt;br /&gt;
MAID has also prepared a summary description of the plugin's functionality, available as a PDF here:&lt;br /&gt;
&lt;br /&gt;
* [[File:Ecommerce-MAID.pdf]] (PDF, approx 431KB)&lt;br /&gt;
&lt;br /&gt;
===Home page carousel plugin===&lt;br /&gt;
&lt;br /&gt;
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.&lt;br /&gt;
&lt;br /&gt;
This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/carousel PeaceWorks GitHub AtoM fork, Carousel branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/carousel/plugins/sfCarouselPlugin/README.md Carousel README documentation]&lt;br /&gt;
* [http://archives.mhsc.ca/ MAID] homepage, where you can see the carousel in action&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===TinyMCE visual editor integration for editing static pages===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
[http://www.tinymce.com/ TinyMCE] is &amp;quot;'' a platform independent web based Javascript HTML [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor control released as Open Source under LGPL,''&amp;quot; that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/tinymce PeaceWorks GitHub AtoM fork, TinyMCE branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/tinymce/README_tinymce.md TinyMCE README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Per-institution watermarks for digital objects===&lt;br /&gt;
&lt;br /&gt;
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], between July 2014 and March 2015 (primarily in July 2014). At this time, this integration has not been packaged as a plugin.&lt;br /&gt;
&lt;br /&gt;
AtoM includes the little-known ability to apply a watermark to uploaded photos. However there is only provision for a single global watermark which is applied to all images. This customization allows each institution to have their own watermark, and institutional watermarks can be uploaded and managed via the user interface, in the archival institution's &amp;quot;Edit theme&amp;quot; page. Uploading a new watermark will not affect photos already present in AtoM, but AtoM does provide a way for a developer to cause all watermarks to be re-applied (see “Regenerating Derivatives” in the Command-line tools section of the Administrator's Manual of the [https://www.accesstomemory.org/docs AtoM documentation] for more details).&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/multiple-watermarks Peaceworks GitHub AtoM fork, multiple-watermarks branch]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/commit/6e1e9e9e4bd4c2df5bf4da7b4063e4c739031fb4 the commit with the changes]&lt;br /&gt;
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/multiple-watermarks/README_watermarks.md Multiple watermarks README documentation]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Docker and AtoM==&lt;br /&gt;
&lt;br /&gt;
Two different community developers have combined AtoM with [https://www.docker.com/ Docker], an open, container-based virtualization platform for distributed applications. Details below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Did you know? As of the AtoM 2.3 release, the AtoM project now has its own officially supported Docker Compose development environment! See:&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/dev-manual/env/compose/&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Files===&lt;br /&gt;
&lt;br /&gt;
Created by Dominic Boisvert ([https://github.com/DominicBoisvert @DominicBoisvert]) for use in an archival course taught at the University of Montreal, Boisvert has shared Docker files for [[Releases/Release_announcements/Release_2.1.2|AtoM 2.1.2]], and [[Releases/Release_announcements/Release_2.1.1,_2.0.2,_1.3.2|ICA-AtoM 1.3.2]], including simple installation instructions (written in French):&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/ARV3054/docker-atom AtoM 2.1.2 Dockerfile]&lt;br /&gt;
* [https://github.com/ARV3054/docker-ica-atom ICA-AtoM 1.3.2 Dockerfile]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Compose recipe===&lt;br /&gt;
&lt;br /&gt;
Created by John Fink ([https://github.com/jbfink @jbfink]), this is a Docker [https://docs.docker.com/compose/ Compose] recipe for AtoM. Compose is described by Docker as &amp;quot;''a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The developer adds, &amp;quot;''Note that I've only tested this on 64bit native Linux using Docker directly, so if you're using boot2docker or a VM things might be different.''&amp;quot; For further configuration information and troubleshooting, see the [https://github.com/jbfink/docker-atom/blob/master/README.md README] provided.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jbfink/docker-atom Docker Compose recipe for AtoM - GitHub repository]&lt;br /&gt;
* [https://github.com/jbfink/docker-atom/blob/master/README.md README file for configuration and troubleshooting]&lt;br /&gt;
* [https://groups.google.com/d/topic/ica-atom-users/p7ACO3jKZv8/discussion Related AtoM User Forum thread]&lt;br /&gt;
&lt;br /&gt;
===AtoM Docker Image===&lt;br /&gt;
&lt;br /&gt;
Created by the Governo Regional Azores, this is a Docker image of AtoM 2.2.0. Note that it does not currently include the MySQL database required for AtoM, which needs to be linked.&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/governoregionalazores/atom-accesstomemory/ Link on the DockerHub page]&lt;br /&gt;
* [https://github.com/GovernoRegionalAcores/atom-accesstomemory GitHub repository for the Docker image]&lt;br /&gt;
&lt;br /&gt;
==AtoM 2.3 ISO image - ready for use on a flash drive==&lt;br /&gt;
&lt;br /&gt;
A group of archivists in Brazil, the [http://documentosarquivisticosdigitais.blogspot.com.br/ Grupo de Pesquisa do CNPq GED/A e Patrimônio Documental Arquivístico], have used the  [https://launchpad.net/systemback SystemBack] backup management tool to prepare an ISO image of AtoM 2.3 that can be launched from a flash drive. From the related blog post:&lt;br /&gt;
&lt;br /&gt;
* Operating System: Ubuntu 16.04 - 64 Bits;&lt;br /&gt;
* Size: 3GBs&lt;br /&gt;
* Format: sblive&lt;br /&gt;
* Remasterer: SystemBack&lt;br /&gt;
&lt;br /&gt;
&amp;quot;''After Download, use SystemBack to write to the flash drive, and use with a system boot that is persistent - your data stored in the session will remain available in the next.'&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux password: &amp;lt;code&amp;gt;icaatom99&amp;lt;/code&amp;gt;&lt;br /&gt;
* User in AtoM (ICA-AtoM): &amp;lt;code&amp;gt;GrupoCNPqDocsDigitais@gmail.com&amp;lt;/code&amp;gt;&lt;br /&gt;
* Password in AtoM (ICA-AtoM):  &amp;lt;code&amp;gt;icaatom&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Blog post here (Brazilian Portuguese): http://documentosarquivisticosdigitais.blogspot.com.br/2017/01/o-grupo-de-pesquisa-cnpq-ufsm-geda.html&lt;br /&gt;
* Download link: https://drive.google.com/file/d/0BwBRoubj23bpNWZLSVhtSmNoN00/view?usp=sharing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==HTML scrub scripts for other entities==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''UPDATE''': Thanks to collaboration among several community members, this work has now been added to the existing AtoM task, and merged into the 2.4 release. For more information, see:&lt;br /&gt;
&lt;br /&gt;
* Source pull request: https://github.com/artefactual/atom/pull/568&lt;br /&gt;
&lt;br /&gt;
Thank you to Clara Rosales and Darryl Friesen for this collaborative enhancement!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In [[Releases/Release_announcements/Release_2.2|Release 2.2]] we introduced [[Releases/Release_announcements/Release_2.2#Security_enhancement:_HTML_escaping_to_prevent_XSS_exploits|HTML escaping]] as part of the security enhancements included in the release. Since some users might have legacy HTML content in their descriptions, we also included a command-line task that would allow users to scrub legacy HTML from archival descriptions - see the related documentation [https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields here].&lt;br /&gt;
&lt;br /&gt;
However, this task '''only''' currently works for archival descriptions. To help clean up other entities, users from Brazil have adapted versions of the original task that can be run for actors, notes, repository records, and rights records. These were posted in the AtoM user forum on 2017-05-22:&lt;br /&gt;
&lt;br /&gt;
* https://groups.google.com/d/msg/ica-atom-users/_xdBK0ucegg/RQnNM5DKBAAJ&lt;br /&gt;
&lt;br /&gt;
Artefactual has not tested these scripts. To run them:&lt;br /&gt;
&lt;br /&gt;
# Download and unzip the rar file attached to the message in the user forum.&lt;br /&gt;
# Place the scripts in a directory accessible from the root directory of your AtoM instance, such as a new tmp directory.&lt;br /&gt;
# Use the tools:run command to run each script. For example, for the script to clean up HTML in authority records:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
php symfony tools:run tmp/actor_i18n.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effects will be similar to what is described for the command-line task:&lt;br /&gt;
&lt;br /&gt;
* https://www.accesstomemory.org/docs/latest/admin-manual/maintenance/cli-tools/#remove-html-content-from-archival-description-fields&lt;br /&gt;
&lt;br /&gt;
==Custom theme plugins==&lt;br /&gt;
&lt;br /&gt;
This section will be a place for community members to share any theme plugins they have developed! Note that we have [https://www.accesstomemory.org/docs/latest/admin-manual/customization/theming/ documentation] and [https://www.slideshare.net/accesstomemory/creating-custom-themes-in-atom slides] to help developers get started with theming - be sure to check them out, as well as our general [[Development#Development_resources|Development resources]]!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Alberto Pereira's custom theme===&lt;br /&gt;
&lt;br /&gt;
Developed against AtoM 2.5, this custom theme by [https://github.com/albertopereira Alberto Pereira] includes a number of customizations, including the following change notes from the developer:&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;Popular this week&amp;quot; box gets a bigger highlight;&lt;br /&gt;
* The first element of the &amp;quot;Popular this week&amp;quot; also shows its thumbnail (if it exists);&lt;br /&gt;
* Overall style changes (including new icons);&lt;br /&gt;
* A Blog! (well, sort of), it uses static pages to mimic a blog. You just have to create a page called &amp;quot;Blog&amp;quot;, and any other page that has a title that starts with &amp;quot;_X-&amp;quot;, will automatically be listed in the blog page (e.g. &amp;quot;_X-A post title&amp;quot;);&lt;br /&gt;
* You don't have to chose between the sidebar treeview and the full width treeview. You can have both. There's a new link, right below the sidebar treeview, that opens a popup with the full width treeview.&lt;br /&gt;
&lt;br /&gt;
[[File:arAPPlugin-theme.jpg|center|700px|thumb| An image of the arAPPlugin theme]]&lt;br /&gt;
&lt;br /&gt;
You can find the theme and more details at the following links:&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/albertopereira/arAPPlugin Theme code, images, and installation instructions on GitHub]&lt;br /&gt;
* [https://groups.google.com/d/msg/ica-atom-users/OpX9CvU0pAY/3sOgeJavBAAJ AtoM user forum announcement] (2019-02-27)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Community resources|Back to Community resources]]&lt;br /&gt;
* [[Community|Back to Community landing page]]&lt;br /&gt;
* [[Main Page|Main AtoM wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Flavio.belluomini&amp;diff=3580</id>
		<title>User:Flavio.belluomini</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Flavio.belluomini&amp;diff=3580"/>
				<updated>2024-04-09T11:50:47Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;nato a Lucca il 09/05/1971 archivista dell'Archivio Storico di Propaganda Fide&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Resources/Documentation/Contribute&amp;diff=3579</id>
		<title>Resources/Documentation/Contribute</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Resources/Documentation/Contribute&amp;diff=3579"/>
				<updated>2024-03-28T12:17:31Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Contribute documentation translations */ Update links to point to Weblate, not Transifex&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Contribute documentation}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Resources]] &amp;gt; [[Resources/Documentation]] &amp;gt; Resources/Documentation/Contribute&lt;br /&gt;
&lt;br /&gt;
This page describes ways in which members of the AtoM community can contribute to our public documentation - the AtoM User and Administrator's Manuals available at https://www.accesstomemory.org/docs. For more information about the documentation platform we use, and why we chose it, see: [[Resources/Documentation/About|About our documentation]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Resources/Wiki_contribution|Contribute to the AtoM wiki]]&lt;br /&gt;
* [[Resources/Translation|Contribute translations]]&lt;br /&gt;
* [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Contributing documentation to the AtoM project==&lt;br /&gt;
&lt;br /&gt;
'''Want to help us improve our documentation?''' All AtoM documentation is publicly available under a Creative Commons Attribution-ShareAlike 4.0 Unported licence ([https://creativecommons.org/licenses/by-sa/4.0/ CC BY SA]). We rely on our community of users to help us keep our documentation clear, comprehensive, and easy to use - if you see something missing or broken, or have an idea about how to improve or expand upon our existing documentation, please consider getting involved. There are several ways you can help AtoM improve its documentation:&lt;br /&gt;
&lt;br /&gt;
If you just want to '''alert us to something you've noticed''' that you think we could improve, but don't have the time or inclination to fix it yourself, see:&lt;br /&gt;
&lt;br /&gt;
* [[#Suggest minor fixes to Artefactual|Suggest minor fixes to Artefactual]]&lt;br /&gt;
* [[#File an issue in our documentation repository|File an issue in our documentation repository]]&lt;br /&gt;
&lt;br /&gt;
We also welcome direct contributions! Is there a section missing from our documentation that you'd like to see? Or a section that you'd like to improve by adding clearer instructions, more screenshots, or alternative workflows? Help us improve our documentation by submitting new or revised content yourself!&lt;br /&gt;
&lt;br /&gt;
If you'd like to '''contribute documentation fixes directly''', there are two main methods of contributing new documentation. For smaller changes, it's easier to make your edits via GitHub's user interface. If you a more technically proficient user and you're working on a bigger contribution or would like to be able to work locally in a text editor before contributing your changes, we also have instructions on how you can configure the AtoM Vagrant box for documentation contributions. See:&lt;br /&gt;
&lt;br /&gt;
* [[#Contribute documentation yourself via GitHub|Contribute documentation yourself via GitHub]]&lt;br /&gt;
* [[#Contribute documentation using Vagrant|Contribute documentation using Vagrant]]&lt;br /&gt;
* [[#Contribute translations|Contribute translations]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Also, check out our [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]].&lt;br /&gt;
&lt;br /&gt;
==Suggest minor fixes to Artefactual==&lt;br /&gt;
&lt;br /&gt;
See a typo or a broken link? Have a question or a minor suggestion? If you've noticed something that can be improved in our documentation, but don't have the time or resources to fix the problem yourself, we want to hear from you!&lt;br /&gt;
&lt;br /&gt;
'''Contact us at:''' [mailto:webmaster@accesstomemory.org webmaster@accesstomemory.org]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
AtoM documentation is freely maintained by [https://www.artefactual.com Artefactual Systems], lead developers of the AtoM project. We do our best to ensure that our documentation is comprehensive, but as an open-source company that freely gives away software, documentation, and user support in our [https://groups.google.com/forum/#!forum/ica-atom-users User Forum], please keep in mind that we have to prioritize our client assignments so that we can pay our bills and continue to provide free software and free community support. If you've submitted a suggestion for a fix to our documentation via [mailto:webmaster@accesstomemory.org webmaster@accesstomemory.org], thank you! If it takes us a bit of time to implement a fix, it may be because we are currently focused on a client project - we will address any reported issues as soon as we are able. As always with open-source projects, the best way to ensure a fix is implemented is to contribute the fix yourself - we encourage our community users to become active contributors to all aspects of our projects.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==File an issue in our documentation repository==&lt;br /&gt;
&lt;br /&gt;
If you notice a problem in the documentation, start by filing an issue in the AtoM documentation [https://github.com/artefactual/atom-docs/ repository] with as much detail about the issue as possible. This is a good thing to do whether you're just reporting a typo, or about to submit a whole new section of documentation. Also, just because you file an issue doesn't mean you're committing yourself to addressing the requested fix yourself! We're happy to receive reports about how we can improve the AtoM docs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
You'll need a GitHub account to be able to file issues and contribute fixes. Signing up is free and easy - head over to:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/join&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can find the issues by navigating to the GitHub [https://github.com/artefactual/atom-docs/ atom-docs repository], and clicking on the Issues tab. You can look at any existing issues here for reference, and open a new issue by clicking the green button on the right side of the page:&lt;br /&gt;
&lt;br /&gt;
[[File:docs-issues.png|center|600px|thumb|An image of the the issues in the AtoM documentation GitHub repository]]&lt;br /&gt;
&lt;br /&gt;
Give your issue a descriptive title that gives us a sense at a glance what to expect. The body of the issue should mention, at a minimum:&lt;br /&gt;
&lt;br /&gt;
* The page (and section, if possible) where the problem occurs&lt;br /&gt;
* The version of the documentation you are consulting&lt;br /&gt;
* A proposed solution&lt;br /&gt;
&lt;br /&gt;
Here is an example issue requesting a minor fix in the Administrator's manual, that you can look at as a reference:&lt;br /&gt;
&lt;br /&gt;
* https://github.com/artefactual/atom-docs/issues/48&lt;br /&gt;
&lt;br /&gt;
==Contribute documentation yourself via GitHub==&lt;br /&gt;
&lt;br /&gt;
The following instructions will show you how to contribute changes to our documentation straight from our GitHub repository ([https://github.com/artefactual/atom-docs here]), using GitHub's user interface (GitHub Flow), which provides all the tools you need - including a text editor! If you are a more advanced user, you can do this from your own computer using a text editor and the command-line - see [[#Contribute_documentation_using_Vagrant|our instructions below]] for guidance.&lt;br /&gt;
&lt;br /&gt;
'''Useful reference resources'''&lt;br /&gt;
&lt;br /&gt;
* [http://sphinx-doc.org/ Sphinx] documentation website&lt;br /&gt;
* [http://www.sphinx-doc.org/master/usage/restructuredtext/basics.html reStructured Text primer]&lt;br /&gt;
* [[Resources/Documentation/Contribution guidelines|AtoM documentation contribution guidelines]]&lt;br /&gt;
* [https://chris.beams.io/posts/git-commit/ How to write a commit message]&lt;br /&gt;
* [https://help.github.com/ GitHub Help pages]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''Before you begin, you should:'''&lt;br /&gt;
* Create a GitHub account if you don't have one already: go to https://github.com/ and sign up - it's easy!&lt;br /&gt;
* [[#File an issue in our documentation repository|File an issue in our documentation repository]]&lt;br /&gt;
* Read our [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]]&lt;br /&gt;
* Familiarize yourself with [http://sphinx-doc.org/ Sphinx] and [http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html reStructuredText]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''An overview of the steps''' (described below):&lt;br /&gt;
&lt;br /&gt;
* [[#Find the document you want to edit|Find the document you want to edit]] (or the place to add a new one)&lt;br /&gt;
* [[#Use GitHub's editor to make changes or additions|Use GitHub's editor to make changes or additions]]&lt;br /&gt;
* [[#Commit the changes|Commit the changes]]&lt;br /&gt;
* [[#Submit a pull request to Artefactual|Submit a pull request to Artefactual]]&lt;br /&gt;
* Dance! You've helped!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Find the document you want to edit===&lt;br /&gt;
&lt;br /&gt;
''(Or the place to add a new one)''&lt;br /&gt;
&lt;br /&gt;
'''1.''' First, sign into your GitHub account at https://github.com (if you don't have an account yet, you'll need to create one first. You can do this on the same page.)&lt;br /&gt;
&lt;br /&gt;
'''2.''' Navigate to Artefactual's AtoM [https://github.com/artefactual/atom-docs Documentation repository]: you can do this through the user interface by typing &amp;lt;code&amp;gt;artefactual/atom-docs&amp;lt;/code&amp;gt; into the search bar at the top of the GitHub page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What is a git repository?'''&lt;br /&gt;
&lt;br /&gt;
A repository, or &amp;quot;repo&amp;quot;, is simply a directory which contains your project work, as well as a few files which are used to communicate with Git. Repositories can exist either locally on your computer or as a remote copy (such as on [https://github.com GitHub.com]). These instructions will show you how to create your own repository on [https://github.com GitHub.com], and then use this to submit changes to the AtoM documentation repository.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''3.''' GitHub's user interface provides a graphical file-explorer to help you navigate through the text files in our documentation repository. The AtoM documentation repository's files are organized into folders that mimic the structure of the user manual found on the home page - for example, all files that relate to the User Manual section called &amp;quot;Add/Edit Content&amp;quot; are grouped together in a file called &amp;quot;add-edit-content&amp;quot;. In GitHub, click on a folder to view its contents. Click on a .txt file to open it in-page.&lt;br /&gt;
&lt;br /&gt;
[[File:git-view.png|center|600px|frameless|An image GitHub's repository browser]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
[[File:git-branch.png|right|150px|frameless| An image of the GitHub branch button]]&lt;br /&gt;
'''Can't find the right spot in GitHub?'''&lt;br /&gt;
&lt;br /&gt;
Don't forget to check the &amp;quot;Branch&amp;quot; drop-down - atom-docs is organized into several different branches, with the About/Contribute and FAQ docs on a different branch than the User and Admin manuals. Additionally, as we create new versions of our documentation for each major release, we will create new branches (2.0, 2.1, 2.2, etc) - so make sure you are editing or adding to the correct branch! Ideally, you will add fixes to the most recent docs, so we can carry those improvements forward.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''4.''' If you are '''adding a new page''', navigate into the correct folder, and click the &amp;quot;Create new file&amp;quot; button at the top of the page.&lt;br /&gt;
&lt;br /&gt;
[[File:git-add-file.png|center|600px|frameless|An image of the GitHub &amp;quot;Create new file&amp;quot; button]]&lt;br /&gt;
&lt;br /&gt;
'''5.''' If you are '''editing an existing page''', navigate to the correct reStructuredText file, so that you can see its contents previewed on GitHub's interface. Then, click the &amp;quot;Edit&amp;quot; button (a pencil icon) found above the file preview:&lt;br /&gt;
&lt;br /&gt;
[[File:git-edit-button.png|center|600px|frameless|An image of the GitHub &amp;quot;Edit&amp;quot; button]]&lt;br /&gt;
&lt;br /&gt;
'''6.''' GitHub will create a copy of the entire ''atom-docs'' repository in your chosen location (or in your own new repository if this is your first time using GitHub). Now you can edit to your heart's content without fear of breaking our production website or making the documents unavailable to other users. In git, this is known as &amp;quot;forking&amp;quot;. At the top of the page, you'll see that now ''atom-docs'' is in your own repository (indicated by your chosen user name). You'll also see this message above the file editor, to remind you:&lt;br /&gt;
&lt;br /&gt;
[[File:git-fork-msg.png|center|600px|frameless|An image of the GitHub header message after a successful forking]]&lt;br /&gt;
&lt;br /&gt;
===Use GitHub's editor to make changes or additions===&lt;br /&gt;
&lt;br /&gt;
'''7.''' When you click the &amp;quot;Edit&amp;quot; button above the text file preview, a copy of the atom-docs repository is made in your repository (associated with your GitHub account), and you'll be redirected to a web-based text editor, where you can make changes to the file via your web browser. If you are adding a new page, the text editor will be blank when it opens, and you can begin entering text. As you work, you can click on the &amp;quot;Preview changes&amp;quot; tab to see a rendered version&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
'''About that preview...''' GitHub uses [https://en.wikipedia.org/wiki/Markdown Markdown], which is a different language than reStructuredText, which we use via Sphinx to maintain the AtoM documentation. This means that some elements (like section headers, bolding etc) will render properly in the Preview, but others (like code-blocks, hyperlinks, and glossary links, etc) will not. Don't worry if it doesn't look correct in GitHub's preview if you know the syntax is correct!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:git-edit.png|center|600px|frameless|An image of the GitHub editor]]&lt;br /&gt;
&lt;br /&gt;
'''8.''' Make the changes you want to the file. When you are done, scroll to the bottom of the page - next you will commit the changes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Please review our [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]] '''before''' submitting any changes. Thanks!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Commit the changes===&lt;br /&gt;
&lt;br /&gt;
'''9.''' When you are finished editing and/or adding files in the text editor, scroll to the bottom of the page. You will see a box with several text fields to fill in before submitting your changes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What is a commit?'''&lt;br /&gt;
&lt;br /&gt;
A commit, or &amp;quot;revision&amp;quot;, is an individual change to a file (or set of files). It's similar to when you save a file, except with Git, every time you save, a unique ID is created (a.k.a. the &amp;quot;SHA&amp;quot; or &amp;quot;hash&amp;quot;) that allows you to keep record of what changes where made when and by whom. Commits usually contain a commit message which is a brief description of what changes were made. (from the [https://help.github.com/articles/github-glossary/#commit GitHub Glossary])&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Commit Summary''': This is a required field. [https://help.github.com GitHub Help] describes a &amp;quot;commit&amp;quot; as such: ''&amp;quot;Think of a commit as a snapshot of your project – code, files, everything — at a particular point in time&amp;quot;''. Your commit summary is a concise way to summarize the changes to the project that users will find in the commit. '''Commit summaries should be 50 characters or less''': this is more like a brief title so users can determine what has taken place at a glance. Keep it brief and to the point. Check out [http://git-scm.com/book/ch5-2.html#Commit-Guidelines these guidelines] in the Git documentation.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
When writing your commit summary, please remember to:&lt;br /&gt;
&lt;br /&gt;
* File an issue for your change first, and reference it in the summary - e.g. &amp;quot;Fix typo in Entity types, refs #XX&amp;quot;&lt;br /&gt;
* Use the present active voice and be direct - &amp;quot;Fix typo in Entity types,&amp;quot; not &amp;quot;Fixed typo...&amp;quot;&lt;br /&gt;
* Try to keep the commit summary to 50 characters or less&lt;br /&gt;
* Capitalize the first word&lt;br /&gt;
* Do not end with a period&lt;br /&gt;
&lt;br /&gt;
For further tips on writing great commit messages, see: https://chris.beams.io/posts/git-commit/&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Extended description''': This is an optional field, which we at Artefactual recommend using if you plan on editing our documentation. This is your chance to explain at greater length what the changes you made were, and why you felt you should make them. A concise message here will help us understand your work, and allow us to merge it into our documentation more quickly! Remember, you want to explain WHAT you did, more than why or how.&lt;br /&gt;
&lt;br /&gt;
[[File:git-commit.png|center|600px|frameless|An image of the GitHub commit fields]]&lt;br /&gt;
&lt;br /&gt;
'''10.''' Once you've added a commit summary (required) and an extended description (recommended), click the &amp;quot;Propose File Change&amp;quot; button. GitHub will branch your changes, and redirect you to a page where you can compare the changes to the original, as well as submit a &amp;quot;pull request&amp;quot; to the AtoM documentation repository.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What is a git branch?'''&lt;br /&gt;
&lt;br /&gt;
If you're making an app, a website, or working on documentation collaboratively, you might have a bunch of different features, ideas, or revisions in progress at any given time - some of which are ready to go, and others which are not. By default, the main branch of a repository is usually named &amp;quot;master&amp;quot; - in the AtoM documentation repository, we name each main branch after the documentation version it represents (for example, 2.0, 2.1, 2.2, etc). By &amp;quot;branching&amp;quot; away from the main code, you create a separate instance in which you can work on your changes, and then, when they've been reviewed and tested, merge them back into the main project. This allows multiple people to collaborate at once, and a single person to work on multiple different revisions at the same time without having to finish them all on the same schedule.&lt;br /&gt;
&lt;br /&gt;
With these instructions, GitHub is handling the branching automatically, so you don't have to worry! But now you know a bit more about how git (and GitHub) works. Find out more about git [http://git-scm.com/ here].&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Submit a pull request to Artefactual===&lt;br /&gt;
&lt;br /&gt;
'''11.''' Once you've finished your changes and clicked the &amp;quot;Propose File Change&amp;quot; button, GitHub will redirect you to a new page. On the bottom half of the page, you'll see a &amp;quot;diff&amp;quot; - a graphical representation of the changes you've made - the red fields with the '''-''' minus symbol in the sidebar indicate content that was changed/removed, while the green fields with the '''+''' plus symbol in the sidebar indicate the new content that was added. When you submit your changes to Artefactual, we'll be able to see this too - it offers us a quick way to understand where you've made changes, what was changed, and why.&lt;br /&gt;
&lt;br /&gt;
[[File:git-diff.png|center|600px|frameless|An image of the GitHub diff summary]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''12.''' At the top of the page, you'll see your commit summary and description, with a reminder above it from GitHub (in blue) that the changes are still only in your repository. To submit them to Artefactual for inclusion in the AtoM documentation, click the &amp;quot;Send pull request&amp;quot; button on the right- hand side of the page.&lt;br /&gt;
&lt;br /&gt;
[[File:git-send-pull.png|center|600px|frameless|An image of the GitHub pull request button]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What is a pull request?'''&lt;br /&gt;
&lt;br /&gt;
Pull requests are proposed changes to a repository submitted by a user that will be accepted or rejected by a repository's collaborators (in this case, Artefactual, the maintainers of the AtoM documentation). You can see the GitHub Glossary's definition [https://help.github.com/articles/github-glossary/#pull-request here], and more information from GitHub on using pull requests [https://help.github.com/articles/using-pull-requests/ here].&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''13.''' The page will reload with information about your pull request - you can see a summary of what you want to merge where at the top of the page (i.e. your patch or fix into one of our documentation branches). Your commit message and summary will be below - we'll see a similar message on our end when we receive the request.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:git-pull.png|center|600px|frameless|An image of a submitted pull request]]&lt;br /&gt;
&lt;br /&gt;
'''14.''' Artefactual will receive your pull request, and one of our team members will review the changes. If there's a problem, we can send you a message via GitHub, or even [https://help.github.com/articles/using-pull-requests/#pull-request-discussion begin a discussion right on the code!] This way, if there's something we don't understand about the changes you've made, we can connect with you directly.  This is very similar to the code review process we undertake on code submissions from developers - see our [[Development/Code review|Code review]] wiki page for more information.&lt;br /&gt;
&lt;br /&gt;
You'll be able to see a summary of our changes and the status of the review on your pull request. We'll add comments if we have changes to request.&lt;br /&gt;
&lt;br /&gt;
[[File:git-pull-review.png|center|600px|frameless|An image of the review process as seen on a pull request in GitHub]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''15.''' If you need to make changes, you can simply return to the files and edit them in place. Follow the same steps as above. When you submit your commit, GitHub will give you the option to submit it as part of your pull request. You can also reply on the PR comments thread to ask for clarification or help, or to let us know that the requested changes have been implemented.&lt;br /&gt;
&lt;br /&gt;
[[File:git-pull-respond.png|center|600px|frameless|An image of the comments thread as seen on a pull request in GitHub]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''16.''' Once we've accepted the pull request and merged it into our repository, you'll get a notification (you'll probably get an email too, unless you've changed your default GitHub account settings). You'll be able to see the status of any changes right on the pull request.&lt;br /&gt;
&lt;br /&gt;
[[File:git-pull-success.png|center|600px|frameless|An image of a PR being accepted and closed in GitHub]]&lt;br /&gt;
&lt;br /&gt;
'''17. Success!''' Your contributions have been accepted, and merged into the AtoM documents. You should be able to go to our website and see them in the documentation. Thanks for helping out! We'll also close the related issue.&lt;br /&gt;
&lt;br /&gt;
[[File:git-issue-closed.png|center|600px|frameless|An image of an issue being closed in GitHub]]&lt;br /&gt;
&lt;br /&gt;
'''18. Finished!''' You did it! Thank you for helping to improve the AtoM documentation! It's time to dance!&lt;br /&gt;
&lt;br /&gt;
==Contribute documentation using Vagrant==&lt;br /&gt;
&lt;br /&gt;
For more technically proficient users who intend to work on larger changes, and/or simply prefer being able to work in a local text editor, the following instructions will guide you through the process of configuring the AtoM Vagrant box so that you are able to create pull requests against the public AtoM documentation repository.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''Before you begin, you will need: '''&lt;br /&gt;
&lt;br /&gt;
* To have created a GitHub account - you can [https://github.com/join create one here] if you don't have one already; it's free!&lt;br /&gt;
* To have a local [https://en.wikipedia.org/wiki/Source-code_editor text editor] good for working with source code - if you don't, we recommend [https://atom.io atom.io], an open source text editor created by GitHub&lt;br /&gt;
* To have the AtoM Vagrant box installed - see our documentation [https://www.accesstomemory.org/docs/latest/dev-manual/env/vagrant/ here] and some detailed slides [https://www.slideshare.net/accesstomemory/atom-and-vagrant-installing-and-configuring-the-atom-vagrant-box-for-local-testing-and-development here]&lt;br /&gt;
&lt;br /&gt;
Before you start making edits, you should also:&lt;br /&gt;
&lt;br /&gt;
* [[#File an issue in our documentation repository|File an issue in our documentation repository]]&lt;br /&gt;
* Read our [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]]&lt;br /&gt;
* Familiarize yourself with [http://sphinx-doc.org/ Sphinx] and [http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html reStructuredText]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Jump to:'''&lt;br /&gt;
&lt;br /&gt;
* [[#Generate an SSH key and configure a forwarding agent|Generate an SSH key and configure a forwarding agent]]&lt;br /&gt;
* [[#Add your public key to GitHub|Add your public key to GitHub]]&lt;br /&gt;
* [[#Fork the AtoM documentation project|Fork the AtoM documentation project]]&lt;br /&gt;
* [[#Change the AtoM vagrant box to track your new fork|Change the AtoM vagrant box to track your new fork]]&lt;br /&gt;
* [[#Add the files to your local text editor|Add the files to your local text editor]]&lt;br /&gt;
* [[#Make changes and commit them to your fork|Make changes and commit them to your fork]]&lt;br /&gt;
* [[#Keep your fork up to date|Keep your fork up to date]]&lt;br /&gt;
* [[#Open a pull request|Open a pull request]]&lt;br /&gt;
* [[#Add fixes and squash your commits|Add fixes and squash your commits]]&lt;br /&gt;
* [[#Celebrate|Celebrate!]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
The following instructions assume some basic familiarity with the unix/Linux command-line interface, and working with git or similar distributed version control systems. It also assumes that you have already set up the AtoM Vagrant box. If these things are new to you, you can still give it a go! Some additional suggestions:&lt;br /&gt;
&lt;br /&gt;
* We have some basic [ Command-line 101] slides to help familiarize you with basic tasks and navigation in the command-line interface&lt;br /&gt;
* The section above, on [[#Contribute_documentation_yourself_via_GitHub| contributing via GitHub]], includes many helpful explainers on git and GitHub terminology if it's new to you&lt;br /&gt;
* We have [https://www.accesstomemory.org/docs/latest/dev-manual/env/vagrant/ documentation] and [https://www.slideshare.net/accesstomemory/atom-and-vagrant-installing-and-configuring-the-atom-vagrant-box-for-local-testing-and-development slides] to help you get the AtoM Vagrant box set up!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's begin!&lt;br /&gt;
&lt;br /&gt;
===Generate an SSH key and configure a forwarding agent===&lt;br /&gt;
&lt;br /&gt;
We're going to be creating a fork of the AtoM documentation repository into your GitHub account, and we want to be able to commit our local changes to your repository. To be able to do so remotely from the Vagrant command-line, we first need to create an SSH key and link it to your account, so you can authenticate and interact with your GitHub repositories remotely.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What is an SSH key?'''&lt;br /&gt;
&lt;br /&gt;
Secure Shell ('''SSH''') is a cryptographic network protocol for operating network services securely over an unsecured network. The best known example application is for remote login to computer systems by users. SSH provides a secure channel over an unsecured network in a client-server architecture, connecting an SSH client application with an SSH server. Common applications include remote command-line login and remote command execution, but any network service can be secured with SSH.&lt;br /&gt;
&lt;br /&gt;
An '''SSH key''' is a form of password management for SSH connections, that uses [https://en.wikipedia.org/wiki/Public-key_cryptography public-key cryptography] to provide a more secure way of logging into a server with SSH than using a password alone. While a password can eventually be cracked with a brute force attack, SSH keys are nearly impossible to decipher by brute force alone. Additionally, you can be authenticated by the server without ever having to send your password over the network - anyone eavesdropping on your connection will not be able to intercept and crack your password because it is never actually transmitted.&lt;br /&gt;
&lt;br /&gt;
Generating a key pair provides you with two long string of characters: a public and a private key. You can place the public key on any server, and then unlock it by connecting to it with a client that already has the private key. When the two match up, the system unlocks without the need for a password. You can increase security even more by protecting the private key with a passphrase. This public/private key pair accomplishes two functions: authentication, where the public key verifies that a holder of the paired private key sent the message, and encryption, where only the paired private key holder can decrypt the message encrypted with the public key. This means that you can share your public key broadly, but '''your private key should never be shared'''.&lt;br /&gt;
&lt;br /&gt;
As well as offering additional security, SSH key authentication can be more convenient than the more traditional password authentication. By default, using an SSH key requires unlocking your private key with a secret passphrase upon each connection. However, when used with a program known as an '''SSH agent''', SSH keys can allow you to connect to a server, or multiple servers, without having to remember or enter your password for each system. Instead, the SSH agent will securely hold your key in memory and present it when needed - so you only need to enter your private key master password once, when you first load the key.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An SSH key pair can be generated on your local computer. For Mac and Linux users, we can use the built-in SSH agent functionality included with the O/S to manage this. For Windows, Microsoft does not currently include an SSH client by default, so we'll use a third-party tool for generating and managing our key, as well as connecting to the Artefactual Vagrant box environments.&lt;br /&gt;
&lt;br /&gt;
'''Jump to:'''&lt;br /&gt;
&lt;br /&gt;
* [[#SSH keys - Mac and Linux users|SSH keys - Mac and Linux users]]&lt;br /&gt;
* [[#SSH keys - Windows users|SSH keys - Windows users]]&lt;br /&gt;
&lt;br /&gt;
====SSH keys - Mac and Linux users====&lt;br /&gt;
&lt;br /&gt;
If you are using a Mac or a Linux based computer, here are instructions for generating a password protected key, and adding it to your keychain:&lt;br /&gt;
&lt;br /&gt;
* [https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#platform-linux Linux SSH instructions]&lt;br /&gt;
* [https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#platform-mac Mac SSH instructions]&lt;br /&gt;
&lt;br /&gt;
Keep a password-protected copy of your key somewhere secure on your local computer. Make sure the private key password is unique and secure!&lt;br /&gt;
&lt;br /&gt;
'''Your process for starting up your Vagrant box - Mac and Linux users'''&lt;br /&gt;
&lt;br /&gt;
Open terminal and using your command line interface, navigate to the folder where you have initialized your [https://www.accesstomemory.org/docs/latest/dev-manual/env/vagrant/ Vagrant box]. Check to see if your SSH key is loaded by typing &amp;lt;code&amp;gt;ssh-add -l&amp;lt;/code&amp;gt;. If it is, you can now run &amp;lt;code&amp;gt;vagrant up&amp;lt;/code&amp;gt;. If it is not, you can load it with &amp;lt;code&amp;gt;ssh add&amp;lt;/code&amp;gt;, or if you have more than one SSH key, to ensure you load the right key, &amp;lt;code&amp;gt;ssh add ~/.ssh/id_rsa&amp;lt;/code&amp;gt;, where &amp;quot;~/.ssh/id_rsa&amp;quot; is the file path to your SSH key.&lt;br /&gt;
&lt;br /&gt;
When your key is loaded, run &amp;lt;code&amp;gt;vagrant up&amp;lt;/code&amp;gt;, and then SSH into the Vagrant environment using your key with &amp;lt;code&amp;gt;vagrant ssh -- -A&amp;lt;/code&amp;gt;. This will allow you to link to your github account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
If you run &amp;lt;code&amp;gt;vagrant ssh&amp;lt;/code&amp;gt; you will access the Vagrant environment as the generic user 'vagrant', and any commits you make will be attributed to 'vagrant' and not to you.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once you are connected to the Vagrant environment, you can access the atom-docs with &amp;lt;code&amp;gt;cd atom-docs&amp;lt;/code&amp;gt;, and continue from [[#Add_your_public_key_to_GitHub|Add your public key to GitHub]].&lt;br /&gt;
&lt;br /&gt;
====SSH keys - Windows users====&lt;br /&gt;
&lt;br /&gt;
Because Microsoft does not include an SSH client by default with Windows, our Vagrant instructions recommend that Windows users use [https://putty.org/ PuTTY] to SSH into the Vagrant environment. PuTTY can be downloaded with a suite of other tools, which includes PuTTYgen, a tool to generate SSH key pairs, and Pageant, an SSH forwarding agent (similar to &amp;lt;code&amp;gt;ssh-agent&amp;lt;/code&amp;gt; in Linux environments). Since we are going to use PuTTY for SSH, we can use PuTTYGen and Pageant to create and manage our keys as well.&lt;br /&gt;
&lt;br /&gt;
You can download PuTTY, PuTTYgen, and Pageant here:&lt;br /&gt;
&lt;br /&gt;
* https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
The first option on the page is a package download, that includes all 3 utilities we need. However, if you've already downloaded PuTTY without Pageant and PuTTYgen, there are separate downloads available for these utilities lower on the same page.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and installed the utilities we are going to use PuTTYGen to generate our SSH key pair. To do so:&lt;br /&gt;
&lt;br /&gt;
'''1.''' Launch PuTTYgen on your computer.&lt;br /&gt;
&lt;br /&gt;
'''2.''' Configure the settings for your new SSH key. Let's use RSA, with 4096 bits:&lt;br /&gt;
&lt;br /&gt;
[[File:puttygen-ssh-keygen.png|center|600px|thumb|An image of using PuTTYGen to create an SSH key]]&lt;br /&gt;
&lt;br /&gt;
'''3.''' Once you've configured the settings, click &amp;quot;Generate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''4.''' PuTTYgen will ask you to move your mouse over the blank area of the dialog. This is used to generate randomness in how the cryptographic key is generated.&lt;br /&gt;
&lt;br /&gt;
'''5.''' When complete, you will be shown the public key, and given the option to save both the public and private keys:&lt;br /&gt;
&lt;br /&gt;
[[File:puttygen-save-keys.png|center|600px|thumb|An image of using PuTTYGen to create an SSH key]]&lt;br /&gt;
&lt;br /&gt;
'''6. Make sure you save the private key!''' We recommend saving the public key as well for the next step (but if you don't there is a way we can use PuTTYgen to get it later). We also recommend following the naming conventions of keys generated in linux - call your public key &amp;lt;code&amp;gt;id_rsa-pub&amp;lt;/code&amp;gt; and your private key &amp;lt;code&amp;gt;id_rsa&amp;lt;/code&amp;gt;. PuTTYgen will save the key in a &amp;lt;code&amp;gt;.ppk&amp;lt;/code&amp;gt; format, which can be used by Pageant for SSH agent.&lt;br /&gt;
&lt;br /&gt;
We're now ready to configure Pageant to manage our key and act as a forwarding agent!&lt;br /&gt;
&lt;br /&gt;
Pageant is an SSH authentication agent designed for use with PuTTY. It holds your private keys in memory, already decoded, so that you can use them often without needing to type a passphrase.&lt;br /&gt;
&lt;br /&gt;
'''Pageant documentation''':&lt;br /&gt;
&lt;br /&gt;
* http://the.earth.li/~sgtatham/putty/0.67/htmldoc/Chapter9.html#pageant&lt;br /&gt;
* See also this helpful [https://www.digitalocean.com/community/tutorials/how-to-use-pageant-to-streamline-ssh-key-authentication-with-putty Digital Ocean summary tutorial]&lt;br /&gt;
&lt;br /&gt;
Pageant can load your SSH key, and then pass it to PuTTY when authentication is requested. To enable this, you will need to change one setting on your saved AtoM Vagrant PuTTY configuration. To do so:&lt;br /&gt;
&lt;br /&gt;
'''1.''' Open up PuTTY, and then click on your saved AtoM Vagrant profile. If you haven't created one yet, let's do so now:&lt;br /&gt;
&lt;br /&gt;
* In the &amp;quot;Host name (or IP address)&amp;quot; field, enter the Vagrant box IP, which is 10.10.10.10&lt;br /&gt;
* Make sure the Port field is set to 22&lt;br /&gt;
* Give the session a name in the &amp;quot;Saved Sessions&amp;quot; field below - I've callled mine &amp;quot;AtoM Vagrant&amp;quot;&lt;br /&gt;
* Using the navigation menu on the left, go to Window &amp;gt; Translation, and make sure that the Remote character set is set to use UTF-8&lt;br /&gt;
* Click on &amp;quot;Session&amp;quot; at the top of the sidebar menu to return to the main page, and click &amp;quot;Save&amp;quot; to ensure these credentials are saved!&lt;br /&gt;
&lt;br /&gt;
'''2.''' Now let's make sure that PuTTY can retrieve the key from Pageant. Using the sidebar menu again, navigate to Connection &amp;gt; SSH &amp;gt; Auth. Make sure the following options are checked:&lt;br /&gt;
&lt;br /&gt;
* Attempt authentication using Pageant&lt;br /&gt;
* Allow agent forwarding&lt;br /&gt;
&lt;br /&gt;
'''3.''' Leave any other boxes already checked/unchecked as you found them. Remember to click on the top menu item, &amp;quot;Session,&amp;quot; to return to the main page, and then click Save!&lt;br /&gt;
&lt;br /&gt;
Now Pageant will be able to pass your SSH key when required. See also:&lt;br /&gt;
&lt;br /&gt;
* https://www.howtogeek.com/125364/how-to-ssh-hop-with-key-forwarding-from-windows/&lt;br /&gt;
&lt;br /&gt;
'''4. Your process for starting up your Vagrant box''' and using Pageant to handle your SSH key will now look something like this:&lt;br /&gt;
&lt;br /&gt;
* Launch Pageant&lt;br /&gt;
* Double-click the Pageant icon in your task bar to open it, and then click &amp;quot;Add&amp;quot;&lt;br /&gt;
* Pageant will open a file explorer. Navigate to your saved .ppk file - AKA your password-protected private key - and double-click to open it.&lt;br /&gt;
* If your key is password protected (as it should be!) then you will be prompted to enter your password now&lt;br /&gt;
* When successfully entered, you'll see a bunch of characters representing your key in Pageant's main window. You can now close this window - it will not close Pageant, but merely minimize it to the tray&lt;br /&gt;
* Launch the vagrant box via Windows cmd and PuTTY&lt;br /&gt;
* Once you have a password-protected key stored locally for use with Vagrant via Pageant, you can re-use the key for multiple boxes.&lt;br /&gt;
&lt;br /&gt;
===Add your public key to GitHub===&lt;br /&gt;
&lt;br /&gt;
Next we want to link your public key to your GitHub account, so that we can authenticate remotely using the private key that our SSH agent will forward whenever we submit commands to your remote repository.&lt;br /&gt;
&lt;br /&gt;
Follow these instructions:&lt;br /&gt;
&lt;br /&gt;
* https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account&lt;br /&gt;
&lt;br /&gt;
We've also included some instructions below on how you can copy your local public key, so you can add it to GitHub.&lt;br /&gt;
&lt;br /&gt;
'''Jump to:'''&lt;br /&gt;
&lt;br /&gt;
* [[#Copying the public key - Mac and Linux|Copying the public key - Mac and Linux]]&lt;br /&gt;
* [[#Copying the public key - Windows users|Copying the public key - Windows users]]&lt;br /&gt;
&lt;br /&gt;
====Copying the public key - Mac and Linux====&lt;br /&gt;
&lt;br /&gt;
If you have generated your key in your host computer (e.g. your local laptop, rather than inside the vagrant box), then we can access your SSH key in your local &amp;lt;code&amp;gt;.ssh&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Open a new terminal window - but '''do not''' SSH into the vagrant box. Instead, stay in, or change to your home directory. Remember, you can use &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; to show your current directory, and &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; to change directories - &amp;lt;code&amp;gt;cd ..&amp;lt;/code&amp;gt; will move up one directory, etc. For more basic navigation tips, see our [https://www.slideshare.net/accesstomemory/commandline-101 Command-line 101 slides].&lt;br /&gt;
&lt;br /&gt;
Once in your home directory, run &amp;lt;code&amp;gt;ls -al&amp;lt;/code&amp;gt; to see all hidden files. There should an &amp;lt;code&amp;gt;.ssh&amp;lt;/code&amp;gt; hidden directory - let's change into it, and look around:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd .ssh&lt;br /&gt;
ls -al&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should see something returned like the following, if your key is present:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
drwx------   4 myusername  staff   128 10 Sep 09:49 .&lt;br /&gt;
drwxr-xr-x+ 20 myusername  staff   640  5 Sep 14:39 ..&lt;br /&gt;
-rw-------   1 myusername  staff  3326 10 Sep 09:49 id_rsa&lt;br /&gt;
-rw-r--r--   1 myusername  staff   749 10 Sep 09:49 id_rsa.pub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the 2 &amp;lt;code&amp;gt;id_rsa&amp;lt;/code&amp;gt; files. The first one is your private key, which should be password protected. The second is your corresponding public key. This is what we will need to add to GitHub, and what we should copy. Let's access the contents of the file now, using the nano CLI text editor:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo nano id_rsa.pub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The text editor should show you something that looks a bit like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh-rsa AAFAB3NzaC1yc2EAAAADAQABAAACAQDY7NPAkTC135zk/CxP1cIdlP7ePK0+eLqROfVeLR/lCu+l5kYw/RzpPh2kShLF9CiLtr32z77L8Ik/wFFbnyECw+GSE8Q1+JSPsfzJfCHYU93Dlu3Dg0Lckg3/wfvlaczouK6rRB1HHhAvsWQot/DkvXtKGGaZyhH2QMMnUjb5FqsNNzp715CdJzGpKKnOQFrUL8+F2tg0jmLvABUtsbGGkgvkRzec1ql22lRdX9nkPRLP66G54kKPjlrzP7Qu6hGNibA03ZQSG7nDX0yc/+Ug731iLMgHfwY6x4AwdCxyQJjMrPSnUMOCihKvMUIqzVRlqPNGzMTKnkwTJJljDy5wK+9513FV+nCc8mpBorat9ewK4vghTReqrIS2SG+Tl0miw3OC2MafACoIN+RqqEi9+FS1yovyxcMKn26HBaXfkJVaN4dG2QongSZD8VWBk44t6tyXQPPkJI4+ifHUTcLD/WjF6CGhTsy4lYyXzfHcWDQqXuPy0a99TbU6S29eA3Co3CzSK+zn8xkOpTl+tDXH0S8g6CPtXdLvO9bSiduTDcRqTKUy2QaGr/nTxl7IbLY+p3NMmrOHpKu9BW9bbDtz5cOJv0cEs8z7NV6wTp7PJ6T/zhG5tS102vkTBCy5AsmOKE1I2u7qX0l0Ay3TPox9f9xDaybGkxrlmTstRQqX4t== youremail@example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy this text, and continue following the GitHub instructions for [https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account adding an SSH key to your account].&lt;br /&gt;
&lt;br /&gt;
====Copying the public key - Windows users====&lt;br /&gt;
&lt;br /&gt;
If, when generating your key with PuTTYgen, you saved a local copy of your public key, then you should be able to open this with a text editor (such as atom.io, Sublime Text, Notepad++, etc.) It should look something like this:&lt;br /&gt;
&lt;br /&gt;
[[File:windows-public-key.png|center|400px|thumb|An image of a public SSH key shown in a text editor]]&lt;br /&gt;
&lt;br /&gt;
Note that the part we want to copy is the hash code in the middle - we don't need the header/footer.&lt;br /&gt;
&lt;br /&gt;
If you didn't make a local copy of your public key, that's okay! PuTTYgen allows you to load an existing private key file into memory. If you do this, you can then change the passphrase and comment before saving it again; you can also make extra copies of the public key.&lt;br /&gt;
&lt;br /&gt;
To load an existing key in PuTTYgen, launch PuTTYgen and then press the &amp;quot;Load&amp;quot; button. PuTTYgen will put up a dialog box where you can browse around the file system and find your private key file. Once you select the file, PuTTYgen will ask you for a passphrase (if necessary) and will then display the key details in the same way as if it had just generated the key. You can now copy the public key from the box at the top of the dialogue, or save a local copy of your public key, and then open it in a text editor.&lt;br /&gt;
&lt;br /&gt;
Copy this public key, and continue following the GitHub instructions for [https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account adding an SSH key to your account].&lt;br /&gt;
&lt;br /&gt;
===Fork the AtoM documentation project===&lt;br /&gt;
&lt;br /&gt;
We're almost ready to start doing work! Now, to be able to make local changes and then submit them as a pull request, we first need to create a fork of the AtoM documentation repository in your GitHub account. In the next step, we'll modify the AtoM Vagrant box to track your version of the docs instead of the public one, so we can make changes and then submit them later. To create the fork:&lt;br /&gt;
&lt;br /&gt;
'''1.''' If you're not already logged in, then log into GitHub&lt;br /&gt;
&lt;br /&gt;
'''2.''' Navigate to the AtoM documentation GitHub repository: [https://github.com/artefactual/atom-docs  https://github.com/artefactual/atom-docs]&lt;br /&gt;
&lt;br /&gt;
'''3.''' At the top of the page, you should see a &amp;quot;Fork&amp;quot; button on the right side. Click it!&lt;br /&gt;
&lt;br /&gt;
[[File:github-fork-button.png|center|300px|thumb|An image of the Fork button on a GitHub repository page]]&lt;br /&gt;
&lt;br /&gt;
This will create a new copy of the atom-docs repository in your personal code repository. This will be indicated at the top of the page:&lt;br /&gt;
&lt;br /&gt;
[[File:github-forked-repo.png|center|600px|thumb|An image of a forked version of the atom-docs repo as indicated in GitHub]]&lt;br /&gt;
&lt;br /&gt;
===Change the AtoM vagrant box to track your new fork===&lt;br /&gt;
&lt;br /&gt;
The last configuration step we need to take is to configure your global git identity in the Vagrant box, and set it up to track your fork, instead of the public atom-docs repository. First, start up Vagrant - remember to follow any instructions provided above to configure your SSH agent so it can forward your SSH key when needed!&lt;br /&gt;
&lt;br /&gt;
Now we'll want to configure our git identity in the Vagrant box. You can set the username and email associated with your GitHub account using the following two commands (be sure to swap in your GitHub username and email in the placeholders!):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git config --global user.name &amp;quot;your-username&amp;quot;&lt;br /&gt;
git config --global user.email your-email@example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can check that this was set correctly, along with other default settings, with the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git config --list&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are other things you can configure if you want, such as your default terminal text editor and other preferences. For example, often the default text editor inside your command-line terminal is set to use vim, but the key combinations for getting out of vim can be very confusing, especially for non-technical users. Instead, we can use nano, which provides a list of navigation commands right at the bottom of the screen. If you want to set git to use nano as your default CLI text editor, use the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git config --global core.editor nano&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more information and other configuration options, see:&lt;br /&gt;
&lt;br /&gt;
* [https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup]&lt;br /&gt;
&lt;br /&gt;
Finally, let's set the remote origin to track your new fork. To do this, we will need to URL of your forked atom-docs repository - we'll add &amp;lt;code&amp;gt;.git&amp;lt;/code&amp;gt; to the end of this in the command. The following example uses the URL for GitHub user &amp;lt;code&amp;gt;testy-mctest&amp;lt;/code&amp;gt;'s fork - swap in yours:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git remote set-url origin https://github.com/testy-mctest/atom-docs.git&lt;br /&gt;
git fetch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We're ready to make changes!&lt;br /&gt;
&lt;br /&gt;
===Add the files to your local text editor===&lt;br /&gt;
&lt;br /&gt;
We're ready to start making changes! However, first we need to figure out how to get the AtoM documentation files from the Vagrant box into our local text editor! Because the files are inside the virtual machine, we will need to connect to them over your local network discovery settings. You may first need to make some changes on your computer to be able to find them! Some tips for major operating systems are included below.&lt;br /&gt;
&lt;br /&gt;
'''Jump to:'''&lt;br /&gt;
&lt;br /&gt;
* [[#Text editor config - Windows|Text editor config - Windows]]&lt;br /&gt;
* [[#Text editor config - Mac/Linux|Text editor config - Mac/Linux]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Text editor config - Windows====&lt;br /&gt;
&lt;br /&gt;
'''1.''' Open the Control Panel, and navigate to: ''Control panel &amp;gt; Network and Internet &amp;gt; Network and Sharing Center''&lt;br /&gt;
&lt;br /&gt;
'''2.''' Select Change advanced sharing settings from the left menu&lt;br /&gt;
&lt;br /&gt;
[[File:window-network-config-1.png|center|600px|thumb|An image of the Network Sharing Center settings in Windows]]&lt;br /&gt;
&lt;br /&gt;
'''3.''' Under the network discovery heading, choose &amp;quot;Turn on network discovery&amp;quot; in the settings, and then click the button to save your changes&lt;br /&gt;
&lt;br /&gt;
[[File:window-network-config-2.png|center|600px|thumb|An image of the Network Sharing Center settings in Windows]]&lt;br /&gt;
&lt;br /&gt;
'''4.''' Now we can try to find the Vagrant box on your local network. Open up an Explorer window, and click on the Network option in the  left menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
The vagrant box must be booted up and running to be discoverable on your network. If you haven't already run &amp;quot;vagrant up&amp;quot; and followed the other usual steps to start your Vagrant session, you won't be able to find it on the network!&lt;br /&gt;
&lt;br /&gt;
Note that even in the best circumstances, for whatever reason this doesn't always work immediately in Windows. You may need to refresh the search, try more than once, etc. You can also try entering the path directly into Explorer's file path:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
\\\VAGRANT\vagrant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:windows-vagrant.png|center|550px|thumb|An image a file explorer in Windows connecting to the AtoM docs in Vagrant]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We strongly recommend that, once you manage to access this, you add it to your Explorer &amp;quot;Quick links&amp;quot; so you can easily find it later!&lt;br /&gt;
&lt;br /&gt;
'''5.''' When your computer has successfully connected, you will see folders “atom” and “atom-docs”. Open your text editor  and drag  the &amp;quot;atom-docs&amp;quot; folder into the editor.&lt;br /&gt;
&lt;br /&gt;
You're ready to start making changes now!&lt;br /&gt;
&lt;br /&gt;
====Text editor config - Mac/Linux====&lt;br /&gt;
&lt;br /&gt;
On your Mac, open Spotlight by clicking the magnifying glass icon in the top right corner of your desktop, or by choosing command-space bar, and type &amp;lt;code&amp;gt;cifs://10.10.10.10&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
The vagrant box must be booted up and running to be discoverable on your network. If you haven't already run &amp;quot;vagrant up&amp;quot; and followed the other usual steps to start your Vagrant session, you won't be able to find it on the network!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mac-access-docs-locally.png|center|600px|thumb|An image of Spotlight on a Mac]]&lt;br /&gt;
&lt;br /&gt;
Hit “enter” to connect. Choose “vagrant”. When asked for a username and password, type “vagrant” for both.&lt;br /&gt;
&lt;br /&gt;
[[File:mac-connect.png|center|600px|thumb|Connect to your vagrant box]]&lt;br /&gt;
&lt;br /&gt;
When your computer has successfully connected, you will see folders “atom” and “atom-docs”. Open your text editor (atom.io in this screenshot) and drag “atom-docs” into the editor.&lt;br /&gt;
&lt;br /&gt;
[[File:mac-add-text-to-editor.png|center|600px|thumb|Add documents to your local text editor]]&lt;br /&gt;
&lt;br /&gt;
You're ready to start making changes now!&lt;br /&gt;
&lt;br /&gt;
===Make changes and commit them to your fork===&lt;br /&gt;
&lt;br /&gt;
You should now have the entire AtoM documentation project file hierarchy represented in the navigation pane of your local text edit. You can now navigate to the .rst files you want to edit and make your changes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Before making any major changes, please review the following:&lt;br /&gt;
&lt;br /&gt;
* [[Resources/Documentation/Contribution_guidelines|AtoM documentation contribution guidelines]]&lt;br /&gt;
&lt;br /&gt;
You might also find the following resources helpful:&lt;br /&gt;
&lt;br /&gt;
* [http://sphinx-doc.org/ Sphinx] documentation website&lt;br /&gt;
* [http://www.sphinx-doc.org/master/usage/restructuredtext/basics.html reStructured Text primer]&lt;br /&gt;
* [https://chris.beams.io/posts/git-commit/ How to write a commit message]&lt;br /&gt;
* [https://help.github.com/ GitHub Help pages]&lt;br /&gt;
&lt;br /&gt;
'''If you are making major changes''' (e.g. significant rewrites, new content, etc), please file an issue in GitHub first, and reference the issue in your pull request name when you are ready to submit. For more information on filing issues, see:&lt;br /&gt;
&lt;br /&gt;
* [[#File an issue in our documentation repository|File an issue in our documentation repository]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you have finished editing, save your work in your text editor. Return to the terminal screen and run &amp;lt;code&amp;gt;make clean html&amp;lt;/code&amp;gt;. Sphinx maintains a copy of the local output in the &amp;lt;code&amp;gt;_build&amp;lt;/code&amp;gt; directory - running the &amp;lt;code&amp;gt;make clean html&amp;lt;/code&amp;gt; does two things at once - first, it will purge all older builds from your _build directory; second, it will then generate new HTML preview versions, which can be found in &amp;lt;code&amp;gt;_build/html&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Review and resolve any errors or warnings output when you run the make task, and preview the local HTML build version in &amp;lt;code&amp;gt;_build/html&amp;lt;/code&amp;gt;. Make any fixes as needed, and repeat this process as necessary until you are satisfied with the outcome, and there are no more errors or warnings when running the make command. Now we're ready to commit your changes to your copy of the AtoM docs repository!&lt;br /&gt;
&lt;br /&gt;
These instructions assume some basic familiarity with git and workflow management in distributed version control systems. However, we'll include some reminders below:&lt;br /&gt;
&lt;br /&gt;
'''Adding files to a commit:'''&lt;br /&gt;
&lt;br /&gt;
* Use &amp;lt;code&amp;gt;git status -s&amp;lt;/code&amp;gt; to see a list of all new and modified files in your local working directory&lt;br /&gt;
* You need to add files from your local working directory to the staging environment before you can make the commit.&lt;br /&gt;
* Use &amp;lt;code&amp;gt;git add -A&amp;lt;/code&amp;gt; to add all the files in your working directory&lt;br /&gt;
* If you just want to make a selection (for example, if you fixed an unrelated typo along the way, and want to keep it as a separate commit), add each individually by providing the path, e.g. &amp;lt;code&amp;gt;git add user-manual/add-edit-content/archival-descriptions.rst&amp;lt;/code&amp;gt;&lt;br /&gt;
* You can also add all the contents of a directory by just pointing to the parent directory. Unchanged files will be ignored. So for example, if you've added 3 images to the images directory in add-edit-content, you could add each individually, or just use: &amp;lt;code&amp;gt;git add user-manual/add-edit-content/images/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Preparing and pushing commits:'''&lt;br /&gt;
&lt;br /&gt;
* Try to follow best practices when preparing commit messages. See [https://chris.beams.io/posts/git-commit/ this blog post] from Chris Beams for a great summary&lt;br /&gt;
* If you are making major changes, remember to [[#File an issue in our documentation repository|file an issue in our documentation repository]] first, and reference the issue number in the commit subject - for example &amp;quot;Add permissive slug setting docs, fixes #82&amp;quot; (see the PR [https://github.com/artefactual/atom-docs/pull/91 here] and the related issue [https://github.com/artefactual/atom-docs/issues/82 here])&lt;br /&gt;
* Commits and pull requests should be atomic - that is, they should relate to only one specific thing at a time. If you are rewriting accession docs and find an unrelated typo in the physical storage documentation, keep that change in a separate commit - and a separate pull request&lt;br /&gt;
* Commit titles should be 50 characters or less, ideally! If you need a longer explanation, add a description as well&lt;br /&gt;
* You can add a commit title without a description by using &amp;lt;code&amp;gt;git commit -m &amp;quot;your message here&amp;quot;&amp;lt;/code&amp;gt;. If you just enter &amp;quot;git commit&amp;quot;, you will be taken to a separate edit screen where you can add both a title and a longer description&lt;br /&gt;
* When all the files in your local staging area have been committed, you can push them to your GitHub repository with &amp;lt;code&amp;gt;git push&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Did your push fail?&lt;br /&gt;
&lt;br /&gt;
If so, it may be because of your GitHub account settings. Log into your GitHub account, and using the menu under your profile pic, choose Settings. On the settings page, select &amp;quot;Emails&amp;quot; from the menu on the left side and then scroll down the page:&lt;br /&gt;
&lt;br /&gt;
[[File:github-email-settings.png|center|600px|thumb|An image of the email settings in GitHub]]&lt;br /&gt;
&lt;br /&gt;
You may need to uncheck the box that says, &amp;quot;Block command line pushes that expose my email.&amp;quot; GitHub will still hide your email on your profile page with this unchecked, but your email address is included as part of the commit history, when listing authors. Git will use the email address you configured when setting your Git identity in the steps above. Fortunately, if you don't want your primary email address included in commit messages, you have options, as GitHub can support multiple email addresses. For more information, see:&lt;br /&gt;
&lt;br /&gt;
* [https://help.github.com/en/articles/about-commit-email-addresses GitHub: About commit email addresses]&lt;br /&gt;
* [https://help.github.com/en/articles/setting-your-commit-email-address-on-github GitHub: setting your commit email address on GitHub]&lt;br /&gt;
* [https://help.github.com/en/articles/setting-your-commit-email-address-in-git GitHub: setting your commit email address in git]&lt;br /&gt;
&lt;br /&gt;
Don't forget to update your global git identity with the email you want to use as well! See the section [[#Change_the_AtoM_vagrant_box_to_track_your_new_fork|above]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Once you've updated your git and GitHub settings, you can try to run &amp;lt;code&amp;gt;git push&amp;lt;/code&amp;gt; again.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Congrats! You're now ready to open a pull request against the public AtoM documentation!&lt;br /&gt;
&lt;br /&gt;
===Keep your fork up to date===&lt;br /&gt;
&lt;br /&gt;
If you've been working in your local version of the documentation for a while, it's possible that there are new changes in the public documentation repository that you don't yet have. Before we open a pull request, we should make sure that your local fork is up to date.&lt;br /&gt;
&lt;br /&gt;
GitHub has a good summary here:&lt;br /&gt;
&lt;br /&gt;
* [https://help.github.com/en/articles/configuring-a-remote-for-a-fork https://help.github.com/en/articles/configuring-a-remote-for-a-fork]&lt;br /&gt;
&lt;br /&gt;
Essentially, we will add the public atom-docs repository as an &amp;quot;upstream&amp;quot; repository from your fork, so you can pull in the latest changes. To do so, enter:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git remote add upstream https://github.com/artefactual/atom-docs.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can verify that the new upstream repository has been added properly with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git remote -v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now let's update your fork from the upstream branch - i.e. the public atom-docs repo. See this GitHub guide for more information:&lt;br /&gt;
&lt;br /&gt;
* https://help.github.com/en/articles/syncing-a-fork&lt;br /&gt;
&lt;br /&gt;
An example: If you are working in the 2.6 documentation branch, you might do something like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git checkout 2.6&lt;br /&gt;
git fetch upstream&lt;br /&gt;
git rebase upstream/2.6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Troubleshooting====&lt;br /&gt;
&lt;br /&gt;
If you get an error when trying to rebase upstream, like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git rebase upstream/2.6&lt;br /&gt;
Cannot rebase: You have unstaged changes.&lt;br /&gt;
Please commit or stash them.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can '''either''' commit your local changes, add a commit message, and push them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git commit -a&lt;br /&gt;
git rebase upstream/2.6&lt;br /&gt;
git push&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''OR''' you can stash your local changes and then unstash them after rebasing:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git stash&lt;br /&gt;
git rebase upstream/2.6&lt;br /&gt;
git stash pop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
For more on stashing with Git, see:&lt;br /&gt;
&lt;br /&gt;
* [https://git-scm.com/book/en/v1/Git-Tools-Stashing https://git-scm.com/book/en/v1/Git-Tools-Stashing]&lt;br /&gt;
* [https://www.git-scm.com/docs/git-stash https://www.git-scm.com/docs/git-stash]&lt;br /&gt;
* [http://gitguys.com/topics/temporarily-stashing-your-work/ http://gitguys.com/topics/temporarily-stashing-your-work/]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''OR''' you can throw them away&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
'''BE CAREFUL: THIS WILL DELETE ALL LOCAL CHANGES YOU HAVE MADE!'''&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git reset --hard&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the files you have been altering have also been altered in the public repository while you've been working, then it's possible you will run into a conflict. Merge conflicts happen when you merge branches that have competing commits, and Git needs your help to decide which changes to incorporate in the final merge. Generally, you'll have to find the places in the files where the conflicts are listed, pick which version of the changes you want to keep, and delete any extraneous content that you don't want. Below are some resources to help get you started:&lt;br /&gt;
&lt;br /&gt;
* [https://help.github.com/en/articles/about-merge-conflicts GitHub: About merge conflicts]&lt;br /&gt;
* [https://help.github.com/en/articles/resolving-a-merge-conflict-using-the-command-line GitHub: resolving a merge conflict using the command-line]&lt;br /&gt;
* [https://stackoverflow.com/questions/161813/how-to-resolve-merge-conflicts-in-git?answertab=votes#tab-top StackOverflow: suggestions on using git mergetool to resolve conflicts]&lt;br /&gt;
* [https://githowto.com/resolving_conflicts GitHowTo: Resolving conflicts]&lt;br /&gt;
&lt;br /&gt;
===Open a pull request===&lt;br /&gt;
&lt;br /&gt;
GitHub has a great guide here:&lt;br /&gt;
&lt;br /&gt;
* [https://help.github.com/en/articles/creating-a-pull-request-from-a-fork https://help.github.com/en/articles/creating-a-pull-request-from-a-fork]&lt;br /&gt;
&lt;br /&gt;
A few reminders:&lt;br /&gt;
&lt;br /&gt;
* Make sure you are submitting your pull request against the correct branch of our docs! We version the AtoM documentation into separate branches for each major release (e.g. 2.3, 2.4, 2.5, etc)&lt;br /&gt;
* The [https://chris.beams.io/posts/git-commit/ Commit best practices] are also useful for preparing good Pull request summaries! Make sure we have a clear overview of what you've changed and why&lt;br /&gt;
* If you are making major changes, remember to [[#File an issue in our documentation repository|file an issue in our documentation repository]] first, and reference the issue number in the PR subject - for example &amp;quot;Add permissive slug setting docs, fixes #82&amp;quot; (see the PR [https://github.com/artefactual/atom-docs/pull/91 here] and the related issue [https://github.com/artefactual/atom-docs/issues/82 here])&lt;br /&gt;
&lt;br /&gt;
Our team will be notified once you've submitted your pull request - we'll review the work, and if we have questions or feedback, we'll post comments directly on the pull request. Make sure GitHub account settings are configured to notify you of changes, so you can follow up!&lt;br /&gt;
&lt;br /&gt;
===Add fixes and squash your commits===&lt;br /&gt;
&lt;br /&gt;
Once you've submitted your pull request, the Artefactual team will review the changes. If there's a problem, we can send you a message via GitHub, or even [https://help.github.com/articles/using-pull-requests/#pull-request-discussion begin a discussion right on the code!] This way, if there's something we don't understand about the changes you've made, we can connect with you directly.  This is very similar to the code review process we undertake on code submissions from developers - see our [[Development/Code review|Code review]] wiki page for more information.&lt;br /&gt;
&lt;br /&gt;
You'll be able to see a summary of our changes and the status of the review on your pull request. We'll add comments if we have changes to request.&lt;br /&gt;
&lt;br /&gt;
If you need to make changes, you can simply return to the files and edit them in place. Follow the same steps as above - when you push a new commit, GitHub should automatically include it as part of your pull request. You can also reply on the PR comments thread to ask for clarification or help, or to let us know that the requested changes have been implemented.&lt;br /&gt;
&lt;br /&gt;
[[File:git-pull-respond.png|center|600px|frameless|An image of the comments thread as seen on a pull request in GitHub]]&lt;br /&gt;
&lt;br /&gt;
====Squashing commits====&lt;br /&gt;
&lt;br /&gt;
In some cases, we may request that you squash your commits when you update your PR, to keep the commit history clean and easy to understand.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
'''What does squashing mean in git?'''&lt;br /&gt;
&lt;br /&gt;
The term squashing refers to consolidating multiple commits into one single commit, for the purpose of simplifying the project history. When there are many small commits, including minor revisions to previous work, a lot of the commit history is only relevant for the developer who generated it, so it's considered best practice to simplify this before submitting your work to a shared repository. Git provides users with the ability to rewrite the history of a commit for cases such as this - so squashing in this context refers to moving the changes introduced in one commit into its parent, so that you end up with one commit out of two or more.&lt;br /&gt;
&lt;br /&gt;
For more general information on this topic, see the following chapter in the Git Book:&lt;br /&gt;
&lt;br /&gt;
* [https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History Git Tools: Rewriting History]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are several ways that you can do this in git, but our preferred method is to use git's interactive rebase. To do so:&lt;br /&gt;
&lt;br /&gt;
'''1.''' Run git rebase using interactive mode. The numeric value after our &amp;lt;code&amp;gt;HEAD&amp;lt;/code&amp;gt; variable in the following command tells git how many commits we want to fetch. For example, if your pull request currently includes 4 commits (of which the first contains the body of your work, and the next three are minor corrections), then we can see all of these commits using &amp;lt;code&amp;gt;4&amp;lt;/code&amp;gt; as the variable, like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git rebase -i HEAD~4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should display something similar to the following output:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
pick d2c53e5 Update CSV import docs, fixes #50&lt;br /&gt;
pick efaf92d Fix a typo in CSV import rewrite&lt;br /&gt;
pick 5bc533c Add another section to the rewrite&lt;br /&gt;
pick 3d304f2 Another minor formatting fix&lt;br /&gt;
&lt;br /&gt;
# Rebase d2c53e5...3d304f2 onto 609f966 (4 commands)&lt;br /&gt;
#&lt;br /&gt;
# Commands:&lt;br /&gt;
# p, pick = use commit&lt;br /&gt;
# r, reword = use commit, but edit the commit message&lt;br /&gt;
# e, edit = use commit, but stop for amending&lt;br /&gt;
# s, squash = use commit, but meld into previous commit&lt;br /&gt;
# f, fixup = like &amp;quot;squash&amp;quot;, but discard this commit's log message&lt;br /&gt;
# x, exec = run command (the rest of the line) using shell&lt;br /&gt;
# d, drop = remove commit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
Notice that there are 4 commits shown with the word &amp;lt;code&amp;gt;pick&amp;lt;/code&amp;gt; next to them. If we ran the command using &amp;lt;code&amp;gt;HEAD~2&amp;lt;/code&amp;gt;, this list would only include the 2 most recent commits. You can also show other unrelated commits (i.e. include more - &amp;lt;code&amp;gt;HEAD~8&amp;lt;/code&amp;gt;) and simply leave them untouched in the following steps, if desired.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
What we're seeing above is a list of the last 4 commits for the repository. Note that it's in reverse order - the bottom commit is the most recent one. Instead of merging four commits, three of which are minor fixes to the first commit, it would be tidier to have one commit that included all those fixes. To squash them together, you'll need to decide which changes are minor (or fixups) - in this case, the 3 last commits. Let's change them so they will be squashed.&lt;br /&gt;
&lt;br /&gt;
'''2.''' using our command-line text editor, we now want to edit the word &amp;quot;pick&amp;quot; before the 3 corrections, and change them to &amp;quot;fixup&amp;quot; - once saved, this tells git that these commits should be squashed into the first commit (still marked as &amp;quot;pick&amp;quot; - i.e. use this one), and their commit message discarded in favor of the original message associated with the commit you are keeping.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
When you were setting your global git identity, did you set your default preferred command-line text editor?&lt;br /&gt;
&lt;br /&gt;
If not, odds are good that the default editor is vim - vim's commands can be pretty confusing if you are not used to them! Here are some tips:&lt;br /&gt;
&lt;br /&gt;
* By default you are in &amp;quot;normal mode&amp;quot; - you can view, but not edit&lt;br /&gt;
* Press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to enter insert mode, so you can make edits&lt;br /&gt;
* Pressing &amp;lt;code&amp;gt;ESC&amp;lt;/code&amp;gt; will return you to normal mode (not insert mode)&lt;br /&gt;
* When you've made edits and then have returned to normal mode, press &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save and exit (write and quit)&lt;br /&gt;
* You can quit ''without'' saving when in normal mode with &amp;lt;code&amp;gt;:q&amp;lt;/code&amp;gt;&lt;br /&gt;
* If you are reordering commits, &amp;lt;code&amp;gt;dd&amp;lt;/code&amp;gt; in insert mode will cut the current line and copy it to the clipboard, and &amp;lt;code&amp;gt;P&amp;lt;/code&amp;gt; will paste the clipboard content before the current line&lt;br /&gt;
&lt;br /&gt;
You can read more about vim here:&lt;br /&gt;
&lt;br /&gt;
* [https://vim.fandom.com/wiki/Tutorial vim Tutorial]&lt;br /&gt;
* [https://vim.fandom.com/wiki/New_to_Vim New to vim]&lt;br /&gt;
* [https://vimhelp.org/vim_faq.txt.html vim FAQ]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once you've made the necessary changes, save them and exit the editor:&lt;br /&gt;
&lt;br /&gt;
* In vi or vim, use ESC to ensure you are in normal mode, then enter &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save and exit&lt;br /&gt;
* In nano, use &amp;lt;code&amp;gt;CTRL+o&amp;lt;/code&amp;gt;, press enter, and then &amp;lt;code&amp;gt;CTRL+x&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''3.''' Before we proceed, let's confirm we've done this correctly. Run the command: &amp;lt;code&amp;gt;git log -1&amp;lt;/code&amp;gt; to show the latest commit -  it shoudl be the main commit you want to keep, and not any of the smaller fixes we marked with fixup. It should look something like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
commit d2c53e548e339acdd5e1c3e2762347d1562b195f&lt;br /&gt;
Author: username &amp;lt;email@example.com&amp;gt;&lt;br /&gt;
Date:   Wed Nov 14 15:54:08 2018 -0700&lt;br /&gt;
&lt;br /&gt;
    Update CSV import docs, fixes #50&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it's not, you can run &amp;lt;code&amp;gt;git log&amp;lt;/code&amp;gt; to see a full list of all commits, and figure out what you missed. Repeat the steps above as needed.&lt;br /&gt;
&lt;br /&gt;
'''4.''' Once you've successfully squashed your commits, we'll force push the fixed-up commit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git push -f&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Success!&lt;br /&gt;
&lt;br /&gt;
===Celebrate===&lt;br /&gt;
&lt;br /&gt;
You did it! Thank you for contributing to the AtoM documentation!&lt;br /&gt;
&lt;br /&gt;
Once we've accepted the pull request and merged it into our repository, you'll get a notification (you'll probably get an email too, unless you've changed your default GitHub account settings). You'll be able to see the status of any changes right on the pull request.&lt;br /&gt;
&lt;br /&gt;
It's time to dance!&lt;br /&gt;
&lt;br /&gt;
==Questions?==&lt;br /&gt;
&lt;br /&gt;
If there's something that you're not clear about in these instructions, or you've run into an unexpected error, send us an email at [mailto:webmaster@artefactual.com webmaster@artefactual.com], or make a post in the AtoM [https://groups.google.com/forum/#!forum/ica-atom-users User Forum]!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
* [[Resources/Documentation/Contribution guidelines|Documentation contribution guidelines]]&lt;br /&gt;
* [[Resources/Documentation/About|About the AtoM documentation]]&lt;br /&gt;
* [[Development/Contribute code|Contribute code]]&lt;br /&gt;
* [[Resources/Translation|Contribute translations]]&lt;br /&gt;
* [[Resources/User forum|Using the AtoM User Forum]]&lt;br /&gt;
* [[Resources/Issue tracker|Using the AtoM Issue tracker]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Contribute documentation translations==&lt;br /&gt;
&lt;br /&gt;
Want to help us translate these docs into your language? We rely on our amazing community volunteers to help us make AtoM a truly international application. Currently we are using [https://translations.artefactual.com/ Weblate] to help us manage our project translations.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;warning&amp;quot;&amp;gt;&lt;br /&gt;
This is still a work in progress! We hope to be able to add our documentation to Weblate in the future. In the meantime, we're always looking for help translating AtoM itself! See:  [[Resources/Translation|Contribute translations]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Resources/Documentation|Back to Documentation]]&lt;br /&gt;
* [[Resources|Back to Resources]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Resources]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Zerpal&amp;diff=3578</id>
		<title>User:Zerpal</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Zerpal&amp;diff=3578"/>
				<updated>2024-03-22T16:34:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Docente , Universidad Central de Venezuela&lt;br /&gt;
Escuela Bibliotecología y Archivología&lt;br /&gt;
Cátedras: Archivos Históricos, Descripción documental y Teoría y práctica de las ciencias de la información.&lt;br /&gt;
Actualmente realizo mi trabajo de ascenso con el Software AtoM &amp;quot; una propuesta de descripción documental para el Archivo Histórico de esta universidad&amp;quot;&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Adelaro&amp;diff=3577</id>
		<title>User:Adelaro</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Adelaro&amp;diff=3577"/>
				<updated>2024-03-22T16:34:20Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Estudiante del curso de la UNED Digitalización del Patrimonio&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Exponav&amp;diff=3576</id>
		<title>User:Exponav</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Exponav&amp;diff=3576"/>
				<updated>2024-03-22T16:31:05Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Server's Atom Administrator. Archivo de la Fundación Exponav. Search support&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Svarog&amp;diff=3575</id>
		<title>User:Svarog</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Svarog&amp;diff=3575"/>
				<updated>2024-03-22T16:30:50Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Researcher of Serbian history of the Middle and Late Middle Ages&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Arnaldoram&amp;diff=3574</id>
		<title>User:Arnaldoram</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Arnaldoram&amp;diff=3574"/>
				<updated>2024-03-22T16:30:33Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ingeniero de sistemas informáticos, nacido em la ciudad de Potosí Bolivia, encargado de sistemas del Archivo y Biblioteca Nacionales de Bolivia, además del área de digitalización.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Customization&amp;diff=3564</id>
		<title>Community/Community resources/Customization</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Community_resources/Customization&amp;diff=3564"/>
				<updated>2024-02-26T14:44:02Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Instructions on swapping XSLT files */ Update instructions for PHP 7.4&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Customization}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; [[Community/Community resources]] &amp;gt; Community/Community resources/Customization&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here we will link some examples of AtoM customization by community members which can be achieved without developer support. Have a resource to add, or one that you know about which is publicly available? Please help us by [[Special:UserLogin|adding it!]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
Looking for custom development, such as plugins, themes, and code patches? Check out our Community development page:&lt;br /&gt;
* [[Community/Community resources/Development|Community development]]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Help pages==&lt;br /&gt;
&lt;br /&gt;
Below are some examples of ways that AtoM administrators have tried to make their catalogues easier to use for their public users. Many of these examples use AtoM's existing static page and menu modules. Please feel free to add your own resources!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
For details on creating new static pages see our [https://www.accesstomemory.org/en/docs/ documentation] for your current version; specifically see Manage Static Pages and Manage Menus.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Beaton Institutite Project guides===&lt;br /&gt;
&lt;br /&gt;
The [http://beatoninstitute.com/ Beaton Institute] at Cape Breton University has used a creative mix of static pages and subject terms to create beautiful user guides to their holdings. See some examples below:&lt;br /&gt;
&lt;br /&gt;
* [http://beatoninstitute.com/projects Projects landing page]&lt;br /&gt;
* [http://beatoninstitute.com/ww1 Cape Breton during WWI]&lt;br /&gt;
* [http://beatoninstitute.com/newspapers Nova Scotia Historical Newspapers]&lt;br /&gt;
* [http://beatoninstitute.com/bns Black Nova Scotian Holdings]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mills Archive help pages===&lt;br /&gt;
&lt;br /&gt;
The [http://catalogue.millsarchive.org/ Mills Archive] AtoM site includes a number of inter-linked static pages, created to help users understand how to use the catalogue. Here are some direct links to some examples:&lt;br /&gt;
&lt;br /&gt;
* [http://catalogue.millsarchive.org/basic-search Basic search]&lt;br /&gt;
* [http://catalogue.millsarchive.org/advanced-search Advanced search]&lt;br /&gt;
* [http://catalogue.millsarchive.org/browse Browse]&lt;br /&gt;
* [http://catalogue.millsarchive.org/how_it_works How the catalogue works]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===City of Vancouver Archives search help===&lt;br /&gt;
&lt;br /&gt;
The City of Vancouver Archives created an &amp;quot;About Searching&amp;quot; help page using the static page functionality in AtoM.&lt;br /&gt;
&lt;br /&gt;
* [http://searcharchives.vancouver.ca/about CVA's About Searching page]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Simon Fraser University user guides===&lt;br /&gt;
&lt;br /&gt;
At Simon Fraser University, the SFU Archives and SFU Library's Special Collections and Rare Books share an AtoM instance, using AtoM's multi-institutional functionality. To assist their users, they have created an extremely detailed search guide, as well as a User's guide to finding aids, explaining (among other things), how hierarchical description is used in archives, how the reference codes are constructed, and more.&lt;br /&gt;
&lt;br /&gt;
* [http://atom.archives.sfu.ca/index.php/search-tips SFU Search tips]&lt;br /&gt;
* [http://atom.archives.sfu.ca/index.php/users-guide-to-finding-aids SFU User's guide to finding aids]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===MemoryNS video tutorials===&lt;br /&gt;
&lt;br /&gt;
[https://memoryns.ca/ MemoryNS], the Nova Scotian archival union catalogue maintained by the Council of Nova Scotia Archives ([http://www.councilofnsarchives.ca/ CNSA]), has created a number of video tutorials on searching, browsing, and much more, and included the playlist of videos in a static page in their AtoM instance. Check it out here:&lt;br /&gt;
&lt;br /&gt;
* [https://memoryns.ca/tutorial-videos MemoryNS Tutorial videos]&lt;br /&gt;
&lt;br /&gt;
===Borthwick Institute for Archives' FAQ and Glossary pages===&lt;br /&gt;
&lt;br /&gt;
The [https://borthcat.york.ac.uk/ Borthwick Institute for Archives] at the [http://www.york.ac.uk/ University of York] has included two static pages to support their users - an FAQ, and a Glossary of archival terms used in the catalogue:&lt;br /&gt;
&lt;br /&gt;
* [https://borthcat.york.ac.uk/index.php/glossary Glossary]&lt;br /&gt;
* [https://borthcat.york.ac.uk/index.php/about FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Australia National University Archives' Help searching page===&lt;br /&gt;
&lt;br /&gt;
With content describing over 20km of material (ca. 1800 collections, over 1200 creators), [http://archivescollection.anu.edu.au/ ANU] ensures that their users have a helpful resource nearby. This help page is maintained in HTML outside of AtoM, but is linked in the AtoM database via the Quick links menu, and mentioned on the home page&lt;br /&gt;
&lt;br /&gt;
* [http://archives.anu.edu.au/collections/finding-aids/database ANU's Database help page]&lt;br /&gt;
&lt;br /&gt;
==Institution pages==&lt;br /&gt;
&lt;br /&gt;
Here are some examples of users who have taken advantage of the Archival institution theming options in AtoM and implemented them in creative ways!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Guelph Public Library Archeion page===&lt;br /&gt;
&lt;br /&gt;
Guelph Public Library Archives has done [http://www.archeion.ca/guelph-public-library-archives extensive customizations] to their Archeion (union database for the Archives Association of Ontario). For details on editing an institutional page see our [https://www.accesstomemory.org/en/docs/ documentation] for your current version, particularly Archival Institutions.&lt;br /&gt;
&lt;br /&gt;
* [http://www.archeion.ca/guelph-public-library-archives Guelph Public Library Archives in Archeion]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Stylesheets==&lt;br /&gt;
&lt;br /&gt;
This section will include alternative XSLTs and other stylesheets that can be used in AtoM. As of the 2.2 release, an XSLT is used to transform archival description EAD XML into PDF or RTF finding aids, for example.&lt;br /&gt;
&lt;br /&gt;
===French XSLTs for finding aid generation===&lt;br /&gt;
&lt;br /&gt;
At this time, the labels used in the Finding aid XSLTs are hard-coded, meaning that they cannot easily be translated for use in other languages. However, several community users have translated the finding aid labels into French - various versions are included below, along with basic installation instructions.&lt;br /&gt;
&lt;br /&gt;
====2.4 French XSLTs====&lt;br /&gt;
&lt;br /&gt;
Les archives de la Ville de Montréal has created French versions of AtoM's XSLTs that are known to work with [[Releases/Release_announcements/Release_2.4|Release 2.4]]. If you would like your Finding aids to be generated  with French labels instead of English ones, a developer can swap the following XSLTs in to replace the default ones included in AtoM.&lt;br /&gt;
&lt;br /&gt;
* [https://storage.accesstomemory.org/tmp/french-xslts.tgz 2.4-french-xslts.tgz] (tarball, 3 files, 31.1 KB)&lt;br /&gt;
&lt;br /&gt;
====2.6 French XSLTs====&lt;br /&gt;
&lt;br /&gt;
Some stylistic changes were introduced to the finding aid layouts in [[Releases/Release_announcements/Release_2.6|Release 2.6]] - details can be found on Issue #[https://projects.artefactual.com/issues/10591#note-7 10591].&lt;br /&gt;
&lt;br /&gt;
Community user Aude Alexandre updated the 2.4 version above with the changes introduced in Release 2.6 and has shared them with the community. If you would like to download this version of the French XSLTs, you can find them here:&lt;br /&gt;
&lt;br /&gt;
* [http://storage.accesstomemory.org/xlsts/fr/atom-xlsts-fr-v262.zip 2.6-french-xslts.zip] (compressed ZIP, 2 files, 24KB)&lt;br /&gt;
&lt;br /&gt;
====2.8 French XSLTs====&lt;br /&gt;
&lt;br /&gt;
The finding aid templates were updated to use a local DTD in [[Releases/Release_announcements/Release_2.7|Release 2.7]]. Also, some of the common fields that were used in the multiple XSL files were moved to a single common file to avoid duplication. The French XSLTs from v2.6 were updated to reflect these changes, and the updated version can be found here:&lt;br /&gt;
&lt;br /&gt;
* [http://storage.accesstomemory.org/xlsts/fr/atom-xlsts-fr-v280.zip 2.8.0-french-xslts.zip] (compressed ZIP, 4 files, 25.1KB)&lt;br /&gt;
&lt;br /&gt;
====Instructions on swapping XSLT files====&lt;br /&gt;
&lt;br /&gt;
* Download and then extract one of the tarball files linked above&lt;br /&gt;
* In your AtoM instance, navigate via the command-line to &amp;lt;code&amp;gt;lib/task/pdf/&amp;lt;/code&amp;gt;&lt;br /&gt;
* Replace the existing files with those found in tarball&lt;br /&gt;
* Clear application cache, restart services (php-fpm, webserver, atom-worker) - the following examples assume you've installed using Nginx as your webserver:&lt;br /&gt;
&lt;br /&gt;
'''If you are using Ubuntu 14.04 with PHP5.x:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ php symfony cc&lt;br /&gt;
$ sudo service nginx restart&lt;br /&gt;
$ sudo service php5-fpm restart&lt;br /&gt;
$ sudo restart atom-worker&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''If you are using Ubuntu 16.04 with PHP7.0:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ php symfony cc&lt;br /&gt;
$ sudo systemctl restart nginx&lt;br /&gt;
$ sudo systemctl restart php7.0-fpm&lt;br /&gt;
$ sudo systemctl restart atom-worker&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''If you are using Ubuntu 20.04 with PHP7.4:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ php symfony cc&lt;br /&gt;
$ sudo systemctl restart nginx&lt;br /&gt;
$ sudo systemctl restart php7.4-fpm&lt;br /&gt;
$ sudo systemctl restart atom-worker&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may need to clear your web browser's cache to see the changes take effect as well.&lt;br /&gt;
&lt;br /&gt;
You should now see French labels when you generate your next finding aid!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community/Community_resources|Back to Community resources]]&lt;br /&gt;
* [[Community|Back to Community]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Pepe&amp;diff=3563</id>
		<title>User:Pepe</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Pepe&amp;diff=3563"/>
				<updated>2024-02-09T13:10:10Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Archivero&lt;br /&gt;
&amp;quot;Hay que recuperar, mantener y transmitir la memoria histórica, porque se empieza por el olvido y se termina en la indiferencia.” José Saramago&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Paolafilippi&amp;diff=3562</id>
		<title>User:Paolafilippi</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Paolafilippi&amp;diff=3562"/>
				<updated>2024-02-05T13:27:26Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a firm believer in tha fact that, to remember is to not commit the same mistakes twice.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:HannahMeir&amp;diff=3561</id>
		<title>User:HannahMeir</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:HannahMeir&amp;diff=3561"/>
				<updated>2024-02-05T13:27:14Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Archives and Records Management MA student at University of Liverpool&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Laura.waters&amp;diff=3560</id>
		<title>User:Laura.waters</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Laura.waters&amp;diff=3560"/>
				<updated>2024-02-05T13:27:03Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Laura Waters is the Freelance Collections Officer for the National Brewery Heritage Trust, based in Burton on Trent, United Kingdom.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Reedkayla&amp;diff=3557</id>
		<title>User:Reedkayla</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Reedkayla&amp;diff=3557"/>
				<updated>2024-01-24T16:50:14Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Discovery, Systems, &amp;amp; Digital Strategy Librarian at Grinnell College, helps in managing library technology.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Resources/User_forum/Tags&amp;diff=3556</id>
		<title>Resources/User forum/Tags</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Resources/User_forum/Tags&amp;diff=3556"/>
				<updated>2024-01-19T16:31:05Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Add new tag: linked-data&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:User forum tags}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Resources]] &amp;gt; [[Resources/User forum]] &amp;gt; Tags&lt;br /&gt;
&lt;br /&gt;
We have enabled topical tagging in the AtoM [https://groups.google.com/forum/#!forum/ica-atom-users user forum] to help with searching and browsing. If you wish, you can tag your post with keywords - the forum administrators may also add or remove tags later on as we see fit.&lt;br /&gt;
&lt;br /&gt;
Instructions on searching and browsing forum posts with tags, as well as how to tag your own posts, are included below, along with a full list the the tags currently available for use in the forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
The AtoM User Forum is maintained via Google Groups - for more information, see the [https://support.google.com/groups#topic=9216 Groups Help] pages.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Searching and browsing with tags==&lt;br /&gt;
&lt;br /&gt;
'''Browsing by tag'''&lt;br /&gt;
&lt;br /&gt;
If you want to browse all the tags currently in use in the forum, you will find a full list via the link in the right-hand top corner of the AtoM Forum home page:&lt;br /&gt;
&lt;br /&gt;
[[File:forum-tag-link.png|center|700px|thumb| The AtoM User Forum home page with the tags link highlighted]]&lt;br /&gt;
&lt;br /&gt;
Clicking on the link will take you to a page where you can see a list of all available tags. To filter all posts to a specific tag, you can either click on a tag from the list, or you can begin typing the tag into the input box above the list, and selecting the matching tag from the autocomplete results that appear.&lt;br /&gt;
&lt;br /&gt;
[[File:forum-filter-tag.png|center|700px|thumb| The AtoM User Forum tags page]]&lt;br /&gt;
&lt;br /&gt;
The AtoM user forum will reload, with your selected tag at the top of the page, and the results limited to those posts where the selected tag has been added.&lt;br /&gt;
&lt;br /&gt;
[[File:forum-filtered.png|center|700px|thumb| The AtoM User Forum filtered using the import-export tag]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
Google Groups Help article: [https://support.google.com/groups/answer/1311325?hl=en&amp;amp;ref_topic=2459442 View topics with a specific tag]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Searching by tag'''&lt;br /&gt;
You can also use the search box on the AtoM Forum page to use a tag as part of a more complex search. entering the tag you wish to search for, preceded by &amp;lt;code&amp;gt;tag:&amp;lt;/code&amp;gt; will return results for posts with that tag. For example if you wanted to see all posts that had both the import-export and the ead tag, you could search: &amp;lt;code&amp;gt;tag:import-export tag:EAD&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:forum-search-tag.png|center|700px|thumb| Searching the AtoM User Forum for posts with the tag &amp;quot;elasticsearch&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
There are a lot of other useful search terms and operators you can use to improve your searching. For more information, see the following Groups help articles:&lt;br /&gt;
&lt;br /&gt;
* [https://support.google.com/groups/answer/2467140?hl=en&amp;amp;ref_topic=2459443 Search for a group, topic, or post]&lt;br /&gt;
* [https://support.google.com/groups/answer/6141166?hl=en&amp;amp;ref_topic=2459443 Improve your searches with search terms and operators]&lt;br /&gt;
* [https://support.google.com/groups/answer/2371405?hl=en&amp;amp;ref_topic=2459443 List of available search terms]&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Adding a tag to your posts==&lt;br /&gt;
&lt;br /&gt;
At this time, there's no way to add a tag from your email - so if you're subscribed to the User Forum and using it as a mailing list, you'll have to visit the Forum on the web ([https://groups.google.com/forum/#!forum/ica-atom-users here]) if you want to add tags to your posts.&lt;br /&gt;
&lt;br /&gt;
From the web home, there are 2 ways you can add tags - either while creating a new post, or after you've posted, starting a thread.&lt;br /&gt;
&lt;br /&gt;
To add tags as you are composing your post, click the &amp;quot;new topic&amp;quot; button from the Forum home page - you will see an area at the bottom of the compose page where you can add tags:&lt;br /&gt;
&lt;br /&gt;
[[File:add-tag-new-post.png|center|700px|thumb| Adding a new tag while composing a post in the AtoM user forum]]&lt;br /&gt;
&lt;br /&gt;
If you want to add tags to your post after you've already posted it (for example, if you start a topic via email, and then navigate to the Forum on the web), open the thread, and at the top of the thread, you should see a link that says &amp;quot;Add tags.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:add-tag-old-post.png|center|700px|thumb| Adding a new tag to an existing Forum post]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
You can also take a look at the related Groups Help page, [https://support.google.com/groups/answer/1047904?hl=en&amp;amp;ref_topic=2459442 Tag topics].&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Full tag list==&lt;br /&gt;
&lt;br /&gt;
Below is a list of all the tags currently in use the AtoM User Forum:&lt;br /&gt;
&lt;br /&gt;
* 500-error&lt;br /&gt;
* 504-timeout&lt;br /&gt;
* access-point&lt;br /&gt;
* accessibility&lt;br /&gt;
* accession&lt;br /&gt;
* analytics&lt;br /&gt;
* announcements&lt;br /&gt;
* ansible&lt;br /&gt;
* Apache&lt;br /&gt;
* API&lt;br /&gt;
* archival-description&lt;br /&gt;
* archival-institution&lt;br /&gt;
* archivematica&lt;br /&gt;
* AtoM3&lt;br /&gt;
* audit-log&lt;br /&gt;
* authority-record&lt;br /&gt;
* backups&lt;br /&gt;
* bug-report&lt;br /&gt;
* camps&lt;br /&gt;
* clipboard&lt;br /&gt;
* command-line&lt;br /&gt;
* community&lt;br /&gt;
* configuration&lt;br /&gt;
* CSV-export&lt;br /&gt;
* CSV-import&lt;br /&gt;
* DACS&lt;br /&gt;
* data-corruption&lt;br /&gt;
* Debian&lt;br /&gt;
* dependencies&lt;br /&gt;
* description-updates&lt;br /&gt;
* development&lt;br /&gt;
* digital-object&lt;br /&gt;
* DIP_upload&lt;br /&gt;
* docker&lt;br /&gt;
* documentation&lt;br /&gt;
* donor&lt;br /&gt;
* Dublin-Core&lt;br /&gt;
* EAC&lt;br /&gt;
* EAD&lt;br /&gt;
* elasticsearch&lt;br /&gt;
* FAQ&lt;br /&gt;
* finding-aid&lt;br /&gt;
* firewall&lt;br /&gt;
* formatting&lt;br /&gt;
* Foundation&lt;br /&gt;
* FreeBSD&lt;br /&gt;
* function&lt;br /&gt;
* governance&lt;br /&gt;
* hosting&lt;br /&gt;
* import-export&lt;br /&gt;
* installation&lt;br /&gt;
* inventory&lt;br /&gt;
* ISAAR-CPF&lt;br /&gt;
* ISAD-G&lt;br /&gt;
* ISDF&lt;br /&gt;
* ISDIAH&lt;br /&gt;
* job-scheduler&lt;br /&gt;
* languages&lt;br /&gt;
* LDAP&lt;br /&gt;
* linked-data&lt;br /&gt;
* linux&lt;br /&gt;
* logging&lt;br /&gt;
* mac-OS&lt;br /&gt;
* menus&lt;br /&gt;
* migration&lt;br /&gt;
* MODS&lt;br /&gt;
* monitoring&lt;br /&gt;
* multi-repository&lt;br /&gt;
* new-feature&lt;br /&gt;
* Nginx&lt;br /&gt;
* OAI-PMH&lt;br /&gt;
* off-topic&lt;br /&gt;
* Oracle&lt;br /&gt;
* PDF&lt;br /&gt;
* permissions&lt;br /&gt;
* PHP&lt;br /&gt;
* physical-storage&lt;br /&gt;
* plugins&lt;br /&gt;
* publication-status&lt;br /&gt;
* RAD&lt;br /&gt;
* regional-groups&lt;br /&gt;
* releases&lt;br /&gt;
* reports&lt;br /&gt;
* responsive-design&lt;br /&gt;
* rights&lt;br /&gt;
* scalability&lt;br /&gt;
* search-browse&lt;br /&gt;
* security&lt;br /&gt;
* SEO&lt;br /&gt;
* service-providers&lt;br /&gt;
* settings&lt;br /&gt;
* single-sign-on&lt;br /&gt;
* SKOS&lt;br /&gt;
* slugs&lt;br /&gt;
* SQL&lt;br /&gt;
* standards&lt;br /&gt;
* static-pages&lt;br /&gt;
* symfony&lt;br /&gt;
* system-requirements&lt;br /&gt;
* taxonomies&lt;br /&gt;
* themes&lt;br /&gt;
* training&lt;br /&gt;
* translations-i18n&lt;br /&gt;
* treeview&lt;br /&gt;
* upgrades&lt;br /&gt;
* usability&lt;br /&gt;
* user-stories&lt;br /&gt;
* users-groups&lt;br /&gt;
* vagrant&lt;br /&gt;
* visible-elements&lt;br /&gt;
* web-server&lt;br /&gt;
* Windows&lt;br /&gt;
* wish-list&lt;br /&gt;
* XML-export&lt;br /&gt;
* XML-import&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Resources/User_forum|Back to User forum]]&lt;br /&gt;
* [[Resources|Back to Resources]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Resources]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Julice&amp;diff=3555</id>
		<title>User:Julice</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Julice&amp;diff=3555"/>
				<updated>2024-01-17T13:26:33Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Juan Luis Cebrián Echarri (Madrid, 30 de octubre de 1944) es un periodista, escritor y empresario español. Fue director-fundador del diario El País, que dirigió desde 1976 hasta noviembre de 1988. Desde el 19 de diciembre de 1996 es académico de la Real Academia Española.1​ En 2018 dejó la presidencia del Grupo Prisa en manos de Manuel Polanco. La presidencia de El País quedó en manos de Manuel Mirat y Cebrián fue nombrado presidente de honor. Cebrián ha sido considerado por diversos medios internacionales como uno de los diez españoles más influyentes en España y América Latina durante 43 años (desde 1976 a 2018). Es el único académico hispano miembro del Club Bilderberg y el único miembro de lengua española con funciones ejecutivas en el mismo.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:GemmaBravo&amp;diff=3554</id>
		<title>User:GemmaBravo</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:GemmaBravo&amp;diff=3554"/>
				<updated>2024-01-17T13:26:13Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Estudiante Unleon que realiza prácticas para la asignatura de Tecnologías  para la gestión&lt;br /&gt;
de unidades de información&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Elisagiovannetti47&amp;diff=3553</id>
		<title>User:Elisagiovannetti47</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Elisagiovannetti47&amp;diff=3553"/>
				<updated>2024-01-17T13:26:01Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am an archivist specialising in the treatment and description of photographic heritage.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Shanshania&amp;diff=3552</id>
		<title>User:Shanshania</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Shanshania&amp;diff=3552"/>
				<updated>2024-01-17T13:25:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I graduated with a Master degree in Library and Information Management and I'm now working in the archive sector.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Mmjimenez&amp;diff=3551</id>
		<title>User:Mmjimenez</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Mmjimenez&amp;diff=3551"/>
				<updated>2024-01-17T13:25:27Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Me encuentras dedicada a la recuperación de la Memoria Colectiva de los Movimientos Sociales en La Digitalizadora de la Memoria Colectiva (http://archivo.ladigitalizadora.org/).&lt;br /&gt;
&lt;br /&gt;
Organizando el Archivo Fotográfico de la Universidad de Málaga. El objetivo es la preservación de los originales fotográficos y la digitalización y difusión a través de Internet de los fondos fotográficos históricos.&lt;br /&gt;
https://archivo.fotografico.uma.es/historico/index.php/&lt;br /&gt;
https://archivo.fotografico.uma.es/vida-universitaria/index.php/&lt;br /&gt;
&lt;br /&gt;
Como archivera vocacional dedicada a la fotografía, me encuentras en Photoespacio.com (https://www.photoespacio.com).&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3549</id>
		<title>Releases/Release announcements/Release 2.8.0</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3549"/>
				<updated>2024-01-09T19:20:44Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: /* Bootstrap 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Release 2.8.0}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Releases]] &amp;gt; [[Releases/Release announcements]] &amp;gt; Release 2.8.0&lt;br /&gt;
&lt;br /&gt;
'''Release date''': January 8, 2024&lt;br /&gt;
&lt;br /&gt;
'''Download link''': [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
&lt;br /&gt;
'''Database schema version''': v193&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Release 2.8''' is a major AtoM release, and includes important security updates for Content Security Policy, updates to the Bootstrap 5 Dominion theme, as well as bug fixes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Visit the [https://www.accesstomemory.org/download/ Downloads] page to download the most recent release, and consult the 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ Upgrading] and [https://www.accesstomemory.org/en/docs/2.8/admin-manual/installation/ Installation] guides in our documentation for further information.&lt;br /&gt;
&lt;br /&gt;
An overview of some of the major changes in the 2.8 release is included below.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
===Bootstrap 5===&lt;br /&gt;
&lt;br /&gt;
Starting with this release the Bootstrap 5 theme (arDominionB5Plugin) is the default theme for new AtoM installations. Additionally, AtoM is deprecating Boostrap 2 themes starting this release since Bootstrap 2, which was used for the Dominion (arDominionPlugin) and the Archives Canada themes (arArchivesCanadaPlugin), is no longer officially supported.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/customization/theming/#bs2-update Bootstrap 2 update - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
'''Bootstrap 2 will be fully removed from the AtoM 2.9 release'''. If you have a custom theme plugin developed against an earlier release using Bootstrap 2, you will need to upgrade your theme plugin to extend from the new Bootstrap 5 templates instead BEFORE upgrading to 2.9, or else your custom theme will not work. Please follow the AtoM documentation link above, and review the official [https://getbootstrap.com/docs/5.2/getting-started/introduction/ Bootstrap 5 documentation] for guidance.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Content Security Policy===&lt;br /&gt;
&lt;br /&gt;
This release adds Content Security Policy headers to AtoM to further improve security for AtoM. Adding this significantly improved AtoM's performance in web security analysis tools such as Mozilla Observatory which now rate it as A+.&lt;br /&gt;
&lt;br /&gt;
[[File:Mozilla-observatory-scan.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Please read the related documentation page for information on configuration or implementing CSP for your own custom theme.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/security/csp-headers/ Content Security Policy - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
===General bug fixes and enhancements===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1542 #1542] Added an authority record rename module&lt;br /&gt;
''Community code contributions from Matt Innes''&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1662 #1662] Fixed Dockerfile so that it no longer gives an error when it is trying to install a package from npm&lt;br /&gt;
''Community code contributions from Guilherme Arthur Geronimo''&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1684 #1684] Diacritics setting functionality&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1613 #1613] Added a tab for viewing failed jobs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1632 #1632] Set arDominionB5Plugin to be the default theme for new installations in AtoM&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1642 #1642] Added a Bootstrap 2 deprecation notice in the web UI&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1628 #1628] Added REST API support for physical storage object creation&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1624 #1624] Added a new REST API endpoint that allows changing of an information object's publication status&lt;br /&gt;
* [https://projects.artefactual.com/issues/13650 #13650] Increased the PDF indexing limit to 16MB&lt;br /&gt;
* Amharic made available in [https://translations.artefactual.com/projects/atom/2-x/ Weblate] for translation&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1646 #1646] Add CSP headers to AtoM responses&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1693 #1693] Update CSP header default to 'report-only'&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1641 #1641] secure and samesite flags added to AtoM cookies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1715 #1715] Fixed difficult to read job logs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1713 #1713] Fixed typo in API key label when editing user.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1710 #1710] Fixed archival institution page's upload limit form has a broken field on BS5 theme&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1703 #1703] Fixed invalid static pages being created with invalid slugs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1701 #1701] Fixed clipboard send feature no longer sending the request data as a form submission&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1698 #1698] Fixed some BS5 theme typography issues and inconsistencies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1696 #1696] Fixed autocomplete during SKOS import pointing to descriptions instead of taxonomies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1678 #1678] Updated the CSRF attack message to be more informative&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1673 #1673] Added proper page titles for better accessibility (WCAG (2.4.2))&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1666 #1666] Added error handling for the rename-slug CLI tool&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1661 #1661] Fixed incomplete terms being saved in the taxonomy when adding access points&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1653 #1653] Fixed identifier counter not incrementing when used to modify existing descriptions&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1643 #1643] Fixed the broken media-type option on digital object deriv regeneration task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1635 #1635] Fixed global search institutional delimiters and advanced search link&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1634 #1634] Removed the repeated re-index warnings on running the build-nested-set task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1630 #1630] Fixed an ACL check in the REST API's digital object create endpoint that was malformed&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1611 #1611] Added a task description for the password reset task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1606 #1606] Fixed G4 analytics not tracking pageviews from clicks in full-width treeview&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1605 #1605] Fixed escape special characters setting no longer working in 2.7.x&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1598 #1598] Reduced noise in search results that was there due to indexing inherited creators&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1704 #1704] Fixed multi-line i18n strings&lt;br /&gt;
* [https://projects.artefactual.com/issues/13657 #13657] Fixed update function for 'Language and script notes'.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1688 #1688] Updated BS5 navbar-toggler-icon to Font Awesome icon&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1596 #1596] Fixed RAD template fields not appearing when switching languages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Many thanks to Helder Gomes Silva who reported a security vulnerability for this release''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
You can read more about how to report a security vulnerability found in AtoM [https://github.com/artefactual/atom/blob/qa/2.x/SECURITY.md here]&lt;br /&gt;
&lt;br /&gt;
If you're a developer interested in committing bug fixes and enhancements back to the public project, check out our guide on how to [[Development/Contribute_code|contribute code]]!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
&lt;br /&gt;
* AtoM 2.8 tarball direct download:  [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
* AtoM [https://www.accesstomemory.org/download/ Downloads] page&lt;br /&gt;
* 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/ubuntu/ installation] and [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ upgrading] instructions&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Releases/Release_announcements|Back to Release announcements]]&lt;br /&gt;
* [[Releases|Back to Releases]]&lt;br /&gt;
* [[Main Page|AtoM wiki Home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Releases]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3548</id>
		<title>Releases/Release announcements/Release 2.8.0</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3548"/>
				<updated>2024-01-09T19:20:19Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Add warning about BS2 removal&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Release 2.8.0}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Releases]] &amp;gt; [[Releases/Release announcements]] &amp;gt; Release 2.8.0&lt;br /&gt;
&lt;br /&gt;
'''Release date''': January 8, 2024&lt;br /&gt;
&lt;br /&gt;
'''Download link''': [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
&lt;br /&gt;
'''Database schema version''': v193&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Release 2.8''' is a major AtoM release, and includes important security updates for Content Security Policy, updates to the Bootstrap 5 Dominion theme, as well as bug fixes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Visit the [https://www.accesstomemory.org/download/ Downloads] page to download the most recent release, and consult the 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ Upgrading] and [https://www.accesstomemory.org/en/docs/2.8/admin-manual/installation/ Installation] guides in our documentation for further information.&lt;br /&gt;
&lt;br /&gt;
An overview of some of the major changes in the 2.8 release is included below.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
===Bootstrap 5===&lt;br /&gt;
&lt;br /&gt;
Starting with this release the Bootstrap 5 theme (arDominionB5Plugin) is the default theme for new AtoM installations. Additionally, AtoM is deprecating Boostrap 2 themes starting this release since Bootstrap 2, which was used for the Dominion (arDominionPlugin) and the Archives Canada themes (arArchivesCanadaPlugin), is no longer officially supported.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/customization/theming/#bs2-update Bootstrap 2 update - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;important&amp;quot;&amp;gt;&lt;br /&gt;
Bootstrap 2 will be '''fully removed''' from the AtoM 2.9 release. If you have a custom theme plugin developed against an earlier release using Bootstrap 2, you will need to upgrade your theme plugin to extend from the new Bootstrap 5 templates instead BEFORE upgrading to 2.9, or else your custom theme will not work. Please follow the AtoM documentation link above, and review the official [https://getbootstrap.com/docs/5.2/getting-started/introduction/ Bootstrap 5 documentation] for guidance.&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Content Security Policy===&lt;br /&gt;
&lt;br /&gt;
This release adds Content Security Policy headers to AtoM to further improve security for AtoM. Adding this significantly improved AtoM's performance in web security analysis tools such as Mozilla Observatory which now rate it as A+.&lt;br /&gt;
&lt;br /&gt;
[[File:Mozilla-observatory-scan.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Please read the related documentation page for information on configuration or implementing CSP for your own custom theme.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/security/csp-headers/ Content Security Policy - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
===General bug fixes and enhancements===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1542 #1542] Added an authority record rename module&lt;br /&gt;
''Community code contributions from Matt Innes''&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1662 #1662] Fixed Dockerfile so that it no longer gives an error when it is trying to install a package from npm&lt;br /&gt;
''Community code contributions from Guilherme Arthur Geronimo''&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1684 #1684] Diacritics setting functionality&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1613 #1613] Added a tab for viewing failed jobs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1632 #1632] Set arDominionB5Plugin to be the default theme for new installations in AtoM&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1642 #1642] Added a Bootstrap 2 deprecation notice in the web UI&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1628 #1628] Added REST API support for physical storage object creation&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1624 #1624] Added a new REST API endpoint that allows changing of an information object's publication status&lt;br /&gt;
* [https://projects.artefactual.com/issues/13650 #13650] Increased the PDF indexing limit to 16MB&lt;br /&gt;
* Amharic made available in [https://translations.artefactual.com/projects/atom/2-x/ Weblate] for translation&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1646 #1646] Add CSP headers to AtoM responses&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1693 #1693] Update CSP header default to 'report-only'&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1641 #1641] secure and samesite flags added to AtoM cookies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1715 #1715] Fixed difficult to read job logs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1713 #1713] Fixed typo in API key label when editing user.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1710 #1710] Fixed archival institution page's upload limit form has a broken field on BS5 theme&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1703 #1703] Fixed invalid static pages being created with invalid slugs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1701 #1701] Fixed clipboard send feature no longer sending the request data as a form submission&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1698 #1698] Fixed some BS5 theme typography issues and inconsistencies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1696 #1696] Fixed autocomplete during SKOS import pointing to descriptions instead of taxonomies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1678 #1678] Updated the CSRF attack message to be more informative&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1673 #1673] Added proper page titles for better accessibility (WCAG (2.4.2))&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1666 #1666] Added error handling for the rename-slug CLI tool&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1661 #1661] Fixed incomplete terms being saved in the taxonomy when adding access points&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1653 #1653] Fixed identifier counter not incrementing when used to modify existing descriptions&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1643 #1643] Fixed the broken media-type option on digital object deriv regeneration task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1635 #1635] Fixed global search institutional delimiters and advanced search link&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1634 #1634] Removed the repeated re-index warnings on running the build-nested-set task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1630 #1630] Fixed an ACL check in the REST API's digital object create endpoint that was malformed&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1611 #1611] Added a task description for the password reset task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1606 #1606] Fixed G4 analytics not tracking pageviews from clicks in full-width treeview&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1605 #1605] Fixed escape special characters setting no longer working in 2.7.x&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1598 #1598] Reduced noise in search results that was there due to indexing inherited creators&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1704 #1704] Fixed multi-line i18n strings&lt;br /&gt;
* [https://projects.artefactual.com/issues/13657 #13657] Fixed update function for 'Language and script notes'.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1688 #1688] Updated BS5 navbar-toggler-icon to Font Awesome icon&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1596 #1596] Fixed RAD template fields not appearing when switching languages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Many thanks to Helder Gomes Silva who reported a security vulnerability for this release''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
You can read more about how to report a security vulnerability found in AtoM [https://github.com/artefactual/atom/blob/qa/2.x/SECURITY.md here]&lt;br /&gt;
&lt;br /&gt;
If you're a developer interested in committing bug fixes and enhancements back to the public project, check out our guide on how to [[Development/Contribute_code|contribute code]]!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
&lt;br /&gt;
* AtoM 2.8 tarball direct download:  [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
* AtoM [https://www.accesstomemory.org/download/ Downloads] page&lt;br /&gt;
* 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/ubuntu/ installation] and [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ upgrading] instructions&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Releases/Release_announcements|Back to Release announcements]]&lt;br /&gt;
* [[Releases|Back to Releases]]&lt;br /&gt;
* [[Main Page|AtoM wiki Home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Releases]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3547</id>
		<title>Releases/Release announcements/Release 2.8.0</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Releases/Release_announcements/Release_2.8.0&amp;diff=3547"/>
				<updated>2024-01-09T19:11:10Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Add page footer with links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Release 2.8.0}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Releases]] &amp;gt; [[Releases/Release announcements]] &amp;gt; Release 2.8.0&lt;br /&gt;
&lt;br /&gt;
'''Release date''': January 8, 2024&lt;br /&gt;
&lt;br /&gt;
'''Download link''': [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
&lt;br /&gt;
'''Database schema version''': v193&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Release 2.8''' is a major AtoM release, and includes important security updates for Content Security Policy, updates to the Bootstrap 5 Dominion theme, as well as bug fixes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Visit the [https://www.accesstomemory.org/download/ Downloads] page to download the most recent release, and consult the 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ Upgrading] and [https://www.accesstomemory.org/en/docs/2.8/admin-manual/installation/ Installation] guides in our documentation for further information.&lt;br /&gt;
&lt;br /&gt;
An overview of some of the major changes in the 2.8 release is included below.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
===Bootstrap 5===&lt;br /&gt;
&lt;br /&gt;
Starting with this release the Bootstrap 5 theme (arDominionB5Plugin) is the default theme for new AtoM installations. Additionally, AtoM is deprecating Boostrap 2 themes starting this release since Bootstrap 2, which was used for the Dominion (arDominionPlugin) and the Archives Canada themes (arArchivesCanadaPlugin), is no longer officially supported.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/customization/theming/#bs2-update Bootstrap 2 update - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
===Content Security Policy===&lt;br /&gt;
&lt;br /&gt;
This release adds Content Security Policy headers to AtoM to further improve security for AtoM. Adding this significantly improved AtoM's performance in web security analysis tools such as Mozilla Observatory which now rate it as A+.&lt;br /&gt;
&lt;br /&gt;
[[File:Mozilla-observatory-scan.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Please read the related documentation page for information on configuration or implementing CSP for your own custom theme.&lt;br /&gt;
&lt;br /&gt;
'''Related documentation'''&lt;br /&gt;
&lt;br /&gt;
* [https://www.accesstomemory.org/en/docs/2.8/admin-manual/security/csp-headers/ Content Security Policy - AtoM Documentation]&lt;br /&gt;
&lt;br /&gt;
===General bug fixes and enhancements===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1542 #1542] Added an authority record rename module&lt;br /&gt;
''Community code contributions from Matt Innes''&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1662 #1662] Fixed Dockerfile so that it no longer gives an error when it is trying to install a package from npm&lt;br /&gt;
''Community code contributions from Guilherme Arthur Geronimo''&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1684 #1684] Diacritics setting functionality&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1613 #1613] Added a tab for viewing failed jobs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1632 #1632] Set arDominionB5Plugin to be the default theme for new installations in AtoM&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1642 #1642] Added a Bootstrap 2 deprecation notice in the web UI&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1628 #1628] Added REST API support for physical storage object creation&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1624 #1624] Added a new REST API endpoint that allows changing of an information object's publication status&lt;br /&gt;
* [https://projects.artefactual.com/issues/13650 #13650] Increased the PDF indexing limit to 16MB&lt;br /&gt;
* Amharic made available in [https://translations.artefactual.com/projects/atom/2-x/ Weblate] for translation&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1646 #1646] Add CSP headers to AtoM responses&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1693 #1693] Update CSP header default to 'report-only'&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1641 #1641] secure and samesite flags added to AtoM cookies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1715 #1715] Fixed difficult to read job logs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1713 #1713] Fixed typo in API key label when editing user.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1710 #1710] Fixed archival institution page's upload limit form has a broken field on BS5 theme&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1703 #1703] Fixed invalid static pages being created with invalid slugs&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1701 #1701] Fixed clipboard send feature no longer sending the request data as a form submission&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1698 #1698] Fixed some BS5 theme typography issues and inconsistencies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1696 #1696] Fixed autocomplete during SKOS import pointing to descriptions instead of taxonomies&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1678 #1678] Updated the CSRF attack message to be more informative&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1673 #1673] Added proper page titles for better accessibility (WCAG (2.4.2))&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1666 #1666] Added error handling for the rename-slug CLI tool&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1661 #1661] Fixed incomplete terms being saved in the taxonomy when adding access points&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1653 #1653] Fixed identifier counter not incrementing when used to modify existing descriptions&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1643 #1643] Fixed the broken media-type option on digital object deriv regeneration task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1635 #1635] Fixed global search institutional delimiters and advanced search link&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1634 #1634] Removed the repeated re-index warnings on running the build-nested-set task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1630 #1630] Fixed an ACL check in the REST API's digital object create endpoint that was malformed&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1611 #1611] Added a task description for the password reset task&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1606 #1606] Fixed G4 analytics not tracking pageviews from clicks in full-width treeview&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1605 #1605] Fixed escape special characters setting no longer working in 2.7.x&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1598 #1598] Reduced noise in search results that was there due to indexing inherited creators&lt;br /&gt;
* [https://github.com/artefactual/atom/pull/1704 #1704] Fixed multi-line i18n strings&lt;br /&gt;
* [https://projects.artefactual.com/issues/13657 #13657] Fixed update function for 'Language and script notes'.&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1688 #1688] Updated BS5 navbar-toggler-icon to Font Awesome icon&lt;br /&gt;
* [https://github.com/artefactual/atom/issues/1596 #1596] Fixed RAD template fields not appearing when switching languages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Many thanks to Helder Gomes Silva who reported a security vulnerability for this release''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;seealso&amp;quot;&amp;gt;&lt;br /&gt;
You can read more about how to report a security vulnerability found in AtoM [https://github.com/artefactual/atom/blob/qa/2.x/SECURITY.md here]&lt;br /&gt;
&lt;br /&gt;
If you're a developer interested in committing bug fixes and enhancements back to the public project, check out our guide on how to [[Development/Contribute_code|contribute code]]!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
&lt;br /&gt;
* AtoM 2.8 tarball direct download:  [https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz atom-2.8.0.tar.gz]&lt;br /&gt;
* AtoM [https://www.accesstomemory.org/download/ Downloads] page&lt;br /&gt;
* 2.8 [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/ubuntu/ installation] and [https://www.accesstomemory.org/docs/2.8/admin-manual/installation/upgrading/ upgrading] instructions&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Releases/Release_announcements|Back to Release announcements]]&lt;br /&gt;
* [[Releases|Back to Releases]]&lt;br /&gt;
* [[Main Page|AtoM wiki Home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Releases]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=Community/Groups&amp;diff=3539</id>
		<title>Community/Groups</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=Community/Groups&amp;diff=3539"/>
				<updated>2024-01-08T19:02:32Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Remove MidWest user group link, per this forum request: https://groups.google.com/g/ica-atom-users/c/ljPGK0kNkVg/m/zg5bZ517AwAJ&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#pagetitle:Regional user groups}}&lt;br /&gt;
[[Main Page]] &amp;gt; [[Community]] &amp;gt; Community/Groups&lt;br /&gt;
&lt;br /&gt;
This page holds information on local groups organized by AtoM users, including mandates, meeting times, resources, and more.&lt;br /&gt;
&lt;br /&gt;
'''Current groups'''&lt;br /&gt;
&lt;br /&gt;
* [[Community/Group/Australasia|Australiasia User group]]&lt;br /&gt;
* [[Community/Groups/Brazil|Brazil User group]]&lt;br /&gt;
* [[Community/Groups/Portugal|Portugal User group]]&lt;br /&gt;
* [[Community/Groups/SouthAfrica|South Africa User group]]&lt;br /&gt;
* [[Community/Groups/UK|UK User group]]&lt;br /&gt;
* [[Community/Groups/Sweden | Swedish User group]]&lt;br /&gt;
* [[Community/Groups/NA | Joint US Canada User group]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;admonition type=&amp;quot;tip&amp;quot;&amp;gt;&lt;br /&gt;
Are you considering starting a User group in your region? Let us know about it! Feel free to leave a message in the AtoM [https://groups.google.com/forum/#!forum/ica-atom-users User forum]!&lt;br /&gt;
&amp;lt;/admonition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
* [[Community|Back to Community]]&lt;br /&gt;
* [[Main Page|AtoM wiki home]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Homero&amp;diff=3538</id>
		<title>User:Homero</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Homero&amp;diff=3538"/>
				<updated>2024-01-03T13:04:20Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;actualmente me desempeño como administrador de redes y servidores.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Wcesnr&amp;diff=3537</id>
		<title>User:Wcesnr</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Wcesnr&amp;diff=3537"/>
				<updated>2024-01-03T13:03:56Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a retired linux and database administrator. I recently helped an institution install linux, mysql and Atom ver 2.7.  Although I installed atom I know very little about the software operation. I would like to learn more about the inner workings of AtoM.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Aminumerique&amp;diff=3536</id>
		<title>User:Aminumerique</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Aminumerique&amp;diff=3536"/>
				<updated>2024-01-03T13:03:47Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Professional photographer from Montreal, Quebec. François was selected and invited 5 times at the &amp;quot;World Photographers focusing on Beijing&amp;quot;. He work in Turkey for the project &amp;quot;Izmir, a legacy for tomorrow&amp;quot; organized by the Arkas Art Center and his photos were exposed at the Arkas Museum. He also participated at Izmir photo days. In 2014, he won first prize at the international photo contest « 2014 Chinese dream in the Eyes of Foreign Friends ».&lt;br /&gt;
&lt;br /&gt;
His book &amp;quot;China: photographic narrative in the Middle Kingdom&amp;quot; is published with Les Editions Cayennes&lt;br /&gt;
&lt;br /&gt;
His photos were published in National Geographic , Financial Times, Le Figaro, Courrier International, Jeune Afrique, etc. He is represented by the Hans Lucas Agency (AFP, REUTERS, etc) He likes to travel and always looking for new challenges. He now lives in Beijing. China.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:KelliBee123&amp;diff=3535</id>
		<title>User:KelliBee123</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:KelliBee123&amp;diff=3535"/>
				<updated>2024-01-03T13:03:22Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kelli Babcock is Digital Initiatives Librarian with the University of Toronto where she manages U of T's AtoM &amp;quot;Discover Archives&amp;quot; service (https://discoverarchives.library.utoronto.ca/). She is also involved with the Archives Association of Ontario and serves as Archeion Coordinator for the Ontario AtoM portal (https://www.archeion.ca/).&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Rob_Payne&amp;diff=3534</id>
		<title>User:Rob Payne</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Rob_Payne&amp;diff=3534"/>
				<updated>2024-01-03T13:03:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am the Archivist at Jesus College, Cambridge. I use Atom to catalogue the College's Archives, Silver, Works of Art etc&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:DAYEONG&amp;diff=3533</id>
		<title>User:DAYEONG</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:DAYEONG&amp;diff=3533"/>
				<updated>2023-12-05T13:14:11Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a college student. My major is literature informatics.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Simphiwe_Sithole&amp;diff=3532</id>
		<title>User:Simphiwe Sithole</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Simphiwe_Sithole&amp;diff=3532"/>
				<updated>2023-12-05T13:13:59Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a dedicated and detail-oriented Photo Archivist with a proven track record of preserving and organizing Audio- Visual history. Experienced at handling diverse photographic collections, employing cutting-edge archival techniques, and contributing to the enrichment of cultural heritage. Passionate about the significance of photographs as historical artifacts and committed to making visual narratives accessible to a broad audience.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:MalenaRibes&amp;diff=3531</id>
		<title>User:MalenaRibes</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:MalenaRibes&amp;diff=3531"/>
				<updated>2023-12-05T13:13:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am Malena, I am from València and I am studying a Cultural Heritage Master's Degree&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	<entry>
		<id>http://wiki.accesstomemory.org/index.php?title=User:Marygk&amp;diff=3530</id>
		<title>User:Marygk</title>
		<link rel="alternate" type="text/html" href="http://wiki.accesstomemory.org/index.php?title=User:Marygk&amp;diff=3530"/>
				<updated>2023-12-05T13:08:03Z</updated>
		
		<summary type="html">&lt;p&gt;Dan: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mary Grace Kosta has worked for many years as the Congregational Archivist for the Sisters of St. Joseph in Canada. In 2021, she was the recipient of the Archives Association of Ontario James J. Tallman award, and the Society of American Archivists Sister Claude Lane, O.P Memorial award. She is instrumental in the delivery of archives practicum and museum cataloguing programs for students at the University of Western Ontario. Presently, she is on the steering committee for the Society of American Archivists, Archivists of Religious Collections Section, the Joint US-Canada AtoM Users Group, and the NDSA Communications and Publications Working Group.&lt;/div&gt;</summary>
		<author><name>Dan</name></author>	</entry>

	</feed>