Giter Site home page Giter Site logo

govtmirror / fbopen Goto Github PK

View Code? Open in Web Editor NEW

This project forked from 18f/fbopen

1.0 2.0 0.0 20.53 MB

An open API server, data import tools, and sample apps to help small businesses search for opportunities to work with the U.S. government.

Home Page: https://fbopen.gsa.gov

License: Other

Makefile 0.28% JavaScript 58.99% CSS 5.47% Python 10.63% HTML 18.27% API Blueprint 0.05% Shell 6.27% Groovy 0.03%

fbopen's Introduction

FBOpen

FBOpen is an open API server, data import tools, and sample apps to help small businesses search for opportunities to work with the U.S. government.

The project began as an attempt to make it easier to search the content of FBO.gov, the U.S. government's system of record for opportunities to do business with the government. We downloaded the (XML) data from FBO's weekly data dump of opportunity listings, and loaded it into a Elasticsearch search server. Then we used a primitive crawler to download listings' attachments and load them into Elasticsearch -- something Elasticsearch makes easy thanks to their [Mapper Attachments Type] (https://github.com/elasticsearch/elasticsearch-mapper-attachments) plugin.

Underneath the Google-style query page (/sample-www), we built a simple REST API (really a thin layer over Elasticsearc's API) so you can build your own query tools.

Then someone realized we didn't have to limit this server to FBO data. There's a second sample data loader that can be used to load data nightly from grants.gov, and the API allows you to post opportunities, too. Many more data loaders are on their way.

As of 2014-03-12, we're live at https://fbopen.gsa.gov .

Quickstart (OSX-only) (experimental)

This gets you a minimum viable setup:

$ cd fbopen
$ FBOPEN_ROOT=~/your/root/to/fbopen ./inital-dev-setup.sh

To clean out any new files created from that script, as well as uninstall Elasticsearch, you can run:

$ ./initial-dev-uninstall.sh

How to get started (manually)

  • Clone this repo.
  • This repo has an external dependency on another git repo, which needs to be populated at first, so cd to the repo and run: git submodule update --init --recursive.
  • Then install Elasticsearch. FBOpen requires at least version 1.2.
  • Get the API server up and running. See the README.md in /api.
  • Load data into the search index using the import tools in /loaders -- or roll your own, or use the API's POST /v0/opp to post opportunities one at a time (POST functionality is temporarily disabled).
  • To run a simple query web page, try the sample app in /sample-www.
    • A quick and easy way to access this page at localhost, provided you have Python installed, is to cd to the /sample-www directory and run: python -m SimpleHTTPServer. By default, you'll then be able to access the client at http://localhost:8000

Examples

  • You can add an FBOpen query to any HTML page by just copying and pasting a snippet of JavaScript with our FBOpen Widget Maker.
  • The BusinessUSA PIF team coded up a sample form specifically geared toward submitting or tweaking SBIR solicitations in FBOpen. The relevant code can be found here: https://github.com/GSA-OCSIT/hyabusa. Hyabusa is a test-bed Rails 4 app, and includes several other mini-applications, so look for the SbirSolicitationsController and related views.
  • One of the BusinessUSA PIF's also coded up a sample site to showcase how SBIR.gov could function if FBOpen were the backend data source for the solicitation listings. That repo, as of this writing very much a work in progress, can be found here: https://github.com/arowla/sbiropen. This is a Python app built with the Flask microframework.

Caveat

This project is brand new and very incomplete. No guarantees of data completeness or functionality are implied or should be assumed. There is lots to do!

Who

FBopen is a joint project of 18F, the Presidential Innovation Fellowship, and the GSA Integrated Award Environment.

Public domain

This project is in the worldwide public domain. As stated in CONTRIBUTING:

This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication.

All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.

fbopen's People

Contributors

arowla avatar aaronsnow avatar annalee avatar noahkunin avatar adelevie avatar konklone avatar jroo avatar leahbannon avatar kaitlin avatar edsu avatar meiqimichelle avatar

Stargazers

Nick Fn Blum avatar

Watchers

James Cloos avatar Nick Fn Blum avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.