Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions _data/nav.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,6 @@
"icon": "fa-solid fa-wand-magic-sparkles",
"url": "/demo"
},
{
"title": "Services",
"icon": "fa-solid fa-puzzle-piece",
"url": "/services/"
},
{
"title": "Login",
"icon": "fa-solid fa-right-from-bracket",
Expand Down
4 changes: 0 additions & 4 deletions _data/nav_footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@
"title": "Demo",
"url": "/demo"
},
{
"title": "Services",
"url": "/services"
},
{
"title": "What they say",
"url": "/what-they-say/"
Expand Down
23 changes: 23 additions & 0 deletions _includes/feedback.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<a
href="https://scangov.com/"
id="feedback-button"
aria-label="Get ScanGov — return to main site"
class="feedback btn">
Get ScanGov
</a>
<script>
const feedbackButton = document.getElementById("feedback-button");
const footer = document.querySelector("footer");

function updateButton() {
const scrolled = document.documentElement.scrollTop > window.innerHeight * 0.3;
const footerVisible = footer && footer.getBoundingClientRect().top < window.innerHeight;
const visible = scrolled && !footerVisible;
feedbackButton.classList.toggle('is-visible', visible);
feedbackButton.setAttribute('aria-hidden', visible ? 'false' : 'true');
feedbackButton.setAttribute('tabindex', visible ? '0' : '-1');
}

window.addEventListener('scroll', updateButton);
updateButton();
</script>
22 changes: 14 additions & 8 deletions _includes/footer.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,28 +14,34 @@
{% endfor %}
</div>
</div>
<div class="container border-top mt-4 py-4">
<div class="container-fluid py-4 mt-4 border-top">
<div class="row">
<div class="col-12">
<p class="small m-0 p-0">
<div class="col-12 text-center">
<p class="small">
Built with
<i
class="fa-solid fa-heart"
aria-label="Heart"
aria-hidden="true"></i>
<i class="fa-solid fa-heart" aria-label="Heart"></i>
by
<a href="https://scangov.com">ScanGov</a>
</p>
</div>
</div>
</div>
</footer>
{% include "analytics.html" %}
{% include "js.html" %}
{% include "feedback.html" %}
<script>
document.querySelector('button.navbar-toggler').addEventListener('click',function(e) {
let el = document.querySelector(this.dataset.target);
console.log(el)
el.classList.toggle('show');
})
</script>{% include "analytics.html" %}
if(document.getElementById('dropdownMenuButton')) {
document.getElementById('dropdownMenuButton').addEventListener('click',function(e) {
let el = document.querySelector('[aria-labelledby="'+this.id+'"]')
el.classList.toggle('show');
})
}
</script>
<!-- outputs all the icons used on the page -->
{% getBundle "fontawesome" %}
15 changes: 11 additions & 4 deletions _includes/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -60,9 +60,16 @@
{% include "favicon.html" %}
<!-- CSS -->
{% include "style.html" %}
<script>
(function() {
const theme = localStorage.getItem('theme') || 'dark';
document.documentElement.setAttribute('data-bs-theme', theme);
document.body.setAttribute('data-bs-theme', theme);
})();
</script>
</head>

<body class="{{ layout }}" data-bs-theme="dark">
<a class="sr-only sr-only-focusable skip-link" href="#main-content">
Skip to main content
</a>
<body class="" data-bs-theme="dark">
<a class="sr-only sr-only-focusable skip-link" href="#main-content">
Skip to main content
</a>
11 changes: 11 additions & 0 deletions _includes/js.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<script>
const setTheme = (dark) => {
document.body.setAttribute('data-bs-theme', dark ? 'dark' : 'light');
};
const darkQuery = window.matchMedia("(prefers-color-scheme: dark)");
const lightQuery = window.matchMedia("(prefers-color-scheme: light)");
// Only use light if explicitly set to light, otherwise dark
setTheme(!lightQuery.matches);
// Update instantly when OS preference changes
darkQuery.addEventListener('change', e => setTheme(e.matches));
</script>
13 changes: 13 additions & 0 deletions _includes/layouts/redirect.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url={{ redirect_to }}">
<link rel="canonical" href="{{ redirect_to }}">
<title>Redirecting…</title>
<script>window.location.href = "{{ redirect_to }}";</script>
</head>
<body>
<p>Redirecting… <a href="{{ redirect_to }}">Click here if you are not redirected.</a></p>
</body>
</html>
12 changes: 7 additions & 5 deletions _includes/style.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<!--put inlined css here-->
{% set css %} {% include "public/css/style.css" %} {% endset %}
<style>
{{ css | cssmin | safe }}
</style>
<!-- Bootstrap -->
<link rel="stylesheet" href="/assets/bootstrap/css/bootstrap.min.css">
<!-- Custom CSS -->
<link href="/css/scangov.css" rel="stylesheet">
<link href="/css/style.css" rel="stylesheet">
<link href="/css/plyr.css" rel="stylesheet">
<link href="/css/code.css" rel="stylesheet">
33 changes: 2 additions & 31 deletions content/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<div class="container border-bottom mb-5 pb-5">
<h2 class="mb-3">Indicators</h2>
<p class="lead">Holistically addressing government digital experience.</p>
<p class="lead">Holistically addressing digital experience.</p>
{% include "indicator_list.html" %}
<p class="small mt-3">
<a href="{{ site.baseurl }}indicators">Indicators</a>
Expand Down Expand Up @@ -42,7 +42,6 @@ <h2 class="mb-3">Why it matters</h2>
<div class="row">
<div class="col-12">
<h2 class="mb-3">Who it's for</h2>
<p class="lead">Everyone responsible for serving the public.</p>
<div class="card-group">
{% for item in who %}
<div class="col-12 col-sm-12 col-md-4 col-lg-4 col-xl-4 d-flex align-items-stretch">
Expand Down Expand Up @@ -105,34 +104,6 @@ <h2 class="mb-3">GovX Awards</h2>
</div>
</div>
</div>
<div class="container border-bottom mb-5 pb-5 pt-3">
<div class="row">
<h2 class="mb-3">Showcase</h2>
<p class="lead">Featured digital experience scorecards.</p>
<div class="card-group">
{% for item in showcase %}
<div class="col-12 col sm-12 col-md-6 col-lg-6 col-xl-6 d-flex align-items-stretch">
{% if item.feature %}
<div class="card mb-2 p-1">
<div class="card-body">
<h2 class="h5 p-0 m-0">
<i class="fa-solid fa-star"></i>
<a
href="{{ item.url }}"
class="stretched-link"
target="_blank">{{ item.title }}</a>
</h2>
</div>
</div>
{% endif %}
</div>
{% endfor %}
</div>
<p class="small mt-3">
<a href="{{ site.baseurl }}showcase">Showcase</a>
</p>
</div>
</div>
<div class="container border-bottom mb-5 pb-5">
<div class="row">
<div class="col-12">
Expand All @@ -148,7 +119,7 @@ <h2 class="mb-3">Plans</h2>
<div class="row">
<div class="col-12">
<h2 class="mb-3">Now scanning ...</h2>
<p class="lead">ScanGov government digital experience reviews.</p>
<p class="lead">ScanGov digital experience reviews.</p>
{% include "now_scanning_list.html" %}
<p class="small mt-3">
<a href="{{ site.baseurl }}now-scanning">Now scanning ...</a>
Expand Down
31 changes: 31 additions & 0 deletions content/news/2025-11-23-scangov-website-rfp-builder.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
title: "New ScanGov website RFP builder"
description: "Create website request for proposals based on ScanGov Standards."
date: 2025-11-23
ogImage: pages/website-rfp-og.png
ogImageAlt: "Website RFP builder"
topics:
- ScanGov
---

ScanGov is proud to introduce our free [website request for proposal builder](https://scangov.com/rfp-builder/).

You can now quickly create website RFPs based on [ScanGov Standards](https://standards.scangov.org) that include comprehensive compliance specifications for:

* Accessibility
* AI-friendly
* Content
* Domain
* Security
* Search engine optimization
* Social media

## How it works

* Enter your organization/contact information
* Add general instructions (if any)
* Get your custom RFP

## Get started

[Build your website RFP.](https://scangov.com/rfp-builder/)
19 changes: 1 addition & 18 deletions content/plans.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,6 @@
description: "ScanGov pricing."
---

<div class="container border-bottom mb-4 pb-3">
<div class="container pb-3">
{% include "plans.html" %}

<p>* Need additional scans? <a href="http://localhost:8080/contact/">Contact us</a> for bulk discounts.</p>
<p>Need a free trial? Scan a <a href="https://my.scangov.com/scan" target="_new">few pages on your domain for free here</a>.</p>

</div>
<div class="container">
<div class="row">
<div class="col">
<h2>Questions?</h2>
<p><a href="/demo" class="btn btn-primary btn-lg mt-3">Schedule demo</a>
<a href="/contact" class="btn btn-primary btn-lg mt-3">Contact us</a></p>
<h3>Value added resellers</h3>
<p>Making purchase for government partner?</p>
<p>Purchase <a href="https://buy.stripe.com/8x2aEXboN62d8EicXb3Nm05">enterprise with annual billing here.</a></p>
<p>Purchase <a href=" https://buy.stripe.com/4gMbJ11Od1LX07MbT73Nm06">enterprise max plan with annual billing with 2 months free here</a>.</p>
</div>
</div>
</div>
53 changes: 0 additions & 53 deletions content/services.html

This file was deleted.

Loading
Loading