FAQs


General FAQs

Submission FAQs

Search FAQs


General FAQs

What is DOE CODE?

DOE CODE is the U.S. Department of Energy's (DOE) software services platform and search tool for software resulting from DOE-funded research that provides functionality for collaboration, archiving, and discovery of scientific and business software funded by DOE. DOE CODE was initially developed as an open source project. The archived version is available on GitHub. Throughout these FAQs, the terms "software" and "code" are used interchangeably, though it is understood there are discrete definitions in various communities.

How is the DOE CODE software submission and search tool different from DOE CODE GitLab?

DOE OSTI is charged with fulfilling the Department's responsibilities to collect, preserve, and disseminate scientific and technical information (STI), including software, emanating from DOE research and development activities. DOE CODE is a platform for the submission or announcement and search of software resulting from DOE-funded research. DOE national laboratories, DOE facilities, and DOE contractors who have developed and/or modified software during work supported by DOE or during work carried out for others at DOE facilities are required to announce software to DOE using DOE CODE.

The DOE CODE GitLab instance is a repository option available to DOE-funded developers. Registered users can create and import their own repositories. This service is provided to the DOE community for free by OSTI. The repository service can be helpful when developers need controlled access to code (e.g. not open source or not yet public), or for collaboration between developers from multiple labs or institutions.

Users may request to join the DOE CODE GitLab community by completing the DOE CODE Repository Service Access Request.

The DOE CODE repository service is a development option that is separate from the submission and formal announcement processes of software/code to OSTI through DOE CODE.

What does DOE CODE contain?

DOE CODE contains records for DOE-funded scientific and business software with unlimited availability. DOE CODE links to the software, code repository, or project contact information. The repositories may also include manuals, examples, test data, etc.

Is DOE CODE connected to Code.gov?

To fulfill Departmental requirements to maintain an inventory of all DOE-funded custom-developed software and report this inventory to the government-wide Code.gov website, metadata for all scientific and non-scientific (e.g., business) software should be provided to DOE CODE. This inventory will foster scientific progress, provide transparency to and promote public understanding and use of DOE-funded open source software (OSS), and enable DOE to fulfill requirements for government-wide reporting of custom-developed software to Code.gov.

Does DOE CODE provide repository services?

Yes. DOE CODE provides a repository hosting service for the DOE community via GitLab. The DOE CODE GitLab can accommodate open or closed repositories for unlimited availability software, and allow for more control of the code.

If you choose to host your code using the DOE CODE GitLab instance, you will still need to separately submit or announce your project using the DOE CODE submission form.

If you are interested in using the DOE CODE GitLab repository service, please complete the DOE CODE Repository Service Access Request. For any questions about the repository service, please contact doecoderepositories@osti.gov.

What are the Project Types found in DOE CODE?

Open Source, Publicly Available Repository (OS-PAR) - Software can be freely accessed, used, changed and shared (in modified or unmodified form) by anyone in a public repository. Open Source software is made by many people and distributed under licenses that comply with the Open Source definition. Visit the Open Source Initiative for more information and definitions. A Repository URL, where the source code is available, is required for providing Open Source, Publicly Available Repository code.

Open Source, No Publicly Available Repository (OS-NPAR) - Software is Open Source but is not yet available in a public repository. Interested users can contact the developer(s) or responsible parties for information regarding access and (re)use. A landing page URL is required for providing Open Source, no Publicly Available Repository code; the URL should provide additional information on how to obtain access to the code. When announcing codes of this Project Type, uploading the source code is required. This requirement is for preservation purposes only, i.e., not for distribution by OSTI.

Closed Source (CS) - Software is not Open Source, and access must be granted by contacting a licensing official. Software is often Closed Source because it is proprietary or has otherwise been deemed appropriate for limited distribution only. A landing page URL or contact email is required when providing Closed Source code; the URL should provide additional information on how to obtain access to the code. If providing a contact email address, we recommend using a general software group email for your site if available.

Why is uploading code required for certain Project Types?

