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 Meta Ported Million Lines of Android Code from Java to Kotlin

In order to maximize the benefits brought by Kotlin in terms of productivity and safety, Meta engineers have been hard at work to translate their 10 million line Android codebase from Java into Kotlin. One year into this process, they have ported approximately half of their codebase and developed a specific tool, Kotlinator, to automate the process as much as possible.

By Sergio De Simone

Google Cloud Launches Sixth Generation Trillium TPUs: More Performance, Scalability and Efficiency

Google Cloud's Trillium, its sixth-generation TPU, is now available. It enhances AI workloads with unmatched performance and 67% better energy efficiency. Integral to the AI Hypercomputer, Trillium boasts training speeds over 4x faster and triples inference throughput. This leap positions Google as a contender against Nvidia in the AI data center market.

By Steef-Jan Wiggers

EuroLLM-9B Aims to Improve State of the Art LLM Support for European Languages

EuroLLM-9B is an open-source large language model built in Europe and tailored to European languages, including all the official EU languages as well as 11 other non-official albeit commercially important languages. According to the team behind it, its performance makes it one of the best European-made LLM of this size.

By Sergio De Simone

.NET Community Toolkit 8.4: New MVVM Features, Enhanced Analyzers and Bug Fixes

The .NET Community Toolkit has officially released version 8.4, introducing significant updates and improvements. The latest release includes support for partial properties in the MVVM Toolkit generators, new diagnostic analyzers, bug fixes, and other enhancements to facilitate development workflows.

By Almir Vuk

Podcast: Leveraging AI Platforms to Improve Developer Experience – From Personal Hackathon to AI at Scale

In this podcast Shane Hastie, Lead Editor for Culture & Methods spoke to Olalekan Elesin about how generative AI tools can elevate developer experience by enabling engineers to be more creative and productive. He stresses the need to manage expectations, develop prompt engineering skills, and maintain a focus on security and customer privacy when leveraging these tools in an enterprise setting.

By Olalekan Elesin

© 2024   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service