Giter Club home page Giter Club logo

citygram-services's Introduction

spy-glass (aka Citygram connector)

Spyglass is a Code for America project by the Charlotte Team for the 2014 fellowship.

Why are we doing this?

What does this do now?

This is a registry of micro ETL endpoints. What does that even mean? Good question. Citygram has good overview documentation.

But here's a specific example of the information flow:

CKAN code enforcement -> Citygram connector -> Citygram

This particular Citygram connector pulls the last seven days worth of code complaints and formats them as geojson that Citygram polls many times a day.

It creates a unique key that is a composite of the CaseNo and Status columns. When this key changes, Citygram will create a new event that will be sent to subscribers. Since the key is a composite, an event is created whenever a status changes for a given case.

What will this do in the future?

TODO

Who is this made by?

Setup

git clone https://github.com/citygram/citygram-services.git
cd citygram-services
cp .env.sample .env
gem install bundler
bundle install
bundle exec rackup

citygram-services's People

Contributors

invisiblefunnel avatar bigfleet avatar eeeschwartz avatar lyzidiamond avatar bkerley avatar yamilethmedina avatar jszwedko avatar theodoreward avatar jdungan avatar devdupont avatar masonpackard avatar leompeters avatar sarabehunek avatar scottelundgren avatar somelikeitchott avatar aplannersguide avatar t-richards avatar jmsomoza avatar

Stargazers

albert avatar Erdong avatar Dane Summers avatar  avatar Mike Sarasti avatar  avatar Matt Solt avatar Eddie A Tejeda avatar Ryan Kanno avatar  avatar Mike Dillion avatar Oscar Rodriguez avatar Luke Bergmann avatar  avatar Andrew Turner avatar Jubal Harpster avatar

Watchers

 avatar James Cloos avatar Soudea Forbes avatar  avatar

citygram-services's Issues

SF Street Use Permits

Definition: Street use permits issued by SF Public Works for sidewalk work, excavations, water breaks, etc.
Data Source: https://data.sfgov.org/City-Infrastructure/Street-Use-Permits/b6tj-gt35
ETL: [forthcoming]
Template: [Salutation] A new permit has been issued for [Permit Type], at [streetname] between [Cross Street 1] and [Cross Street 2], from [permit_start_date] to [permit_end_date].

Example: Hello! A new permit has been issued for Excavation, at GEARY BLVD between BAKER ST \ SAINT JOSEPHS AVE and LYON ST, from 10/07/2014 12:00:00 AM to 11/20/2014 12:00:00 AM.

Categories to filter for:
Emergency
Excavation
NightNoise
Sidewalk
TempOccup

SF Temporary Tow Away Zones

  • Definition: Temporary tow away zones in San Francisco granted by permit from the SFMTA or Department of Public Works.
  • Data Source: https://data.sfgov.org/Transportation/SFMTA-Enforced-Temporary-Tow-Zones/cqn5-muyy
  • ETL:
  • Template: [salutation] There is a temporary tow away zone near [FromAddress] [StreetName] from [starttime]-[endtime] on [Days] from [starting_date] to [ending_date] due to [Category_Code].
  • Example: Yo! There is a temporary tow away zone near 353 Folsom Street from 7:00-21:00 on Monday-Friday from 8/16/2014 to 10/16/2014 due to Construction - City Contract.
  • Template V2 if one-day tow zone (logic: if [starting_date] = [ending_date]): [salutation] There is a temporary tow away zone near [FromAddress] [StreetName] from [starttime]-[endtime] on [Days] [starting_date] due to [Category_Code].
  • Example V2 if one-day tow zone: Yo! There is a temporary tow away zone near 353 Folsom Street from 17:00-21:00 on Thursday 10/16/2014 due to Special Event - Event.

Lexington Foreclosures

  • Definition: A property that has been seized for failure to make mortgage payments and sold at auction.
  • Data Source: [forthcoming]
  • ETL: [forthcoming]
  • Template: A foreclosed property has been sold near you at [address] for [price].

Seattle Land Use Permits

Miami-Dade Building Permits

I noticed today that our "Building Permits" dataset for Miami only pulls from the Miami-Dade county dataset, which isn't a complete view of building permits. Municipalities like the City of Miami, Miami Beach, et al. have separate building permit datasets.

