Skip to main content
U.S. flag

An official website of the United States government

Dot gov

The .gov means it’s official.
Federal Government websites often end in .gov or .mil. Before sharing sensitive information, make sure you’re on a Federal Government site.

Https

The site is secure.
The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.

Local Development of IDManagement.gov

IDManagement.gov website is open-source, the development of this site exists in an open and transparent format where the Federal Identity, Credential, and Access Management (FICAM) community is encouraged to contribute their thoughts and ideas.

Contributors are encourages to first establish communication with a department or agency that governs or helps manage content on IDManagement.gov, before starting the process of creating new content or submitting changes, see the contact list below.

Prerequisite

Before running IDManagement.gov locally, there are a few requirements needed on your machine to run the site locally.

  • Permission to access and change files on your machine, if your machine is company issued, you may require additional help from your IT department.
  • Git - to manage files and versioning.
  • Access to the Command Line and permissions to run commands:
    • CMD prompt - for Windows.
    • Powershell - for Windows.
    • Terminal - for Mac or Linux.
    • GitBash - If Git is installed locally.
  • Ruby - the programming environment for the Ruby programming language.
  • Node.js for support and dependencies needed to build the site.
    • NPM - if installed separately from Node.js (NPM is often installed when Node.js is installed).

Editors:

There are many editors to choose from, including those that may be required by your organization to do work, but any code editor that can do basic code editing can be used.

Below is a list of common code editors that can be downloaded and used:

Next

Once all of these requirements are present on your machine, you can proceed to the download or clone stage.

Download or Clone the Repo

To dowload the files the IDManagement.gov repo files to your local machine, you have a few options based on your experience working with source control systems like GitHub.

  1. Create a fork of the repo, then download the files from the repo as a .zip file to your local machine.
  2. Use the command line tool Git or GitHub Desktop to clone the repo locally.
  3. Use the Git or GitHub integration included in your Code Editor like: VS Code to clone the repo locally.

On matter which option you use, once you have the files, you can start development locally, run the site locally to view your changes. Then, when read, submit a Pull Request (PR) through GitHub for review. If approved, your submitted updates or changes will be merged into Staging, where it will continue the review process. If your submitted changes require no further edits or update, they will be merged into the live IDManagement.gov website.

Building the site locally

Once the repo of the site is downloaded, using the command line, change to the directory where you downloaded or cloned the repo files, run the following commands:

npm run local

This should download all of the required Gems and Nodjs packages needed by to build and run the site locally.

Running the site locally

Once the npm run local command is finished running, run the following command to run the website locally on your machine, on port 4000.

npm run start

This should go through the build process, once complete, in a browser, go to https://localhost:4000 to connect to the website locally.

Editing and making changes

While the site is running locally, open up the Code Editor of your choice to make changes to the site. The site should rebuild and live reload the page to show any changes or updates you have made.

GitHub Codespaces

The IDManagement.gov repo can also be developed in GitHub Codespaces:

  • Open IDManagement.gov in a codespace, wait for it to finish set up.
  • Once set up is complete, on the command line run the following commands:

First:

npm run local

Then:

npm run start

This should launch the site on a local port 4000 within your codespace.

Note: the performance and browsing may be slower than local development, if this becomes an issue, use local development instead.

IDManagement.gov

An official website of the U.S. General Services Administration

Looking for U.S. government information and services?
Visit USA.gov Edit this page