The source code is required for announcing codes with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided only if the code is not available. The code is required for preservation purposes only, i.e., not for distribution by OSTI. (See also "What are the Project Types found in DOE CODE?", "What does it mean to submit / announce scientific software to DOE CODE?", and "What does it mean to submit / announce business software to DOE CODE?")

Are there restrictions on the use of the material in DOE CODE?

There may be restrictions on use of the material based on the associated license(s). Currently, DOE CODE supports the following list of Open Source licenses:

How do I access the code/software from DOE CODE records?

DOE CODE does not directly disseminate software projects. Access to the software/code is provided by the originating site. From the DOE CODE software record page, OSTI provides a link directly to a landing page or repository depending on the project type, or provides the contact email for users to reach out to the developer or developing organization to request access to the software.


Submission FAQs

How is scientific software provided to DOE CODE?

Individual software records and associated metadata are directly provided by the developer or the developing organization to DOE through DOE CODE. When an individual software record is associated with a DOE national laboratory, the laboratory points of contact will be notified of the record submission or announcement.

When providing software to DOE CODE, users will first need to identify what type of software they are providing - scientific or business software. Users who are unsure of the type of software are encouraged to work with their site's software point of contact.

In cases where a Repository URL from which OSTI can access and archive software is not available, the software itself (an uploaded source code file) should be submitted to OSTI along with associated metadata. For submission of limited availability software, an access limitation and information pertaining to the limitation (such as OUO exemption number) must be provided upon submission.


Providing Scientific Software to DOE CODE

DOE CODE offers two paths for users to provide scientific software. Users can (1) submit code to DOE CODE, and/or (2) announce code to the Department of Energy for official review and release through DOE CODE. For more information about submitting and announcing code, see the "What does it mean to submit scientific software to DOE CODE?" , "What does it mean to announce scientific software to DOE CODE?" and Help.

What does it mean to submit scientific software to DOE CODE?

Submission of scientific software to DOE CODE is for code in early development, which can be shared with unlimited distribution only, and for those who wish to obtain a DOI early in the process. (See also "What is a Digital Object Identifier (DOI)?") Software that has an access limitation (OUO, CUI, etc.) cannot be provided via the submission process; it must go through the DOE CODE announcement process. Submitting scientific code to DOE CODE is easy, with only a minimal set of metadata required.

Requirements to Submit Scientific Software to DOE CODE:
  • Project Type
  • Repository URL;* Landing Page;** Contact Email**
  • Software Title
  • Description/Abstract
  • License(s)***
  • Developers

*Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual repository. As an example, the direct Repository URL for DOE CODE is  https://www.github.com/doecode/doecode whereas the project landing page is  https://www.github.com/doecode. Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub. As an example, the tagged release URL https://github.com/doecode/server/releases/tag/v2.0.1 can be submitted as a valid Repository URL to DOE CODE.

**A landing page or valid contact email address is required when submitting or announcing Closed Source code. This page should provide additional information on how to obtain access to the code. For more information on landing pages, please see FAQ "What is a landing page?". If providing a contact email address, we recommend using a general software group email for your site if available.

***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the page OR provide a valid contact email address.

What does it mean to announce scientific software to DOE CODE?

Users may need to announce their scientific code to the Department of Energy to ensure announcement and dissemination in accordance with DOE statutory responsibilities. The announcement process is for code in later stages of development that has completed internal review and release processes. For announcement to the Department of Energy, there are basic requirements for metadata fields; however, other optional/non-mandatory data fields should be included during announcement when possible. For more detail, see Announcing Software to DOE CODE flowchart.

DOE national laboratories, DOE facilities, and DOE contractors who have developed and/or modified software during work supported by DOE or during work carried out for others at DOE facilities are required to announce a record of the software to the Department of Energy, if the software meets the following criteria:
  • the software meets the definition of STI;
  • the software is known or expected to be useful inside or outside the DOE community, or is not specific to the originating site;
  • a stable, usable, documented version of the software exists (i.e., the software is not under initial development); and
  • the software has undergone all appropriate reviews for sensitivity and export control.

