feat: expand color system to 53 colors/10 palettes, add grid/slide themes, and README gallery
R-CMD-check / R CMD check (push) Successful in 3m41s

Replace the 16-color / 3-palette system with the full Civilytics design
system: 53 named colors (full navy, ember, violet ramps plus teal, plum,
moss, brass supporting hues) and 10 visualization palettes (qual,
qual_warm, qual_cool, seq_ember, seq_navy, seq_violet, seq_paper_ink,
div_navy_ember, div_violet_ember).

Enrich theme_civilytics() with grid and paper_bg parameters, add
theme_civilytics_slide() for presentations, and load all four brand fonts
(Inter, Libre Franklin, Source Serif 4, JetBrains Mono).

Add README.Rmd with rendered gallery showing all palettes, theme
variants, grid options, dark/slide modes, facets, and scale usage.
This commit is contained in:
2026-05-19 10:35:32 -06:00
parent 099fff1d1d
commit 515bae8685
29 changed files with 1209 additions and 273 deletions
+18 -14
View File
@@ -13,9 +13,11 @@ theme_civilytics_dark(
rel_tiny = 11/14,
rel_large = 16/14,
ink = unname(civilytics_colors["paper"]),
paper = unname(civilytics_colors["navy_dark"]),
accent = unname(civilytics_colors["accent_dark"]),
strip_color = unname(civilytics_colors["navy"])
paper = unname(civilytics_colors["navy_700"]),
accent = unname(civilytics_colors["ember_400"]),
strip_color = unname(civilytics_colors["navy_600"]),
grid = c("y", "x", "both", "none"),
paper_bg = TRUE
)
}
\arguments{
@@ -45,31 +47,33 @@ Default `11/14`.}
[civilytics_colors]`["paper"]` (`#FAF7F2`).}
\item{accent}{Character. Hex code for accent/highlight color. Defaults to
[civilytics_colors]`["accent"]` (`#C25311`).}
[civilytics_colors]`["ember_600"]` (`#C25311`).}
\item{strip_color}{Character. Hex code for facet strip background. Defaults
to [civilytics_colors]`["paper_2"]` (`#F2EDE4`).}
\item{grid}{Character. Which major gridlines to draw: `"y"` (default,
horizontal only), `"x"` (vertical only), `"both"`, or `"none"`.}
\item{paper_bg}{Logical. If `TRUE` (default), fill the plot and panel
backgrounds with the warm `paper` color. Set to `FALSE` for a
transparent background (useful for slides or overlay on colored
surfaces).}
}
\value{
A complete ggplot2 [ggplot2::theme()] object.
}
\description{
A convenience wrapper around [theme_civilytics()] with dark-background
defaults: navy (`#1A2E4A`) background, warm off-white (`#FAF7F2`) text, and
a lighter orange accent (`#E07840`) suitable for dark backgrounds. Pair with
`make_logo_grob(variant = "dark")` to use the white logo.
Convenience wrapper around [theme_civilytics()] with dark-background
defaults: navy (`#1A2E4A`) paper, warm off-white (`#FAF7F2`) ink, and
a lighter ember accent (`#E07840`). Facet strips use primary navy.
}
\details{
All parameters from [theme_civilytics()] are accepted and override the dark
defaults.
Pair with `make_logo_grob(variant = "dark")` for the white logo.
}
\examples{
\dontrun{
library(ggplot2)
ggplot(mpg, aes(displ, hwy)) +
geom_point() +
theme_civilytics_dark()
ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point() +
scale_color_civilytics() +