2018-03-03-11-09-36

If we wanted to merge these datasets, how would that work? Would we add more code to https://github.com/citygram/citygram-services/blob/master/lib/spy_glass/registry/miami-building-permits.rb to pull from each municipality in addition to the county, come up with a way to rewrite them to look similar to the existing county entries?

Integration of rubocop?

Hey!

I was wondering what the opinion of integrating Rubocop for style-checking would be. In addition to enforcing a consistent style, it also helps find issues like unused variables, improper equality operators, missing documentation, and other possible bugs.

Figured I'd ask before integrating it since it'll take a little time to address the issues that rubocop cannot autocorrect.

Charlotte Historic District

Currently suffering from a NoMethodFound error:

2015-08-18T16:26:20.082408+00:00 app[web.1]: NoMethodError - undefined method `[]' for nil:NilClass:
2015-08-18T16:26:20.082413+00:00 app[web.1]:    /app/lib/spy_glass/registry/clt-historic-district-reviews.rb:13:in `block (2 levels) in

In addition, the title needs to be revisited.

Lexington Building Permits

  • Definition: An official approval required for new construction or adding onto pre-existing structures.
  • Data Source: [forthcoming]
  • ETL: [forthcoming]
  • Template: A building permit application has been submitted near you at [Address]. The permit is for [PropertyType] and its ID is [PermitID].

SF New Street Tree Plantings

  • Definition: When new trees are planted along city streets by the San Francisco Department of Public Works.
  • Data Source: https://data.sfgov.org/City-Infrastructure/Street-Tree-List/tkzw-k3nq
  • ETL: [forthcoming]
  • Template: [Salutation] A new tree has been planted near you by the SF Department of Public Works at [qAddress]! It is a [qSpecies] and has been planted at a [qSiteInfo].
  • Example: Hi! A new tree has been planted near you by the SF Department of Public Works at 605 Divisadero St! It is a Gingko biloba :: Maidenhair tree and has been planted at a Sidewalk: Curb side : Cutout.

San Diego Code Enforcement

Definition: A way to be notified of code enforcement activity near an address in San Diego.
Data Source:: OpenDSD
ETL:: Data is already being ETLed out to OpenDSD, and we just grab the latest.
Template:: "There's been a code enforcement case updated near you at: [Street Address].
The violation is "[Description]".
You can find out more at: [url with more info]

URL is https://sd-notifications.herokuapp.com/dsd/code-enforcement

Thank you!

[noop]

Setting an alert trigger on this repo.

Fixing bug that doesn't show what address that permits are being applied for

From this CfM comment:

"I sign up to get the permits that are pulled, but all it does it gives the names of the people pulling the permits and that's not necessarily important to me. What I want to track is the address; what property that permit was pulled for and who pulled it."

The JSON field name was changed, so we had to modify our code in Miami building permits

Pending rezonings data issue

Output does not pass GeoJSONLint with a missing geometry issue. This is preventing new updates from being circulated.

Endpoint /clt-pending-rezoning

List of salutations.

Hi!
Hello!
Salutations!
YO!
Hi there.
Hey.
Hola.
Ahoy!
Aloha!
Ciao.
Hi :)
Good day!
Greetings!
Look!

SF Crime Incidents

Definition: Major crime incidents reported by the SFPD, updated daily.
Data Source: https://data.sfgov.org/Public-Safety/SFPD-Incidents-Previous-Three-Months/tmnf-yvry
ETL: [forthcoming]
Template: A crime incident happened near you on [Date] at [Address]. The SFPD described it as a [Descript] with the following resolution: [Resolution].

Example: A crime incident happened near you on 9/29/2014 at FULTON ST / HYDE ST. The SFPD described it as a ATTEMPTED ROBBERY WITH A GUN with the following resolution: NONE.

Categories to filter for:
LARCENY/THEFT
BURGLARY
VEHICLE THEFT
ASSAULT
ROBBERY
ARSON
KIDNAPPING
SEX OFFENSES, FORCIBLE
SEX OFFENSES, NON FORCIBLE
STOLEN PROPERTY

Charlotte Land Development

Seattle 911 Police Incidents

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.