Scientific software that meets the following criteria need not be announced to the Department of Energy:
  • operational systems software that is site-specific, unique to a hardware, or necessary to ensure the fundamental operability of automated data processing equipment, whether supplied by the manufacturer of the system hardware or others;
  • computer software programs developed and/or modified during work carried out for others at DOE facilities that are specifically excluded in the agreement under which the non-DOE funded work was performed;
  • software generated under the auspices of the Energy Information Administration; and
  • specific software used by power administrations for the operation, control, planning, and modeling of electric power transmission systems and the interconnected utilities; however, modifications/enhancements to portions of this software that are not an integral part of the whole and have potential application outside the power administrations should be announced.

Requirements to Announce Scientific Software to the Department of Energy through DOE CODE:
  • Project Type
  • Repository URL;* Landing Page;** Contact Email**
  • Software Title
  • Description/Abstract
  • License(s)***
  • Release Date
  • Access Limitation****
  • Developers
  • Source Code or Compiled Binary*****
  • Sponsoring Organization Name
  • Primary Award Number
  • Research Organization Name
  • Contact Information

In addition to the basic requirements for metadata fields (above), other optional/non-mandatory data fields should be included during announcement when possible.

*Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual repository. As an example, the direct Repository URL for DOE CODE is  https://www.github.com/doecode/doecode whereas the project landing page is  https://www.github.com/doecode. Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub. As an example, the tagged release URL https://github.com/doecode/server/releases/tag/v2.0.1 can be submitted as a valid Repository URL to DOE CODE.

**A landing page or valid contact email address is required when submitting or announcing Closed Source. This page should provide additional information on how to obtain access to the code. For more information on landing pages, please see FAQ "What is a landing page?". If providing a contact email address, we recommend using a general software group email for your site if available.

***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the page OR provide a valid contact email address.

****For Closed Source software, an access limitation is required. If an access limitation other than UNL is selected, there may be additional required and optional metadata fields pertaining to the specific limitation. The Access Limitations table provides detailed descriptions of the access limitations.

*****The source code is required when announcing code with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided only if the code is not available. The code is required for preservation purposes only, i.e., not for distribution by OSTI.

OS-NPAR - Refers to the Open Source, No Public Repository (OS NPAR) Project Type
CS - Refers to the Closed Source (CS) Project Type

Announcing Software Flowchart

How is business software provided to DOE CODE?

To efficiently fulfill Departmental requirements to maintain an inventory of all DOE-funded custom-developed software and report this inventory to the government-wide Code.gov website, metadata for all scientific and non-scientific (e.g., business) software should be provided to DOE CODE. This inventory will foster scientific progress, provide transparency to and promote public uptake of DOE-funded open source software (OSS), and enable DOE to fulfill requirements for government-wide reporting of custom-developed software to Code.gov.

DOE CODE offers two paths for users to provide business software. Users can (1) submit code to DOE CODE, and/or (2) announce code to the Department of Energy for official review and release through DOE CODE. For more information about submitting and announcing code, see the "What does it mean to submit business software to DOE CODE?" , " What does it mean to announce business software to DOE CODE?" and Help.

What does it mean to submit business software to DOE CODE?

Submission of business software to DOE CODE is for code in early development, which can be shared with unlimited distribution only, and for those who wish to obtain a DOI early in the process. (See also "What is a Digital Object Identifier (DOI)?") Software that has an access limitation (OUO, CUI, etc.) cannot be provided via the submission process; it must go through the DOE CODE announcement process. Submitting business code to DOE CODE requires a minimal set of metadata.

Requirements to Submit Business Software to DOE CODE:
  • Project Type
  • Repository URL;* Landing Page;** Contact Email**
  • Software Title
  • Description/Abstract
  • License(s)***
  • Developers

*Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual repository. As an example, the direct Repository URL for DOE CODE is  https://www.github.com/doecode/doecode whereas the project landing page is  https://www.github.com/doecode. Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub. As an example, the tagged release URL https://github.com/doecode/server/releases/tag/v2.0.1 can be submitted as a valid Repository URL to DOE CODE.

**A landing page or valid contact email address is required when submitting or announcing Closed Source. This page should provide additional information on how to obtain access to the code. For more information on landing pages, please see FAQ "What is a landing page?". If providing a contact email address, we recommend using a general software group email for your site if available.

