# easytable: Quick Start

`easytable` is built around one promise:

1. Easy to use.
2. Easy to read.

## Minimal Example

    library(easytable)

    m1 <- lm(mpg ~ wt, data = mtcars)
    m2 <- lm(mpg ~ wt + hp, data = mtcars)

    easytable(m1, m2)

Coefficient | Model 1 | Model 2
--- | --- | ---
(Intercept) | 37.29 *** (1.88) | 37.23 *** (1.60)
wt | -5.34 *** (0.56) | -3.88 *** (0.63)
hp |  | -0.03 *** (0.01)
N | 32 | 32
R sq. | 0.75 | 0.83
Adj. R sq. | 0.74 | 0.81
Significance: ***p < .01; **p < .05; *p < .1

## Output Formats

### Word / HTML path (default)

    easytable(m1, m2, output = "word")

Coefficient | Model 1 | Model 2
--- | --- | ---
(Intercept) | 37.29 *** (1.88) | 37.23 *** (1.60)
wt | -5.34 *** (0.56) | -3.88 *** (0.63)
hp |  | -0.03 *** (0.01)
N | 32 | 32
R sq. | 0.75 | 0.83
Adj. R sq. | 0.74 | 0.81
Significance: ***p < .01; **p < .05; *p < .1

### LaTeX / PDF path

    easytable(m1, m2, output = "latex")

## Common Options

    easytable(
      m1, m2,
      model.names = c("Baseline", "With Controls"),
      highlight = TRUE
    )

Coefficient | Baseline | With Controls
--- | --- | ---
(Intercept) | 37.29 *** (1.88) | 37.23 *** (1.60)
wt | -5.34 *** (0.56) | -3.88 *** (0.63)
hp |  | -0.03 *** (0.01)
N | 32 | 32
R sq. | 0.75 | 0.83
Adj. R sq. | 0.74 | 0.81
Significance: ***p < .01; **p < .05; *p < .1

    easytable(
      m1, m2,
      robust.se = TRUE
    )

Coefficient | Model 1 | Model 2
--- | --- | ---
(Intercept) | 37.29 *** (2.13) | 37.23 *** (1.94)
wt | -5.34 *** (0.63) | -3.88 *** (0.62)
hp |  | -0.03 *** (0.01)
N | 32 | 32
R sq. | 0.75 | 0.83
Adj. R sq. | 0.74 | 0.81
Significance: ***p < .01; **p < .05; *p < .1
Note: Robust Standard Errors

## Export Files

    easytable(
      m1, m2,
      export.word = "table.docx",
      export.csv = "table.csv"
    )

## Next Steps

- Full end-to-end walkthrough: `vignette("penguins-tutorial", package = "easytable")`
- Developer API and architecture plan: `vignette("developer-roadmap", package = "easytable")`