xd.gov's People
xd.gov's Issues
Improved API Key Management
We should have the ability to reference environment variables, such as Airtable API keys, locally as well as in Github Actions without needing to add/remove the keys during development.
Migrate USWDS to Node.js Module
Currently the xd.gov codebase has the USWDS assets tracked in Github. This is fine for things like the custom stylings, but we shouldn't be tracking the minified JS, for example, as this makes updates harder to perform and these files are then treated as files we own and modify by Dependabot and other code-scanning services.
We should migrate the USWDS module to a current version of the Node.js module. We previously did this for the Bias Toolkit Frontend: XDgov/bias-toolkit-frontend#12.
Content : Quick updates
- Change "Subscribe" to "Newsletter" or "Mailing List" in top nav
- Change "Our Mission" to "About" in top nav
- Change "We’re Hiring" to "Apply for the Emerging Technology Fellowship Program" on homepage
- Make Fellows image clickable and go to ETF page
- On Mission page, change "Current Focus Areas" to "Portfolios"
Add specific time for FY23 application deadline
We need to add the following text to the deadline descriptions of the /apply
page post: "Submissions will be accepted until 11:59PM Eastern Time on November 30th".
Add favicon
Add favicon.ico
file for display in various places, like the browser tab.
Fix code scanning alert - Potentially unsafe external link
Tracking issue for:
Incorporate Lighthouse Github Action
We should explore utilizing Lighthouse as part of a Github Action to run on pull-requests. This could help us audit links on the site, flag potential page bloat, etc.
add contact info
Just visited www.xd.gov and noticed there isn't any information about how to get in touch with the team… at least on the homepage.
Create GitHub actions for Airtable imports
Summary
Setup our build via GitHub actions workflow to automatically import Airbase updates and create content files with new news and other entries
Process:
-
Create Github workout starter with Ruby from here:
-
Github actions workflow (yaml file):
- check out repo
- uses ruby @ specific version (or test multiple)
- run bundle install
- install npm
- install airtable npm module
- run custom node script file
- require airtable module
- make airtable request using token (stored as secret in our github repo)
- create object of latest news/team bios
- check "cache" list matching entry id's.
- use node file system api to write new .md files for news entries.
-
Make pull request if new files are created.
xd.gov doesn't resolve
@lukad03 Just discovered that the following URLs work:
but the following don't:
Just in case y'all weren't aware!
Links should have more descriptive text across website
Links should avoid text like "Learn more" or "click here", as it insufficiently describes the target link contents.
This was flagged after running a Lighthouse page report.
See more information here:
https://developer.chrome.com/docs/lighthouse/seo/link-text/?utm_source=lighthouse&utm_medium=devtools
A workaround for this that preserves the exact same visual copy, is as follows:
.visually-hidden {
clip-path: inset(100%);
clip: rect(1px, 1px, 1px, 1px);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}
<p>Washington has announced plans to stimulate economic growth.
<a href="/washington-growth/"><span class="visually-hidden">Washington stimulates
economic growth </span>Full Story</a>
</p>
"Learn More" link hidden by green text box on particular window widths
I went to xd.gov and saw this:
It seems the green box resizes and shifts itself to cover the Learn More link when the window starts to be less than 1230px wide, then covering it at about 1070px wide. At about 990px wide, the layout shifts responsively to move the green box down and no longer hides the link. As the window shrinks its width more again, the green box resizes and shifts, eventually covering the text again about 670px wide and fully covering it at 625px. Smaller than that and the green bar just disappears. I replicated this in Firefox v114 and Chromium v109.
(I'm guessing it's a CSS @media
size type issue that needs to have some values tweaked, but I haven't looked too thoroughly at it yet.)
Apply button is "misleading"
Apply button could be considered misleading. Consider deemphasizing the Apply link during closed Application periods (instead listing it as a standard link in the nav).
Add consideration language to "Our Timeline" section
Per HRD, language should read as follows:
NOTE: You will not be considered if you fail to provide the required application documents.
Airtable import : Improvements and Todos
- Multiple images support (May require additional Airtable configuration)
- Support for new content types: "Project", "Blogpost", "Publication". New entries should populate a landing page AND create individual xd.gov article pages.
- Configure "Related Projects" tags to link to "Project" content and/or static pages. Additional requirements needed.
- Add separate "Attachments" field and ability to download or view them within an article.
- Add co-author support. (May require additional Airtable configuration)
Create "Script to Rule Them All" for Repository
To make dependency management and initializing the repository easier, we should add a shell script to install global and local dependencies per the "Scripts to Rule Them All" bootstrap and setup patterns: https://github.com/github/scripts-to-rule-them-all.
Create a GitHub action or similar configuration to automatically deploy when `master` branch is updated.
Improve site class naming and tagging
Classes and tag naming can be improved on our pages
Repetition in naming
Redundant classes
Ex: <body class="home page-home index">
Ex: <main class="main-content" id="main-content">
Section names don't need the page name as prefix
Ex: "home-hero", "home-mission", etc
Some naming currently carries a connotation that isn't necessarily true.
Ex: .grid-container
isn't actually a CSS grid element.
Could we make this more generic re: .content-container
or .content-wrapper
?
Avoid using section-
prefixes when the tag isn't a section.
Ex: div.section-breadcrumb
could be something like .breadcrumb
or .heading-eyebrow
Add a space in the about page
this line:
outside partners,such as academic research groups
should have a space after the comma
Subdomain Has been hacked
Hello Guys
Please kindly check this url: https://sra.ungp.xd.gov/?jumbo=slotasia365
someone using your subdomain for betting site
New Contact page
Add Contact page; put in About section, footer and/or top nav
Improve the asset production process and file strategy
Recommendation for production pipeline would be:
- Image assets prepped in Photoshop and exported "for web".
- Prioritize .jpg over .png for file format, barring transparency requirements.
- Where possible, serve viewport-specific files as well as for different DPR (small, small_2x, medium, medium_2x, etc)
- Image exports imported into ImageOptim for additional file compression.
- ImageOptim: https://imageoptim.com/mac/ is available. There is also versions for Windows, Linux, and a web service (likely N/A for our purposes).
Mission page : Consolidate copy
On Mission page, combine "How we work" text with "Our Mission" text and change to “About”
Remove .DS_Store files
I noticed some .DS_Store
files in the repo. We should remove them, then add .DS_Store
to the .gitignore
file.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.