Visit the site

Visit the site

Organizations Involved

Community contributions

Civics for All of US is a new education initiative from the National Archives. Our mission is to build civic literacy and engagement by providing exemplary civic education resources and programs for all ages using the records of the U.S. Government.  

As the nation’s record keeper and home of the founding documents of the United States, the National Archives is uniquely positioned to promote civic literacy and engagement. By studying examples of civic engagement in the past, Americans will better understand their rights and responsibilities and be prepared to participate in their communities in the present. Civic education at the National Archives engages audiences with primary sources that shed light on the successes, failures, debates, and challenges in the history of our democracy. The initiative is committed to sharing diverse perspectives and historically underrepresented voices.

Civics for All of US delivers thought-provoking educational programs and powerful educational resources to the public, regardless of their proximity to a National Archives facility. Each program is led by one of our educators located at National Archives sites, the Center for Legislative Archives, and Presidential Libraries across the country.

Civics for All of US is built around five questions:

  • How do I benefit from civic knowledge and engagement?
  • What tools are available for us to engage in our democracy?
  • How have these tools been used by others in the past?
  • How can I use these tools in my own life?
  • How does the United States benefit from civic engagement?

These questions will guide us as we explore the big ideas of the founding documents and discover the power we all have to make a difference as an important part of "We the People."

Using the diverse historical documents and government records preserved by the NARA, the We Rule: Civics for All of US initiative will deliver thought-provoking educational programs and powerful educational resources to students. Teachers and parents will be able to utilize this new micro website to register for educational programs and access related resources.

The site is intended to be a micro website of archives.gov, similar to museum.archives.gov. The programs and resources will be facilitated by Museum Services educators across all Museum Services locations, both in the classroom and through distance learning, engaging diverse communities regardless of their proximity to NARA facilities.

About the project

Scheduling Tool

The development of a scheduling tool will allow NARA staff and website users to schedule NARA resources for their students. The vision of the tool on the website is to allow for a NARA staff member to enter their availability into a calendar system. After this record has been created, an educator / website visitor could search for available programs for a grade level for a given period of time. Once a suitable program and time is located, the educator / website visitor would have the ability to “confirm” this time and prevent other users from selecting the same time. The NARA resource and educator / website visitor would both receive an email informing them of the scheduled event and chosen options.

Process model for calendar algorithm

Custom Scheduling tool for programs

We needed to build a system able to generate the availability for programs based on educators settings. They can set their general availability for weekdays, out of the office hours or days and customize their program spots at highest detail.

The team decided to create a custom entity type to manage all those spots of class, they are created ahead of time and allow to control the workflow and information related to each, that information is used to populate the calendar presented to the visitors.

Show events and program spots on different time zones

There will be users from all US and some day from all the world interacting with the events, so it was needed to show the dates on different time zones, the team knew that Drupal core already manages dates and timezones, but it was needed to use the smartdate contributed module which not only provides a powerful timezone management but also stores the date ranges as timestamps which performs better for all the complex time calculations needed.

Manage multiple dates for the same webinars or workshops

In a similar way to other event management platforms, NARA required the ability to set multiple dates for their webinars and workshops, all those dates or events required to collect independent registration records for the people who will attend.

Having that in mind a simple multi-value date field would not be suitable, so the team created a custom entity type for events with the intention to use the Entity Registration contributed module, by using that module all the attendees information would be manage using most of the features it provides and the missing part was the relation with the webinars or workshops, that was done by adding an entity reference field to those contents.

Final Thoughts

In addition to the functionality described for visitors and educators, we built some powerful administration views which allows the admins to access and control all the events information really easily, and most of the actions taken in the platform notify all the people involved via email.

Why Drupal was chosen

Drupal is the content management system (CMS) of choice by the National Archives and Records Administration (NARA). Drupal 9 was a requirement in the contract. NARA chose Drupal specifically because of its robust security, development framework, architecture, API, and the plethora of open source modules contributed by a worldwide network of software engineers and Drupal professionals.

Technical Specifications

Drupal version:

Why these modules/theme/distribution were chosen
  • Smartdate: Provides better storage for date ranges which increase the performance and allows us to create all the complex queries to the database we required.

  • Entity Registration: Provides a complete registration system for common events where multiple users need to register to a single event, we combined it with our custom event entity type to give NARA the best experience on event management

  • Message: It gave us a ready to use message entity type with great integrations to notify via email as well, all message templates can be customized by the admins so that they can manage their own communication style with the platform users.