
# chiOpenData

`chiOpenData` provides simple, reproducible access to Chicago-related
datasets from the  
[Chicago Open Data Portal](https://data.cityofchicago.org/) platform —
directly from R, with **no API keys** or manual downloads required.
Working directly with Socrata APIs can be cumbersome — `chiOpenData`
simplifies this process into a clean, reproducible workflow.

Version **0.1.0** introduces a streamlined, catalog-driven interface for
Chicago Open Data, extending the open data ecosystem beyond New York to
support cross-city analysis and comparative civic research.

The package provides three core functions:

- `chi_list_datasets()` — Browse available datasets from the live
  Chicago Open Data catalog
- `chi_pull_dataset()` — Pull any cataloged dataset by key, with
  filtering, ordering, and optional date controls
- `chi_any_dataset()` — Pull any Chicago Open Data dataset directly via
  its Socrata JSON endpoint

Datasets pulled via `chi_pull_dataset()` automatically apply sensible
defaults from the catalog (such as default ordering and date fields),
while still allowing user control over:

- limit
- filters
- date / from / to
- where
- order
- clean_names
- coerce_types

This redesign reduces maintenance burden, improves extensibility, and
provides a more scalable interface for working with Chicago Open Data.

All functions return clean **tibble** outputs and support filtering
via  
`filters = list(field = "value")`.

------------------------------------------------------------------------

## Installation

### Development version (GitHub)

``` r
devtools::install_github("martinezc1/chiOpenData")
```

------------------------------------------------------------------------

## Example

``` r
library(chiOpenData)

crime_data <- chi_pull_dataset(
  dataset = "crimes_2001_to_present",
  limit = 1000
)

head(crime_data)
#> # A tibble: 6 × 33
#>         id case_number date                block  iucr  primary_type description
#>      <dbl> <chr>       <dttm>              <chr>  <chr> <chr>        <chr>      
#> 1 14154731 JK202681    2026-04-01 00:00:00 032XX… 1150  DECEPTIVE P… CREDIT CAR…
#> 2 14154065 JK202226    2026-04-01 00:00:00 042XX… 2027  NARCOTICS    POSSESS - …
#> 3 14153495 JK201347    2026-04-01 00:00:00 004XX… 2826  OTHER OFFEN… HARASSMENT…
#> 4 14158479 JK207388    2026-04-01 00:00:00 002XX… 2825  OTHER OFFEN… HARASSMENT…
#> 5 14156762 JK205044    2026-04-01 00:00:00 117XX… 1750  OFFENSE INV… CHILD ABUSE
#> 6 14153888 JK201795    2026-04-01 00:00:00 069XX… 0486  BATTERY      DOMESTIC B…
#> # ℹ 26 more variables: location_description <chr>, arrest <lgl>,
#> #   domestic <lgl>, beat <dbl>, district <dbl>, ward <dbl>,
#> #   community_area <dbl>, fbi_code <chr>, x_coordinate <dbl>,
#> #   y_coordinate <dbl>, year <dbl>, updated_on <dttm>, latitude <dbl>,
#> #   longitude <dbl>, computed_region_awaf_s7ux <dbl>,
#> #   computed_region_6mkv_f3dw <dbl>, computed_region_vrxf_vc4k <dbl>,
#> #   computed_region_bdys_3d7i <dbl>, computed_region_43wa_7qmu <dbl>, …
```

## About

`chiOpenData` makes Chicago’s civic datasets accessible to students,  
educators, analysts, and researchers through a unified and user-friendly
R interface.

Developed to support reproducible research, open-data literacy, and
real-world analysis.

------------------------------------------------------------------------

## Comparison to Other Software

While the [`RSocrata`](https://CRAN.R-project.org/package=RSocrata)
package provides a general interface for any Socrata-backed portal,
`chiOpenData` is specifically tailored for **Chicago Open Data Portal**.

This package is part of a broader ecosystem of tools for working with
open data:

- `nycOpenData` — streamlined access to NYC Open Data  
- `nysOpenData` — streamlined access to NY State Open Data
- `mtaOpenData` — streamlined access to MTA-related NY State Open Data

Together, these packages provide a consistent, user-friendly interface
for working with civic data across jurisdictions.

- **Ease of Use**: No need to hunt for 4x4 dataset IDs (e.g.,
  `2ucp-7wg5`); use catalog-based keys instead.
- **Open Literacy**: Designed specifically for students and researchers
  to lower the barrier to entry for civic data analysis.

------------------------------------------------------------------------

## Contributing

We welcome contributions! If you find a bug or would like to request a
wrapper for a specific Chicago dataset, please open an issue or submit a
pull request on [GitHub](https://github.com/martinezc1/chiOpenData).

------------------------------------------------------------------------

## Authors & Contributors

### Maintainer

**Christian A. Martinez** 📧 <c.martinez0@outlook.com>  
GitHub: [@martinezc1](https://github.com/martinezc1)