***For Closed Source software, you will be required to provide a License URL in which valid contact information is available on the page OR provide a valid contact email address.

What does it mean to announce business software to DOE CODE?

Users may need to announce their business code to the Department of Energy to ensure announcement and dissemination in accordance with DOE statutory responsibilities. The announcement process is for code in later stages of development that has gone through internal review and release processes. For announcement to the Department of Energy, there are basic requirements for metadata fields; however, other optional/non-mandatory data fields should be included during announcement when possible.

Requirements to Announce Business Software to the Department of Energy through DOE CODE:
  • Project Type
  • Repository URL;* Landing Page;** Contact Email**
  • Software Title
  • Description/Abstract
  • License(s)***
  • Release Date
  • Access Limitation****
  • Developers
  • Source Code or Compiled Binary*****
  • Sponsoring Organization Name
  • Primary Award Number
  • Research Organization Name
  • Contact Information

*Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual repository. As an example, the direct Repository URL for DOE CODE is  https://www.github.com/doecode/doecode whereas the project landing page is  https://www.github.com/doecode. Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub. As an example, the tagged release URL https://github.com/doecode/server/releases/tag/v2.0.1 can be submitted as a valid Repository URL to DOE CODE.

**A landing page or valid contact email address is required when submitting or announcing Closed Source. This page should provide additional information on how to obtain access to the code. For more information on landing pages, please see FAQ "What is a landing page?". If providing a contact email address, we recommend using a general software group email for your site if available

***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the page OR provide a valid contact email address.

****For Closed Source software, an access limitation is required. If an access limitation other than UNL is selected, there may be additional required and optional metadata fields pertaining to the specific limitation. The Access Limitations table provides detailed descriptions of the access limitations.

*****The source code is required when announcing code with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided only if the code is not available. The code is required for preservation purposes only, i.e., not for distribution by OSTI.

OS-NPAR - Refers to the Open Source, No Public Repository (OS NPAR) Project Type
CS - Refers to the Closed Source (CS) Project Type

Is a license required when providing software to DOE CODE?

Licenses are required for certain types of software. For Open Source software (OS-PAR or OS-NPAR), DOE OSTI provides a list of the licenses that users can select from. Users may can choose a license not listed by selecting "Other" and providing a URL to the landing page of the license.

For Closed Source software, users must provide either a License URL or contact email. When providing a License URL, the License URL page should include valid contact information; otherwise, the user will be asked to provide a valid contact email address. For additional information about license requirements, reference the Announcing Software to DOE CODE flowchart.

What is a landing page?

A landing page is a web page that provides information about the code and how to access the source code. This may include citation metadata about the software, license, access, and contact information.

Can I add a new or previous version of software I have previously submitted or announced to DOE CODE?

