Since 18F’s mission is to transform government, we’re constantly thinking about how to scale up our impact. How can our custom-developed work get more mileage in benefitting the federal government and beyond? One way is through reuse of our open source code.

We encourage you to adapt 18F open source projects for your work and personal purposes, whether you’re a fellow federal employee or outside government. We’ve put together a list of some 18F repositories that might be especially useful to you — for your own projects, as part of a nonprofit or business, part of a government somewhere, or for something else that you’re working on.

If you maintain your team’s websites
http://analytics.usa.gov: Publish live analytics for your website(s) on a public page — see analytics.usa.gov for an example. This can help both staff and visitors understand how people use your website. You can also separately use a component of it: Analytics Reporter, a reporting and publishing tool for Google Analytics data.

18F Pages: Help your team quickly publish static websites with 18F Pages, which is a Jekyll-based system similar to GitHub Pages that lets you use your own infrastructure. We use 18F Pages to publish guides and other simple websites on pages.18f.gov (with content hosted on GitHub).

If you help your team work together
Checklistomania: Build centrally-managed todo lists for complex processes such as team member onboarding/offboarding and management changes.

Open Opportunities: Especially for large organizations, this is a way for staff to share news about available internal tasks that might be interesting to somebody in a different part of the organization.

Tock: Track how much time team members spend on projects by asking them to fill out a weekly timesheet in Tock. It’s more convenient than a collection of spreadsheets, and lighter-weight than many of the available commercial time tracking tools.

If you build digital services for government
Compliance Masonry: Simplify the process of building certification documentation (especially for modern applications built on pre-existing systems) by generating documentation based on the OpenControl Schema, a machine-readable format for writing and generating compliance documentation.

Draft U.S. Web Design Standards: Use these pre-built UI components and visual styles to help you create beautiful, easy-to-use U.S. federal websites.

eRegulations: Make your agency’s regulations easier to find, read, and understand with this web application that you can adapt to your agency’s needs. (A collaboration between the Consumer Financial Protection Bureau and 18F.)

FISMA Ready (introduction): Make Federal Information Security Management Act compliance easier by sharing and reusing configurations and best practices for various pieces of software and tooling.

Samwise - Access the http://SAM.gov API via Ruby.

If you work with lots of data
AutoAPI: Set up a simple API engine that converts flat data files into a web service.

Document Processing Toolkit: Extract text from PDFs, and default to OCR when text extraction fails.

gapps-download: Download documents from Google Drive with a quick command so that you can easily republish them to the open web.

Open Data Maker: Turn CSV files into easily accessible open data.

rdbms-subsetter: Generate a random sample of rows from a relational database that preserves referential integrity. Good for creating test or development databases from production.

If you make websites that communicate lots of information
Accordion: Reuse this accessible JavaScript accordion component, such as for sidebar navigation.

Glossary: Add a collapsible glossary sidebar to your website to give readers a quick way to look up important specialized terms. We made this for the beta Federal Election Commission website and split it out for reuse in future projects, and now the U.S. Extractive Industries Transparency Initiative is using it too.

Linkify citations: Turn legal citations into links with this JavaScript plugin, which uses a public domain legal citation engine.

Private Eye: Using this JavaScript plugin, provide in-context indicators to readers that some of the links on a page won’t be accessible to them.

If you use Slack
Coffeemate: Help team members get to know each other by finding a teammate to have a coffee with.

Dolores Landingham Bot: Help onboard new team members with this Slack bot that sends scheduled direct messages with helpful tips.

hubot-slack-github-issues: File an issue in a GitHub repository by tagging a Slack chat message with a specific emoji reaction. For example, this is a quick way to remind yourself (or your team members) to integrate a useful piece of information from chat into the documentation for your project.

Slack Emoji Search: With this command-line utility, search for Slack messages that have been reacted to with a specific emoji.

If you use Jekyll
Jekyll Frontmatter Tests: Add tests to make sure you're always including required fields on posts or other documents.

Jekyll-get: Download data from external JSON sources to use in generating your site.

Jekyll Pages API: Generate a JSON file with data for all the pages in your site.

jekyll_pages_api_search: Add search to your site, no server required.

If you use Cloud Foundry
BOSH Release for New Relic server monitor: Set up New Relic to monitor your Cloud Foundry deployment (more about BOSH).

cg-cron: Run cron jobs in a Cloud Foundry app. Also: cf-go-cron, an experimental rewrite in Go. (These are in alpha stage.)

Cloud Foundry Deck: If you use Cloud Foundry, manage your applications with a web UI.

Cloud Foundry Notifications for Hubot: Get chat notifications (in Slack or elsewhere) about deployments of applications within Cloud Foundry.

Cloud Foundry RDS Service Broker: Manage RDS instances and a shared RDS Database. We’re working on a generic version to handle more AWS services at aws-broker, and we’ll update the community version when they’re complete.

See also: our list of cloud.gov platform tools.

If you want information about websites
domain-scan: Use this command-line tool to run several open source scanning tools on domains to measure aspects such as speed, accessibility, and HTTPS.

urlsize: Determine the file sizes of one or more URLs via this command-line tool.

For more guidance about reusing or contributing to our work, take a look at our open source policy. While not required, if you end up using one of our tools, we would love to hear from you. You can tweet at @18F, open an issue in the relevant repository to write a note about that project, or send us an email (18F@gsa.gov). Looking forward to hearing from you!

This piece was originally published on 18F blog by our colleague Britta Gustafson.

- Melody
18f.gsa.gov

Our mailing address is:
General Services Administration | 18F
1800 F ST NW
Washington, DC 20010

Views: 196

Comment

You need to be a member of Codetown to add comments!

Join Codetown

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

How GitHub Built Sub-Issues into Its Issue Tracking System

Coinciding with the generally availability of sub-issues, GitHub engineer Shaun Wong shared insights about how they added support for hierarchical issue structures, the lessons learned during development, and the key role sub-issues played in their workflow.

By Sergio De Simone

AWS Introduces MCP Servers for AI-Assisted Cloud Development

AWS has launched the open-source Model Context Protocol (MCP) Servers, revolutionizing AI-powered code assistants. These servers enhance development speed and security, ensuring adherence to AWS best practices. With features like automated Infrastructure as Code and cost insights, MCP democratizes AWS expertise and empowers developers to optimize cloud solutions effortlessly.

By Steef-Jan Wiggers

Amazon VPC Route Server Generally Available, Providing Routing Flexibility and Fault Tolerance

AWS has recently announced the general availability of Amazon VPC Route Server. This new option simplifies dynamic routing in a VPC, allowing developers to advertise routing information via Border Gateway Protocol (BGP) from virtual appliances and dynamically update the VPC route tables associated with subnets and internet gateways.

By Renato Losio

Presentation: Changing the Model: Why and How We Re-Architected Slack

Ian Hoffman discusses Slack's architectural evolution from workspace-centric to Unified Grid. He explains scaling challenges & Enterprise Grid complexities, and shares lessons learned during this significant architectural shift, drawing insightful parallels to the history of astronomy and emphasizing the importance of questioning foundational assumptions in software development.

By Ian Hoffman

Podcast: Taming Flaky Tests: Trisha Gee on Developer Productivity and Testing Best Practices

In this podcast, Shane Hastie, Lead Editor for Culture & Methods, spoke with Trisha Gee about the challenges and importance of addressing flaky tests, their impact on developer productivity and morale, best practices for testing, and broader concepts of measuring and improving developer productivity.

By Trisha Gee

© 2025   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service