Yes. DOE CODE offers the option to create a DOE CODE record that is a newer or previous version of any DOE CODE record you have already submitted or announced. You can see this functionality by logging in to your DOE CODE account and viewing the “Manage My Projects” page. Selecting either of the Make Version buttons, "New" or "Prev," associated with a record will take you to the entry form with most of the metadata fields already populated based on metadata from the associated record. You can also use this option to submit a tagged release of your code by entering the specific URL to the tagged release in GitHub (ex. https://github.com/doecode/server/releases/tag/v2.0.1). The Version Number field will auto-populate with the tagged release number but can still be edited if desired. Once you have submitted or announced your "New" or "Prev" record, DOE CODE will automatically add metadata to all newer/previous records to reflect the appropriate relationship using the Related Identifier fields. (See also, "Do I need an account to use DOE CODE?")

Creating Previous/Next versions of my software.

For information regarding semantic versioning best practices, visit https://semver.org.

Can I submit a tagged release as an individual record to DOE CODE?

Yes, DOE CODE allows you to submit a tagged release of software hosted in GitHub as an individual record and obtain a separate DOI for the release. A release is a deployable software iteration that is packaged and can be made available to download and use. There are two ways to submit a tagged release; either by (1) selecting "Add New Project" and creating a completely new record, or by (2) making a new or previous version of an existing DOE CODE record (see "Can I add a new or previous version of software I have previously submitted or announced to DOE CODE?" for more information on this option). For either option, you will enter the specific URL for the tagged release into the Repository URL field. As an example, the tagged release URL https://github.com/doecode/server/releases/tag/v2.0.1 can be submitted as a valid Repository URL to DOE CODE. If a valid Repository URL is provided, DOE CODE will attempt to automatically populate metadata fields based on information included in the repository, including populating the Version field with the tagged release number (this can be edited if desired).

Can I see the status and availability of my submitted/announced records?

Yes. After logging into your account, view the “Manage My Projects” page where you can see the Status and Availability for submitted and announced records (see the tables below and "Do I need an account to use DOE CODE?").

The record Status is the state of the submission after it enters and completes the workflow. Statuses include:
  • PENDING APPROVAL Submission - The record has been submitted to DOE CODE and is moving through the metadata quality control process. The Status will be updated to Approved Submission once this process is complete.
  • PENDING APPROVAL Announcement - The record has been announced to DOE CODE and is moving through the metadata quality control/release process and DOI assignment, if the record is unlimited. The Status will be updated to Approved Announcement once this process is complete.
  • APPROVED Submission - The record has been approved for Submission and is available for record update and discovery in DOE CODE.
  • APPROVED Announcement - The record has been approved for Announcement and is available for record update in DOE CODE. It is now discoverable in DOE CODE and, depending on access limitation, in OSTI.GOV and Science Research Connection (SRC).
  • SAVED - The record has entered the workflow, but not all metadata submission has been completed. The filled out metadata is saved until submission or announcement.


The record Availability refers to where the software record is made available for search and discovery.

Availability includes:

Does DOE CODE archive software?

Yes. To ensure long-term preservation of DOE-funded scientific and technical information (including software), OSTI employs dark archiving practices as a Departmental backup and as storage to house the working copy of software resources (See also "Why is uploading code required for certain Project Types?").

Does DOE CODE support the upload of container images as part of the submission/announcement process?

Yes. DOE CODE allows users to upload container images in the form of binary files. Currently Docker and Singularity image files are supported.  If you have any issues uploading large container files, please reach out to doecode@osti.gov.

What is an access limitation?

An access limitation is otherwise known as a distribution limitation for a piece of software or code, and indicates how a piece of software or code may be accessed. Different categories of software have different limitations on access.

Any software provided to DOE CODE as Open Source is automatically designated as having unlimited access when both submitting and announcing software.

Closed Source software provided to DOE CODE may be designated as having unlimited or limited availability. Closed source software with unlimited availability may be submitted or announced to DOE CODE. Closed source software with limited availability may only be announced to DOE CODE.

Prior to software announcement, users must ensure the software has undergone all appropriate reviews for sensitivity and export control and has been assigned an applicable level of distribution. For a list of access limitations and their definitions, please refer to the Access Limitations table.

How do I announce software with an access limitation, such as Controlled Unclassified Information (CUI), to OSTI?

Limited availability software, including Export Controlled Information (ECI) and Security Sensitive Information (SSI), among others, can be submitted to DOE CODE for announcement and discovery in Science Research Connection (SRC).

For more information about the types of limited availability software that can be found in DOE CODE, please see the Access Limitations table here.

To provide software with an access limitation to DOE CODE for announcement, you will need to ensure the software has undergone all appropriate reviews for sensitivity and export control by the originating site and has been deemed secure. If you are unsure of the software sensitivity, please work with your site's software point of contact.

What if I need to change the access limitation of a project?

To have a project’s access limitation updated in DOE CODE, please contact doecode@osti.gov.

What is a YAML file? How do I auto populate the YAML file?

YAML is a human friendly data serialization standard for all programming languages. DOE CODE provides functionality to allow users to auto-populate metadata in DOE CODE by placing a specifically formatted YAML file in their repository's root main directory. The file must be named "metadata.yml" or "doecode.yml", and the file must be formatted correctly.  See detailed YAML information and an example file.

Do I need an account to use DOE CODE?

A DOE CODE account is not needed to search for DOE-funded software, but an account is needed to submit or announce scientific and business software. Users meeting minimum criteria can directly create a DOE CODE account. First and last name, government email address or valid contract number, and a password are required. From the top right of any DOE CODE page, you may register for an account by clicking Create Account (or Sign In if you already have an account).

The repository service we provide through GitLab requires a separate account that is separate and in addition to the OSTI account for submitting or announcing to DOE CODE. Those interested in using the repository service must request an account by filling out the request form. DOE CODE Product Manager(s) will follow up with the requester.

What is a Digital Object Identifier (DOI)?

A DOI is a digital identifier that is globally unique, persistent, machine resolvable, has an associated metadata schema, identifies an entity in perpetuity, and provides long-term access to the object. DOIs are assigned to enable researchers to more easily discover software through additional discovery pathways and reuse software through citation of the DOI. They also allow stronger connections to be made between software, publications, and data through reference and citation via DOI metadata. OSTI is a member of and registering agency for DataCite and has the authority to assign Digital Object Identifiers to unlimited software and code that are provided by DOE and its contractors or grantees. The assigning and registration of a DOI for unlimited software is a free service provided by OSTI to enhance DOE's management of this important resource.

What are the benefits of getting a DOI for code or software?

  • Announcing and registering code or software with DOIs enables researchers, especially future researchers, to more easily discover, access, and reuse the code or software for verification of the original experiment and to produce new results with the latest methods.
  • DOIs facilitate accurate linkage between a document or published article and the specific underlying code or software.
  • DOIs make code easy to cite in a standardized way (DOIs have become recognizable as pointers to important information around the globe), encouraging authors to include this step in their writing/publishing activities.
  • Enabling your code or software to be easily citable means that code developers, contributors, and others involved in the development, but not necessarily in the authoring of a publication, can receive proper attribution.
  • DOIs are designed to be more stable and persistent links than normal URLs. Registering the DOI with an international organization such as DataCite provides global resolving and the prospect of steadily increasing visibility of your research.

What if I need to have a project removed from DOE CODE?

To have a project removed from DOE CODE, please contact doecode@osti.gov.


Search FAQs

How do I search DOE CODE?

DOE CODE search works much like a basic Google search, where you can enter your terms into the basic search box to retrieve results. You can search for a single term or a phrase by putting it in "double quotes." Additionally, DOE CODE supports Boolean and proximity operators, wildcards, and parentheses for grouping:

Boolean Operators
DOE CODE recognizes the operators AND, OR, and NOT.

Example: A search for algorithm AND "quantum simulator" will return results that include both the term algorithm and the phrase quantum simulator.

Example: A search for algorithm OR "quantum simulator" will return results that include either the term algorithm or the phrase quantum simulator.

Example: A search for algorithm NOT "quantum simulator" will return results that include the term algorithm but not the phrase quantum simulator.

+ and - allow for a search to either be required or forbidden in the search results.

Example: A search for simulation +algorithm will return results that include the term simulation and also include the term algorithm.

Example: A search for simulation -algorithm will return results that include the term simulation but not the term algorithm.

Proximity Operators
Example: "quantum simulator"~3 will return results where quantum and simulator are within three words of each other in the bibliographic record.

Parentheses for Grouping
Example: A search for algorithm AND ("quantum simulator" OR energy) will return results that include both the term algorithm and either the phrase quantum simulator or the term energy.

How do I use the Advanced Search?

The advanced search will allow you to perform more complex searches and retrieve more specific results, offering you several fields, such as Title, Developer(s), or Release date to help you refine your search results.

To access the advanced search, select the green drop-down arrow from the search bar, either on the homepage or at the top of any subsequent page.

To access all the advanced search features, click on the "More Options" selection at the bottom of the advanced search.


All Fields
Searches all bibliographic data.

Software Title
Searches only software titles.

Developers
Searches all developer names, including ORCID if available.

Identifier Numbers
Searches for all identifying numbers, including DOE contract number, version, non-DOE contract/award numbers, or other identifying numbers such as Digital Object Identifiers (DOIs).

Release Date
Searches for articles that were released within a specified timeframe. Select the starting date or ending date from the drop-down calendar OR type MM/DD/YYYY, e.g. 01/01/2014.

Project Type
Searches the fields for Open Source, Publicly Available Repository (OS-PAR); Open Source, Not Publicly Available Repository (OS-NPAR); and Closed Source (CS).

Licenses
Searches by names of licenses.

Programming Languages
Searches the specific language or languages in which the code being submitted was written.

Research Organization
Searches by the name(s) of the organization(s) that was funded and developed the software.

Sponsoring Organization
Searches the name(s) of the DOE program office(s) or other organizations that provided the funding for the development contributing to the software.

Software Type
Searches the field for Business or Scientific software.

Sort
You can choose for your results to be sorted by Relevance, Release Date (newest to oldest) or Release Date (oldest to newest).

What information is found on the Full Project page in DOE CODE?

The information on the Full Project page is bibliographic metadata/information unique to and descriptive of a particular project. Basic information includes the Title, Developer(s), and Release Date. Below is a list of metadata that OSTI collects and displays in DOE CODE, with those that can be searched using the advanced search fields indicated with an asterisk(*):

Software Title* - the title of the software.

Abstract - summary of the software, usually including the purpose, function, and capabilities.

Developer(s)* - the person(s) concerned with facets of the software development process, including research, design, programming, and testing of the software, along with their affiliations.

Contributor(s) - the person(s) or institution(s) that have contributed to the software but is not listed as a developer.

Contributing Organization(s) - other organizations that provided support to the software.

Release Date* - the date the software was released.

Version Number - the version of the software.

Project Type* - will be Open Source, Publicly Available Repository (OS-PAR); Open Source, Not Publicly Available Repository (OS-NPAR); and Closed Source (CS). See "What are the Project Types found in DOE CODE?" for definitions of these types.

Software Type* - will be Scientific or Business. See "How is scientific software provided to DOE CODE?" and "How is business software provided to DOE CODE?" for definitions of these types.

Programming Languages* - the specific language or languages in which the code being submitted was written.

Licenses* - the software licenses or rights information about the software.

Sponsoring Org.* - the sponsoring or funding office of the software product.

Primary Contract/Award Number* - DOE award/contract number that is largely responsible for funding the project.

Award DOI* - digital object identifiers (DOIs) assigned to awards, contracts, equipment, facilities, grants, prizes, salary awards, time awarded, and training grants. Award DOIs are assigned by the funding/awarding organization. Within DOE that may include DOE funding offices, national laboratories, and user facilities. Award DOI is searched in the Identifier Numbers advanced search field.

Code ID* - the unique identifier assigned by OSTI upon submission.

Site Accession Number* - the accession or other identifying numbers assigned by the submitting site, university, or repository’s database, records, etc.

Research Org.* - the research organization, such as a DOE national laboratory or university, which had primary responsibility for developing the software.

Related Identifiers* - any related links, such as DOIs to published works, additional versions, or documentation information relevant to the software.

Country of Origin - the country in which the software was developed.

Keywords - a list of words or phrases that describe the software.

DOI* - a unique persistent identifier that references the software and provides long-term access; DOIs remain stable even if the underlying address or URL for the content changes.

Repository URL, Landing Page, or Contact Email - either a Repository URL where the source code is available, a Landing Page which includes information describing the project/contact information, or a contact email for the project will be provided.

Can I sort or refine my results?

Yes, you may refine your results by Project Type, License, Software Type, Release Date, and Research Organization. These options are available via the results page on the left-hand side of the screen. Sort options on the results page include sorting by relevance and release date.

Can I save or download the results of a search?

Yes, you can save the bibliographic/metadata information for a set of results as an CSV/Excel or JSON file from the results screen.

From an individual Project page, you can save the metadata in XML, YAML, or JSON file format. You also have the option to generate a citation for the record in various formats, including MLA, APA, Chicago, and BibTex.

Are there APIs available for DOE CODE?

Yes, there are multiple APIs with stable endpoints. For more information, see the API documentation.

Do I need to have cookies enabled to use DOE CODE?

Yes, you must select Accept All Cookies. Please see our Website Policies/Important Links for further information.

What if I have more questions?

See our Help page for more detailed information about submitting and announcing software to DOE CODE.

For additional assistance, Contact Us.