diff --git a/DESCRIPTION b/DESCRIPTION
index 2f924142..b4523b90 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,7 +1,7 @@
-Package: plot2
+Package: tinyplot
 Type: Package
-Title: Lightweight extension of base R plot
-Version: 0.0.4
+Title: Lightweight Extension of the Base R Graphics System
+Version: 0.0.5
 Authors@R: 
   c(
     person(
@@ -31,8 +31,8 @@ Authors@R:
       email = "etienne.bacher@protonmail.com"
     )
   )
-Description: Lightweight extension of the base R plot system, with support for
-      automatic grouping and legend printing, and several other enhancements.
+Description: Lightweight extension of the base R graphics system, with support
+      for automatic legends, facetting, and several other enhancements.
 License: GPL (>= 2) 
 Depends:
   R (>= 4.0)
@@ -54,9 +54,9 @@ Suggests:
 Remotes: 
   etiennebacher/altdoc
 Encoding: UTF-8
-RoxygenNote: 7.3.0
-URL: https://grantmcdermott.com/plot2/,
-    http://grantmcdermott.com/plot2/
-BugReports: https://github.com/grantmcdermott/plot2/issues
+RoxygenNote: 7.3.1
+URL: https://grantmcdermott.com/tinyplot/,
+    http://grantmcdermott.com/tinyplot/
+BugReports: https://github.com/grantmcdermott/tinyplot/issues
 VignetteBuilder: knitr
 Roxygen: list(markdown = TRUE)
diff --git a/NAMESPACE b/NAMESPACE
index 4f19b2ad..dc630033 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -1,11 +1,12 @@
 # Generated by roxygen2: do not edit by hand
 
-S3method(plot2,default)
-S3method(plot2,density)
-S3method(plot2,formula)
+S3method(tinyplot,default)
+S3method(tinyplot,density)
+S3method(tinyplot,formula)
 export(draw_legend)
-export(par2)
-export(plot2)
+export(plt)
+export(tinyplot)
+export(tpar)
 importFrom(grDevices,adjustcolor)
 importFrom(grDevices,extendrange)
 importFrom(grDevices,hcl.colors)
diff --git a/NEWS.md b/NEWS.md
index 8110d04d..63abceb9 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,5 +1,49 @@
 # News
 
+## 0.0.5
+
+**IMPORTANT BREAKING CHANGE:**
+
+The package has been renamed to **tinyplot**. (#22 @grantmcdermott)
+
+This package renaming also incorporates the following function changes:
+
+- `plot2()` is replaced by `tinyplot()` (or its shorthand alias `plt()`).
+- `par2()` is replaced by `tpar()`.
+
+So, where you used to write...
+
+```r
+library(plot2)
+plot2(Sepal.Length ~ Petal.Length | Species, iris)
+```
+
+... you should now write:
+
+```r
+library(tinyplot)
+tinyplot(Sepal.Length ~ Petal.Length | Species, iris)
+
+# Or, use the equivalent shorthand `plt` alias
+plt(Sepal.Length ~ Petal.Length | Species, iris)
+```
+
+The package URLs have been updated accordingly:
+
+- GitHub: https://github.com/grantmcdermott/tinyplot
+- Website: https://grantmcdermott.com/tinyplot
+- R-universe: https://grantmcdermott.r-universe.dev/tinyplot
+
+Many thanks to everyone who provided thoughtful feedback about this prospective
+name change, especially @zeileis and @vincentarelbundock for kicking off the
+discussion, as well as the 100+ participants who voted in the social media
+poll.
+
+For more details about the rational underlying this renaming decision, please
+see the following GitHub comment, as well as the discussion that preceded it:
+https://github.com/grantmcdermott/plot2/issues/22#issuecomment-1928472754
+
+
 ##  0.0.4
 
 Website:
diff --git a/R/draw_legend.R b/R/draw_legend.R
index 4f06612d..a8712088 100644
--- a/R/draw_legend.R
+++ b/R/draw_legend.R
@@ -1,24 +1,24 @@
-#' @title Calculate placement of legend and and draw it
+#' @title Calculate placement of legend and draw it
 #'   
 #' @description Internal function used to calculate the placement of (including
 #'   outside the plotting area) and drawing of legend.
 #'   
 #' @md
-#' @param legend Legend placement keyword or list, passed down from `plot2`.
+#' @param legend Legend placement keyword or list, passed down from `tinyplot`.
 #' @param legend.args Additional legend arguments to be passed to `legend()`.
 #' @param by_dep The (deparsed) "by" grouping variable name.
 #' @param lgnd_labs The labels passed to `legend(legend = ...)`.
-#' @param type Plotting type(s), passed down from `plot2`.
-#' @param pch Plotting character(s), passed down from `plot2`.
-#' @param lty Plotting linetype(s), passed down from `plot2`.
-#' @param col Plotting colour(s), passed down from `plot2`.
-#' @param bg Plotting character background fill colour(s), passed down from `plot2`.
-#' @param cex Plotting character expansion(s), passed down from `plot2`.
+#' @param type Plotting type(s), passed down from `tinyplot`.
+#' @param pch Plotting character(s), passed down from `tinyplot`.
+#' @param lty Plotting linetype(s), passed down from `tinyplot`.
+#' @param col Plotting colour(s), passed down from `tinyplot`.
+#' @param bg Plotting character background fill colour(s), passed down from `tinyplot`.
+#' @param cex Plotting character expansion(s), passed down from `tinyplot`.
 #' @param lmar Legend margins (in lines). Should be a numeric vector of the form
 #'   `c(inner, outer)`, where the first number represents the "inner" margin
 #'   between the legend and the plot, and the second number represents the
 #'   "outer" margin between the legend and edge of the graphics device. If no
-#'   explicit value is provided by the user, then reverts back to `par2("lmar")`
+#'   explicit value is provided by the user, then reverts back to `tpar("lmar")`
 #'   for which the default values are `c(1.0, 0.1)`.
 #' @param has_sub Logical. Does the plot have a sub-caption. Only used if
 #'   keyword position is "bottom!", in which case we need to bump the legend
@@ -58,7 +58,7 @@
 #' 
 #' # Note that the inner and outer margin of the legend itself can be set via
 #' # the `lmar` argument. (This can also be set globally via
-#' # `par2(lmar = c(inner, outer))`.)
+#' # `tpar(lmar = c(inner, outer))`.)
 #' draw_legend(
 #'   legend.args = list(title = "Key", bty = "o"),
 #'   lgnd_labs = c("foo", "bar"),
@@ -89,7 +89,7 @@ draw_legend = function(
 ) {
   
   if (is.null(lmar)) {
-    lmar = par2("lmar")
+    lmar = tpar("lmar")
   } else {
     if (!is.numeric(lmar) || length(lmar)!=2) stop ("lmar must be a numeric of length 2.")
   }
@@ -163,11 +163,11 @@ draw_legend = function(
   omar = par("mar")
   topmar_epsilon = 0.1
   
-  # Catch to avoid recursive offsets, e.g. repeated plot2 calls with
+  # Catch to avoid recursive offsets, e.g. repeated tinyplot calls with
   # "bottom!" legend position.
   
   ## restore inner margin defaults
-  ## (in case the plot region/margins were affected by the preceding plot2 call)
+  ## (in case the plot region/margins were affected by the preceding tinyplot call)
   if (any(ooma != 0)) {
     if ( ooma[1] != 0 & omar[1] == par("mgp")[1] + 1*par("cex.lab") ) omar[1] = 5.1
     if ( ooma[2] != 0 & omar[2] == par("mgp")[1] + 1*par("cex.lab") ) omar[2] = 4.1
diff --git a/R/plot2-package.R b/R/plot2-package.R
deleted file mode 100644
index 0b0a8276..00000000
--- a/R/plot2-package.R
+++ /dev/null
@@ -1,20 +0,0 @@
-#' \code{plot2-package}
-#'
-#' @title plot2: Lightweight extension of the base R plot function, with support
-#'   for automatic grouping and legend printing, and several other enhancements
-#'
-#' @description The goal of **plot2** is to extend the functionality of base R's
-#'   default (2D) `plot()` function, particularly as it applies to scatter and
-#'   line plots with grouped data. For example, **plot2** makes it easy to plot
-#'   different categories of a dataset in a single function call and highlight
-#'   these categories (groups) using modern colour palettes. Coincident with
-#'   this grouping support, **plot2** also produces automatic legends with scope
-#'   for further customization. While the package also offers several other
-#'   minor enhancements, it tries as far as possible to be a drop-in replacement
-#'   for the equivalent base plot function. Users should be able to swap a valid
-#'   `plot` call with `plot2` without any changes to the expected output.
-#'
-#' @docType package
-#' @aliases plot2-package NULL
-#' @keywords internal
-"_PACKAGE"
\ No newline at end of file
diff --git a/R/tinyplot-package.R b/R/tinyplot-package.R
new file mode 100644
index 00000000..cd16b1ab
--- /dev/null
+++ b/R/tinyplot-package.R
@@ -0,0 +1,22 @@
+#' \code{tinyplot-package}
+#'
+#' @title tinyplot: Lightweight extension of the base R graphics system, with
+#'   support for automatic legends, facetting, and several other enhancements.
+#'
+#' @description The goal of **tinyplot** is to provides a lightweight extension
+#'   of the base R graphics system with various convenience features,
+#'   particularly for representing groups with your data. For example, the core
+#'   `tinyplot()` function (alias: `plt()` with no vowels) makes it easy to plot
+#'   different categories of a dataset in a single function call and highlight
+#'   these categories (groups) using modern colour palettes. Coincident with
+#'   this grouping support, `tinyplot()` also produces automatic legends with
+#'   scope for further customization. While the package offers several other
+#'   enhancements like facets, it tries as far as possible to be a drop-in
+#'   replacement for the equivalent base plotting calls. Users should generally
+#'   be able to swap a valid `plot()` call with `tinyplot()` without any changes
+#'   to the expected output.
+#'
+#' @docType package
+#' @aliases tinyplot-package NULL
+#' @keywords internal
+"_PACKAGE"
\ No newline at end of file
diff --git a/R/plot2.R b/R/tinyplot.R
similarity index 93%
rename from R/plot2.R
rename to R/tinyplot.R
index 21c3d5d0..556e46bc 100644
--- a/R/plot2.R
+++ b/R/tinyplot.R
@@ -1,16 +1,10 @@
 #' @title Lightweight extension of the base R plotting function
-#'   
-#' @description Extends base R's graphics system,
-#'   particularly as it applies to scatter and
-#'   line plots with grouped data. For example, `plot2` makes it easy to plot
-#'   different categories of a dataset in a single function call and highlight
-#'   these categories (groups) using modern colour palettes. Coincident with
-#'   this grouping support, `plot2` also produces automatic legends with scope
-#'   for further customization. While the package also offers several other
-#'   enhancements, it tries as far as possible to be a drop-in replacement
-#'   for the equivalent base plot function. Users should generally be able to
-#'   swap a valid \code{\link[graphics]{plot}} call with `plot2` without any
-#'   changes to the output.
+#'  
+#' @description
+#' Enhances the base \code{\link[graphics]{plot}} function. Supported features
+#' include automatic legends and facets for grouped data, additional plot types,
+#' theme customization, and so on. Users can call either `tinyplot()`, or its
+#' shorthand alias `plt()`.
 #' 
 #' @md
 #' @param x,y the x and y arguments provide the x and y coordinates for the
@@ -52,18 +46,18 @@
 #'   is passed to the main `facet` argument, since the layout is arranged in a
 #'   fixed grid.
 #'   - `fmar` a vector of form `c(b,l,t,r)` for controlling the base margin
-#'   between facets in terms of lines. Defaults to the value of `par2("fmar")`,
+#'   between facets in terms of lines. Defaults to the value of `tpar("fmar")`,
 #'   which should be `c(1,1,1,1)`, i.e. a single line of padding around each
 #'   individual facet, assuming it hasn't been overridden by the user as part
-#'   their global \code{\link[plot2]{par2}} settings. Note some automatic
+#'   their global \code{\link[tinyplot]{tpar}} settings. Note some automatic
 #'   adjustments are made for certain layouts, and depending on whether the plot
 #'   is framed or not, to reduce excess whitespace. See
-#'   \code{\link[plot2]{par2}} for more details.
+#'   \code{\link[tinyplot]{tpar}} for more details.
 #'   - `cex`, `font`, `col`, `bg`, `border` for adjusting the facet title text
 #'   and background. Default values for these arguments are inherited from
-#'   \code{\link[plot2]{par2}} (where they take a "facet." prefix, e.g. 
-#'   `par2("facet.cex")`). The latter function can also be used to set these
-#'   features globally for all `plot2` plots.
+#'   \code{\link[tinyplot]{tpar}} (where they take a "facet." prefix, e.g. 
+#'   `tpar("facet.cex")`). The latter function can also be used to set these
+#'   features globally for all `tinyplot` plots.
 #' @param formula a `formula` that optionally includes grouping variable(s)
 #'   after a vertical bar, e.g. `y ~ x | z`. One-sided formulae are also
 #'   permitted, e.g. `~ y | z`. Note that the `formula` and `x` arguments
@@ -76,7 +70,7 @@
 #'   lines, "o" for overplotted points and lines, "s" and "S" for stair steps
 #'   and "h" for histogram-like vertical lines. "n" does not produce
 #'   any points or lines.
-#'   - Additional plot2 types: "density" for densities, "pointrange" or
+#'   - Additional tinyplot types: "density" for densities, "pointrange" or
 #'   "errorbar" for segement intervals, and "ribbon" or "area" for polygon
 #'   intervals (where area plots are a special case of ribbon plots with `ymin`
 #'   set to 0 and `ymax` set to `y`; see below).
@@ -129,7 +123,7 @@
 #'    argument and underlying data.
 #'    - A convenience string indicating the legend position. The string should
 #'    correspond to one of the position keywords supported by the base `legend`
-#'    function, e.g. "right", "topleft", "bottom", etc. In addition, `plot2`
+#'    function, e.g. "right", "topleft", "bottom", etc. In addition, `tinyplot`
 #'    supports adding a trailing exclamation point to these keywords, e.g.
 #'    "right!", "topleft!", or "bottom!". This will place the legend _outside_
 #'    the plotting area and adjust the margins of the plot accordingly. Finally,
@@ -141,7 +135,7 @@
 #'    legend arguments, e.g. "bty", "horiz", and so forth.
 #' @param col plotting color. Character, integer, or vector of length equal to
 #'   the number of categories in the `by` variable. See `col`. Note that the
-#'   default behaviour in `plot2` is to vary group colors along any variables
+#'   default behaviour in `tinyplot` is to vary group colors along any variables
 #'   declared in the `by` argument. Thus, specifying colors manually should not
 #'   be necessary unless users wish to override the automatic colors produced by
 #'   this grouping process. Typically, this would only be done if grouping
@@ -167,7 +161,7 @@
 #'   case the background fill will inherit the automatic group coloring
 #'   intended for the `col` argument. Note that this grouped inheritance will
 #'   persist even if the `col` defaults are themselves overridden. For example,
-#'   `plot2(y ~ x | z, data = fakedata, pch = 22, col = "blue", bg = "by")`
+#'   `tinyplot(y ~ x | z, data = fakedata, pch = 22, col = "blue", bg = "by")`
 #'   will yield filled squares with a blue border.
 #' @param fill alias for `bg`. If non-NULL values for both `bg` and `fill` are
 #'   provided, then the latter will be ignored in favour of the former.
@@ -176,10 +170,10 @@
 #'   relative to the default. Note that NULL is equivalent to 1.0, while NA
 #'   renders the characters invisible.
 #' @param par_restore a logical value indicating whether the `par` settings
-#'   prior to calling `plot2` should be restored on exit. Defaults to FALSE,
+#'   prior to calling `tinyplot` should be restored on exit. Defaults to FALSE,
 #'   which makes it possible to add elements to the plot after it has been
 #'   drawn. However, note the the outer margins of the graphics device may have
-#'   been altered to make space for the `plot2` legend. Users can opt out of
+#'   been altered to make space for the `tinyplot` legend. Users can opt out of
 #'   this persistent behaviour by setting to TRUE instead. (Another option would
 #'   be calling `dev.off()` to reset all `par` settings to their defaults.)
 #' @param subset,na.action,drop.unused.levels arguments passed to `model.frame`
@@ -197,6 +191,13 @@
 #' @param ... other graphical parameters. See \code{\link[graphics]{par}} or
 #'   the "Details" section of \code{\link[graphics]{plot}}.
 #'   
+#' @details
+#' Disregarding the enhancements that it supports, `tinyplot` tries as far as
+#' possible to mimic the behaviour and syntax logic of the original base
+#' \code{\link[graphics]{plot}} function. Users should therefore be able to swap
+#' out existing `plot` calls for `tinyplot` (or its shorthand alias `plt`),
+#' without causing unexpected changes to the output.
+#'   
 #' @importFrom grDevices adjustcolor extendrange palette palette.colors palette.pals hcl.colors hcl.pals xy.coords
 #' @importFrom graphics abline arrows axis Axis box grconvertX grconvertY lines par plot.default plot.new plot.window points polygon segments title mtext text rect
 #' @importFrom utils modifyList head tail
@@ -208,33 +209,38 @@
 #' op = par()
 #' 
 #' 
-#' # plot2 should be a drop-in replacement for (most) regular plot calls. For
+#' aq = transform(
+#'   airquality,
+#'   Month = factor(Month, labels = month.abb[unique(Month)])
+#' )
+#' 
+#' # tinyplot should be a drop-in replacement for (most) regular plot calls. For
 #' # example:
 #' 
 #' par(mfrow = c(1, 2))
 #' plot(0:10, main = "plot")
-#' plot2(0:10, main = "plot2")
+#' tinyplot(0:10, main = "tinyplot")
 #' 
 #' # restore graphics parameters
 #' par(op)  
 #' 
-#' # Unlike vanilla plot, however, plot2 allows you to characterize groups 
-#' # (using either the `by` argument or equivalent `|` formula syntax).
+#' # Unlike vanilla plot, however, tinyplot allows you to characterize groups 
+#' # using either the `by` argument or equivalent `|` formula syntax.
 #' 
-#' aq = transform(
-#'   airquality,
-#'   Month = factor(Month, labels = month.abb[unique(Month)])
-#' )
+#' with(aq, tinyplot(Day, Temp, by = Month)) ## atomic method
+#' tinyplot(Temp ~ Day | Month, data = aq)   ## formula method
+#' 
+#' # (Notice that we also get an automatic legend.)
 #' 
-#' with(aq, plot2(Day, Temp, by = Month)) ## atomic method
-#' plot2(Temp ~ Day | Month, data = aq)   ## formula method
+#' # You can also use the equivalent shorthand `plt` alias if you'd like to save
+#' # on a few keystrokes
 #' 
-#' # Notice that we also get an automatic legend.
+#' plt(Temp ~ Day | Month, data = aq) ## shorthand alias
 #'
 #' # Use standard base plotting arguments to adjust features of your plot.
 #' # For example, change `pch` (plot character) to get filled points.
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Month,
 #'   data = aq,
 #'   pch = 16
@@ -243,17 +249,17 @@
 #' # Converting to a grouped line plot is a simple matter of adjusting the
 #' # `type` argument.
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Month,
 #'   data = aq,
 #'   type = "l"
 #' )
 #' 
 #' # Similarly for other plot types, including some additional ones provided
-#' # directly by plot2, e.g. density plots or internal plots (ribbons, 
+#' # directly by tinyplot, e.g. density plots or internal plots (ribbons, 
 #' # pointranges, etc.)
 #' 
-#' plot2(
+#' tinyplot(
 #'   ~ Temp | Month,
 #'   data = aq,
 #'   type = "density",
@@ -262,7 +268,7 @@
 #' 
 #' # Facet plots are supported too. Facets can be drawn on their own...
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day,
 #'   facet = ~ Month, 
 #'   data = aq,
@@ -273,7 +279,7 @@
 #' # ... or combined/contrasted with the by (colour) grouping.
 #' 
 #' aq = transform(aq, Summer = Month %in% c("Jun", "Jul", "Aug"))
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Summer,
 #'   facet = ~ Month, 
 #'   data = aq,
@@ -286,7 +292,7 @@
 #' # or `ncol` to the helper facet.args argument. Note that we can also reduce
 #' # axis label repetition across facets by turning the plot frame off.
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Summer,
 #'   facet = ~ Month, facet.args = list(nrow = 1),
 #'   data = aq,
@@ -301,7 +307,7 @@
 #' 
 #' aq$hot = ifelse(aq$Temp>=75, "hot", "cold")
 #' aq$windy = ifelse(aq$Wind>=15, "windy", "calm")
-#' plot2(
+#' tinyplot(
 #'  Temp ~ Day,
 #'  facet = windy ~ hot,
 #'  data = aq
@@ -309,10 +315,10 @@
 #' 
 #' # The (automatic) legend position and look can be customized using
 #' # appropriate arguments. Note the trailing "!" in the `legend` position
-#' # argument below. This tells `plot2` to place the legend _outside_ the plot
+#' # argument below. This tells `tinyplot` to place the legend _outside_ the plot
 #' # area.
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Month,
 #'   data = aq,
 #'   type = "l",
@@ -325,7 +331,7 @@
 #' # or users can supply a valid palette-generating function for finer control
 #' # over transparency etc.
 #' 
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Month,
 #'   data = aq,
 #'   type = "l",
@@ -336,7 +342,7 @@
 #' # arguments and base plotting theme settings (e.g., via `par`).
 #'
 #' par(family = "HersheySans", las = 1)
-#' plot2(
+#' tinyplot(
 #'   Temp ~ Day | Month,
 #'   data = aq,
 #'   type = "b", pch = 16,
@@ -345,18 +351,18 @@
 #'   frame = FALSE, grid = TRUE
 #' )
 #' 
-#' par(family = "") # revert global font change from above
+#' par(op) # revert original graphics parameters
 #' 
-#' @rdname plot2
+#' @rdname tinyplot
 #' @export
-plot2 =
+tinyplot =
   function(x, ...) {
-    UseMethod("plot2")
+    UseMethod("tinyplot")
   }
 
-#' @rdname plot2
+#' @rdname tinyplot
 #' @export
-plot2.default = function(
+tinyplot.default = function(
     x,
     y = NULL,
     by = NULL,
@@ -405,7 +411,7 @@ plot2.default = function(
   }
   
   # catch for adding to existing facet plot
-  if (!is.null(facet) && isTRUE(add)) par(par2("last_facet_par"))
+  if (!is.null(facet) && isTRUE(add)) par(tpar("last_facet_par"))
   
   # Capture deparsed expressions early, before x, y and by are evaluated
   x_dep = deparse1(substitute(x))
@@ -449,7 +455,7 @@ plot2.default = function(
       fargs[["legend"]] = NULL
     }
     fargs$y = fargs$ymin = fargs$ymax = fargs$ylab = fargs$xlab = NULL
-    return(do.call(plot2.density, args = fargs))
+    return(do.call(tinyplot.density, args = fargs))
   }
   
   if (is.null(y)) {
@@ -678,11 +684,11 @@ plot2.default = function(
     ooma = par("oma")
     topmar_epsilon = 0.1
     
-    # Catch to avoid recursive offsets, e.g. repeated plot2 calls with
+    # Catch to avoid recursive offsets, e.g. repeated tinyplot calls with
     # "bottom!" legend position.
     
     ## restore inner margin defaults
-    ## (in case the plot region/margins were affected by the preceding plot2 call)
+    ## (in case the plot region/margins were affected by the preceding tinyplot call)
     if (any(ooma != 0)) {
       if ( ooma[1] != 0 & omar[1] == par("mgp")[1] + 1*par("cex.lab") ) omar[1] = 5.1
       if ( ooma[2] != 0 & omar[2] == par("mgp")[1] + 1*par("cex.lab") ) omar[2] = 4.1
@@ -725,7 +731,7 @@ plot2.default = function(
       # legend beneath it: Take the normal main title line gap (i.e., 1.7 lines)
       # and add the difference between original top margin and new one (i.e.,
       # which should equal the height of the new legend). Note that we also
-      # include a 0.1 epsilon bump, which we're using to reset the plot2
+      # include a 0.1 epsilon bump, which we're using to reset the tinyplot
       # window in case of recursive "top!" calls. (See draw_legend code.)
       title(main = main, line = par("mar")[3] - opar[["mar"]][3] + 1.7 + 0.1)
       title(sub = sub)
@@ -746,11 +752,11 @@ plot2.default = function(
     
     # Grab some of the customizable facet args that we'll be using later
     facet_rect = FALSE
-    facet_text = .par2[["facet.cex"]]
-    facet_font = .par2[["facet.font"]]
-    facet_col = .par2[["facet.col"]]
-    facet_bg = .par2[["facet.bg"]]
-    facet_border = .par2[["facet.border"]]
+    facet_text = .tpar[["facet.cex"]]
+    facet_font = .tpar[["facet.font"]]
+    facet_col = .tpar[["facet.col"]]
+    facet_bg = .tpar[["facet.bg"]]
+    facet_border = .tpar[["facet.border"]]
     if (!is.null(facet.args)) {
       if (!is.null(facet.args[["cex"]])) facet_text = facet.args[["cex"]]
       if (!is.null(facet.args[["col"]])) facet_col = facet.args[["col"]]
@@ -781,7 +787,7 @@ plot2.default = function(
     if (nfacets > 1) {
       # Set facet margins (i.e., gaps between facets)
       if (is.null(facet.args[["fmar"]])) {
-        fmar = par2("fmar")
+        fmar = tpar("fmar")
       } else {
         if (length(facet.args[["fmar"]]) != 4) {
           warning(
@@ -791,7 +797,7 @@ plot2.default = function(
             "Resetting to fmar = c(1,1,1,1) default.",
             "\n"
           )
-          fmar = par2("fmar")
+          fmar = tpar("fmar")
         } else {
           fmar = facet.args[["fmar"]]
         }
@@ -825,7 +831,7 @@ plot2.default = function(
       nmar = (fmar+.1)/cex_fct_adj
       noma = (ooma+omar-fmar-.1)/cex_fct_adj
       # Catch in case of negative oma values. (Probably only occurs with some
-      # user-supplied par2(lmar) values and a "left!" positioned legend.)
+      # user-supplied tpar(lmar) values and a "left!" positioned legend.)
       if (any(noma<0)) {
         noma_orig = noma
         noma[noma<0] = 0
@@ -845,7 +851,7 @@ plot2.default = function(
     ## components (axes, titles, box, grid, etc.)
     for (ii in ifacet) {
     
-      # See: https://github.com/grantmcdermott/plot2/issues/65
+      # See: https://github.com/grantmcdermott/tinyplot/issues/65
       if (nfacets > 1) {
         mfgi = ceiling(ii/nfacet_cols)
         mfgj = ii %% nfacet_cols
@@ -1047,7 +1053,7 @@ plot2.default = function(
       yymax = idata[[ii]]$ymax
       
       # Set the facet "window" manually
-      # See: https://github.com/grantmcdermott/plot2/issues/65
+      # See: https://github.com/grantmcdermott/tinyplot/issues/65
       # if (nfacets > 1) par(mfg = c(1, ii))
       if (nfacets > 1) {
         mfgi = ceiling(ii/nfacet_cols)
@@ -1128,7 +1134,7 @@ plot2.default = function(
   
   # tidy up before exit
   if (!is.null(facet)) {
-    par2(last_facet_par = par(no.readonly = TRUE))
+    tpar(last_facet_par = par(no.readonly = TRUE))
   }
   
 }
@@ -1136,10 +1142,10 @@ plot2.default = function(
 
 
 
-#' @rdname plot2
+#' @rdname tinyplot
 #' @importFrom stats as.formula model.frame
 #' @export
-plot2.formula = function(
+tinyplot.formula = function(
     x = NULL,
     data = parent.frame(),
     facet = NULL,
@@ -1290,7 +1296,7 @@ plot2.formula = function(
     if (is.null(xlab)) xlab = names(mf)[x_loc]
   }
   
-  plot2.default(
+  tinyplot.default(
     x = x, y = y, by = by,
     facet = facet, facet.args = facet.args,
     data = data,
@@ -1319,9 +1325,9 @@ plot2.formula = function(
 
 #' @importFrom methods as
 #' @importFrom stats update
-#' @rdname plot2
+#' @rdname tinyplot
 #' @export
-plot2.density = function(
+tinyplot.density = function(
     x = NULL,
     by = NULL,
     facet = NULL,
@@ -1361,11 +1367,11 @@ plot2.density = function(
   if (inherits(x, "density")) {
     object = x
     legend.args = list(x = NULL)
-    # Grab by label to pass on legend title to plot2.default
+    # Grab by label to pass on legend title to tinyplot.default
     legend.args[["title"]] = deparse(substitute(by))
   } else {
     ## An internal catch for non-density objects that were forcibly
-    ## passed to plot2.density (e.g., via a one-side formula)
+    ## passed to tinyplot.density (e.g., via a one-side formula)
     if (anyNA(x)) {
       x = na.omit(x)
       if (!is.null(by)) by = by[-attr(x, "na.action")]
@@ -1494,7 +1500,7 @@ plot2.density = function(
     attr(facet, "facet_grid") = facet_attributes[["facet_grid"]]
   }
   
-  plot2.default(
+  tinyplot.default(
     x = x, y = y, by = by, facet = facet, facet.args = facet.args,
     type = type,
     xlim = xlim,
@@ -1521,6 +1527,10 @@ plot2.density = function(
 
 }
 
+#' @export
+#' @name plt
+#' @rdname tinyplot
+plt = tinyplot
 
 
 # utility function for converting facet formulas into variables
diff --git a/R/par2.R b/R/tpar.R
similarity index 74%
rename from R/par2.R
rename to R/tpar.R
index 54b845fc..41135a5d 100644
--- a/R/par2.R
+++ b/R/tpar.R
@@ -1,13 +1,13 @@
-#' @title Set or query plot2 parameters  
+#' @title Set or query tinyplot parameters  
 #'   
-#' @description `par2` can be used to set or query the additional set of
-#'   graphical parameters provided by `plot2` (i.e., beyond the base set
+#' @description `tpar` can be used to set or query the additional set of
+#'   graphical parameters provided by `tinyplot` (i.e., beyond the base set
 #'   provided by  \code{\link[graphics]{par}}). Similar to its base counterpart, parameters can be set
-#'   by passing the appropriate tag-value argument pairs to `par2`. Multiple
+#'   by passing the appropriate tag-value argument pairs to `tpar`. Multiple
 #'   parameters can be set or queried at the same time, as a list.
 #'   
 #' @md
-#' @param ... arguments of the form `tag = value`. Supported `plot2` parameters
+#' @param ... arguments of the form `tag = value`. Supported `tinyplot` parameters
 #'   are described in the 'Graphical Parameters' section below.
 #'
 #' @section Graphical Parameters:
@@ -31,77 +31,77 @@
 #'   `fmar` \tab\tab A numeric vector of form `c(b,l,t,r)` for controlling the (base) margin padding, in terms of lines, between the individual facets in a faceted plot. Defaults to `c(1,1,1,1)`, i.e. a single line of padding around each facet. If more that three facets are detected, the `fmar` parameter is scaled by 0.75 (i.e., three-quarters) to reduce the excess whitespace that would otherwise arise due to the absent axes lines and labels. (An exception is made for 2x2 plots to better match the `cex` expansion logic of the base graphics system under this particular layout.) Similarly, note that an extra 0.5 lines is subtracted from each side of the facet padding for plots that aren't framed, to reduce excess whitespace.\cr
 #'   \tab\tab\cr
 #'   \tab\tab\cr
-#'   `last_facet_par` \tab\tab Full list of graphical parameters used to constructed the most recent faceted `plot2` plot during the current session. Unlike other `par2` parameters, this parameter is intended for internal use (specifically, to enable adding further elements on top of an existing faceted plot) and should _not_ be set by the user.\cr
+#'   `last_facet_par` \tab\tab Full list of graphical parameters used to constructed the most recent faceted `tinyplot` plot during the current session. Unlike other `tpar` parameters, this parameter is intended for internal use (specifically, to enable adding further elements on top of an existing faceted plot) and should _not_ be set by the user.\cr
 #'   \tab\tab\cr
 #'   \tab\tab\cr
-#'   `lmar` \tab\tab A numeric vector of form `c(inner, outer)` that gives the margin padding, in terms of lines, around the automatic `plot2` legend. Defaults to `c(1.0, 0.1)`, where the first number represents the "inner" margin between the legend and the plot region, and the second number represents the "outer" margin between the legend and edge of the graphics device. (Note that an exception for the definition of the "outer" legend margin occurs when the legend placement is `"top!"`, since the legend is placed above the plot region but below the main title. In such cases, the outer margin is relative to the existing gap between the title and the plot region, which is itself determined by `par("mar")[3]`.)\cr
+#'   `lmar` \tab\tab A numeric vector of form `c(inner, outer)` that gives the margin padding, in terms of lines, around the automatic `tinyplot` legend. Defaults to `c(1.0, 0.1)`, where the first number represents the "inner" margin between the legend and the plot region, and the second number represents the "outer" margin between the legend and edge of the graphics device. (Note that an exception for the definition of the "outer" legend margin occurs when the legend placement is `"top!"`, since the legend is placed above the plot region but below the main title. In such cases, the outer margin is relative to the existing gap between the title and the plot region, which is itself determined by `par("mar")[3]`.)\cr
 #' }
 #' 
 #' @export
-par2 = function(...) {
+tpar = function(...) {
   
   facet.col = facet.bg = facet.border = NULL
   
   opts = list(...)
-  par2_old = as.list(.par2)
+  tpar_old = as.list(.tpar)
   nam = names(opts)
   
   if (length(opts$facet.cex)) {
     facet.cex = as.numeric(opts$facet.cex)
     if(!is.numeric(facet.cex)) stop("facet.cex needs to be numeric")
     if(length(facet.cex)!=1) stop("facet.cex needs to be of length 1")
-    .par2$facet.cex = facet.cex
+    .tpar$facet.cex = facet.cex
   }
   
   if (length(opts$facet.font)) {
     facet.font = as.numeric(opts$facet.font)
     if(!is.numeric(facet.font)) stop("facet.font needs to be numeric")
     if(length(facet.font)!=1) stop("facet.font needs to be of length 1")
-    .par2$facet.font = facet.font
+    .tpar$facet.font = facet.font
   }
   
   if (length(opts$facet.col)) {
     if(!is.numeric(facet.col) || !is.character(facet.col)) stop("facet.col needs to be a numeric or character")
     if(length(facet.col)!=1) stop("facet.col needs to be of length 1")
-    .par2$facet.col = facet.col
+    .tpar$facet.col = facet.col
   }
   
   if (length(opts$facet.bg)) {
     if(!is.numeric(facet.bg) || !is.character(facet.bg)) stop("facet.bg needs to be a numeric or character")
     if(length(facet.bg)!=1) stop("facet.bg needs to be of length 1")
-    .par2$facet.bg = facet.bg
+    .tpar$facet.bg = facet.bg
   }
   
   if (length(opts$facet.border)) {
     if(!is.numeric(facet.border) || !is.character(facet.border)) stop("facet.border needs to be a numeric or character")
     if(length(facet.border)!=1) stop("facet.border needs to be of length 1")
-    .par2$facet.border = facet.border
+    .tpar$facet.border = facet.border
   }
   
   if (length(opts$fmar)) {
     fmar = as.numeric(opts$fmar)
     if(!is.numeric(fmar)) stop("fmar needs to be numeric")
     if(length(fmar)!=4) stop("fmar needs to be of length 4, i.e. c(b,l,t,r)")
-    .par2$fmar = fmar
+    .tpar$fmar = fmar
   }
   
   # if (length(opts$grid)) {
   #   grid = as.logical(opts$grid)
   #   if(!is.logical(grid)) stop("grid needs to be logical")
-  #   .par2$grid = grid
+  #   .tpar$grid = grid
   # }
   
   if (length(opts$last_facet_par)) {
     last_facet_par = opts$last_facet_par
     if(!(is.null(last_facet_par) || is.list(last_facet_par))) stop("last_facet_par needs to be NULL or a list")
-    .par2$last_facet_par = last_facet_par
+    .tpar$last_facet_par = last_facet_par
   }
   
   if (length(opts$lmar)) {
     lmar = as.numeric(opts$lmar)
     if(!is.numeric(lmar)) stop("lmar needs to be numeric")
     if(length(lmar)!=2) stop("lmar needs to be of length 2, i.e. c(inner, outer)")
-    .par2$lmar = lmar
+    .tpar$lmar = lmar
   }
   
   ## Like par(), we want the return object to be dependent on inputs...
@@ -111,18 +111,18 @@ par2 = function(...) {
   if (is.null(nam)) {
     if (!is.null(opts) && length(opts)!=0) {
       # specific values requested
-      ret = (`names<-`(lapply(opts, function(x) .par2[[x]]), opts))
+      ret = (`names<-`(lapply(opts, function(x) .tpar[[x]]), opts))
       if (length(ret)==1) ret = ret[[1]]
       return(ret)
     } else {
       # no specific request; return all existing values invisibly
-      return(invisible(par2_old))
+      return(invisible(tpar_old))
     }
   # assign new values, but still return old values for saving existing settings
   # a la opar = par(param = new_value)
   } else {
-    `names<-`(lapply(nam, function(x) .par2[[x]]), nam)
-    return(invisible(par2_old))
+    `names<-`(lapply(nam, function(x) .tpar[[x]]), nam)
+    return(invisible(tpar_old))
   }
   
 }
diff --git a/R/zzz.R b/R/zzz.R
index 539b850c..750bacf6 100644
--- a/R/zzz.R
+++ b/R/zzz.R
@@ -2,27 +2,27 @@
   
   # https://stackoverflow.com/questions/12598242/global-variables-in-packages-in-r
   # https://stackoverflow.com/questions/49056642/r-how-to-make-variable-available-to-namespace-at-loading-time?noredirect=1&lq=1
-  plt2ptns <- parent.env(environment())
-  assign(".plot2_env", new.env(), envir = plt2ptns)
-  .par2 <- new.env()
+  tnypltptns <- parent.env(environment())
+  assign(".tinyplot_env", new.env(), envir = tnypltptns)
+  .tpar <- new.env()
   
   # Facet margin, i.e. gap between the individual facet windows
-  .par2$fmar <- if(is.null(getOption("plot2_fmar"))) c(1,1,1,1) else as.numeric(getOption("plot2_fmar"))
+  .tpar$fmar <- if(is.null(getOption("tinyplot_fmar"))) c(1,1,1,1) else as.numeric(getOption("tinyplot_fmar"))
   
   # Other facet options
-  .par2$facet.cex <- if(is.null(getOption("plot2_facet.cex"))) 1 else as.numeric(getOption("plot2_facet.cex"))
-  .par2$facet.font <- if(is.null(getOption("plot2_facet.font"))) NULL else as.numeric(getOption("plot2_facet.font"))
-  .par2$facet.col <- if(is.null(getOption("plot2_facet.col"))) NULL else getOption("plot2_facet.col")
-  .par2$facet.bg <- if(is.null(getOption("plot2_facet.bg"))) NULL else getOption("plot2_facet.bg")
-  .par2$facet.border <- if(is.null(getOption("plot2_facet.border"))) NA else getOption("plot2_facet.border")
+  .tpar$facet.cex <- if(is.null(getOption("tinyplot_facet.cex"))) 1 else as.numeric(getOption("tinyplot_facet.cex"))
+  .tpar$facet.font <- if(is.null(getOption("tinyplot_facet.font"))) NULL else as.numeric(getOption("tinyplot_facet.font"))
+  .tpar$facet.col <- if(is.null(getOption("tinyplot_facet.col"))) NULL else getOption("tinyplot_facet.col")
+  .tpar$facet.bg <- if(is.null(getOption("tinyplot_facet.bg"))) NULL else getOption("tinyplot_facet.bg")
+  .tpar$facet.border <- if(is.null(getOption("tinyplot_facet.border"))) NA else getOption("tinyplot_facet.border")
   
-  # .par2$grid <- if(is.null(getOption("plot2_grid"))) FALSE else as.logical(getOption("plot2_grid"))
+  # .tpar$grid <- if(is.null(getOption("tinyplot_grid"))) FALSE else as.logical(getOption("tinyplot_grid"))
   
-  .par2$last_facet_par <- if(is.null(getOption("plot2_last_facet_par"))) NULL else getOption("plot2_last_facet_par")
+  .tpar$last_facet_par <- if(is.null(getOption("tinyplot_last_facet_par"))) NULL else getOption("tinyplot_last_facet_par")
   
   # Legend margin, i.e. gap between the legend and the plot elements
-  .par2$lmar <- if(is.null(getOption("plot2_lmar"))) c(1.0, 0.1) else as.numeric(getOption("plot2_lmar"))
+  .tpar$lmar <- if(is.null(getOption("tinyplot_lmar"))) c(1.0, 0.1) else as.numeric(getOption("tinyplot_lmar"))
   
-  assign(".par2", .par2, envir = plt2ptns)
+  assign(".tpar", .tpar, envir = tnypltptns)
   
 }
\ No newline at end of file
diff --git a/README.qmd b/README.qmd
index 4b88587f..dbb96fb2 100644
--- a/README.qmd
+++ b/README.qmd
@@ -11,29 +11,29 @@ knitr::opts_chunk$set(
 )
 ```
 
-# plot2
+# tinyplot
 
 <!-- badges: start -->
-[![CRAN version](https://www.r-pkg.org/badges/version/plot2)](https://CRAN.R-project.org/package=plot2)
-[![R-universe status badge](https://grantmcdermott.r-universe.dev/badges/plot2)](https://grantmcdermott.r-universe.dev)
-[![R-CMD-check](https://github.com/grantmcdermott/plot2/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/grantmcdermott/plot2/actions/workflows/R-CMD-check.yaml)
-[![Docs](https://img.shields.io/badge/docs-homepage-blue.svg)](https://grantmcdermott.com/plot2/index.html)
+[![CRAN version](https://www.r-pkg.org/badges/version/tinyplot)](https://CRAN.R-project.org/package=tinyplot)
+[![R-universe status badge](https://grantmcdermott.r-universe.dev/badges/tinyplot)](https://grantmcdermott.r-universe.dev)
+[![R-CMD-check](https://github.com/grantmcdermott/tinyplot/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/grantmcdermott/tinyplot/actions/workflows/R-CMD-check.yaml)
+[![Docs](https://img.shields.io/badge/docs-homepage-blue.svg)](https://grantmcdermott.com/tinyplot/index.html)
 <!-- badges: end -->
 
 ## What
 
 A lightweight extension of the base R graphics system, with support for
-automatic grouping, legends, facets and various other enhancements.
+automatic grouping, legends, facets, and various other enhancements.
 
-**plot2** is not yet on CRAN, but can be installed from R-universe.
+**tinyplot** is not yet on CRAN, but can be installed from R-universe.
 
 ``` r
-install.packages("plot2", repos = "https://grantmcdermott.r-universe.dev")
+install.packages("tinyplot", repos = "https://grantmcdermott.r-universe.dev")
 ```
 
 Our goal is to submit to CRAN within the first few months of 2024, once we have
 settled on some remaining design choices and features support. You can take a 
-look at the [open issues](https://github.com/grantmcdermott/plot2/issues) to see
+look at the [open issues](https://github.com/grantmcdermott/tinyplot/issues) to see
 what's currently under consideration. Please feel free to weigh on these if you
 have opinions. We want end users to have a say in determining the final product.
 
@@ -42,7 +42,7 @@ have opinions. We want end users to have a say in determining the final product.
 R users are spoiled for choice when it comes to visualization frameworks. The
 options include **ggplot2** (arguably the most important graphics
 system of the last decade) and **lattice**, not to mention a bewildering array
-of extensions built around, on top of, and in between these amazing packages.
+of extensions built on top of, around, and in between these amazing packages.
 
 As a result, it is perhaps not surprising that the base R graphics system
 sometimes gets short shrift. This is unfortunate, because base R offers very
@@ -56,40 +56,41 @@ plotting grouped data with an appropriate legend. Doing so with the generic
 `plot()` function can require several function calls or a loop, fiddling with
 your plot regions, and then generating the legend manually.
 
-The **plot2** package aims to remove this overhead. It provides a lightweight
+The **tinyplot** package aims to remove this overhead. It provides a lightweight
 (zero dependency) extension of the base R graphics system with various
-convenience features, particularly for representing groups with your data. For
-example, the core `plot2()` function makes it easy to plot different categories
-of a dataset in a single function call and highlight these categories (groups)
-using modern colour palettes. Coincident with this grouping support, `plot2()`
-also produces automatic legends with scope for further customization. While the
-package offers several other enhancements like facets, it tries as far as
-possible to be a drop-in replacement for the equivalent base plot function.
-Users should generally be able to swap a valid `plot()` call with `plot2()`
-without any changes to the expected output.
+convenience features, particularly for representing grouped data. For example,
+the core `tinyplot()` function&mdash;or its shorthand `plt()` alias&mdash;makes
+it easy to plot different groups of a dataset in a single function call and
+highlight these groups using modern colour palettes. Coincident with this
+grouping support, **tinyplot** also produces automatic legends with scope for
+further customization. While the package offers several other enhancements like
+facets, it tries as far as possible to be a drop-in replacement for the
+equivalent base plotting function. Users should generally be able to swap a
+valid `plot()` call for `tinyplot()` without any changes to the expected
+output.
 
 ## Quickstart
 
-The **plot2** website includes a detailed
-[introductory tutorial](https://grantmcdermott.com/plot2/vignettes/intro_tutorial.html),
+The **tinyplot** website includes a detailed
+[introductory tutorial](https://grantmcdermott.com/tinyplot/vignettes/intro_tutorial.html),
 with numerous examples. But here are some quickstart examples of the package in
 action.
 
 ```{r quickstart1}
-library(plot2)
+library(tinyplot)
 ```
 
 Grouped scatterplot with automatic legend:
 
 ```{r quickstart2}
-# with(iris, plot2(x = Petal.Length, y = Sepal.Length, by = Species)) # atomic
-plot2(Sepal.Length ~ Petal.Length | Species, data = iris)             # formula
+# with(iris, tinyplot(x = Petal.Length, y = Sepal.Length, by = Species)) # atomic
+tinyplot(Sepal.Length ~ Petal.Length | Species, data = iris)             # formula
 ```
 
 Same plot with a few extra aesthetic tweaks:
 
 ```{r quickstart3}
-plot2(
+tinyplot(
   Sepal.Length ~ Petal.Length | Species, 
   data = iris,
   palette = "dark", pch  = 16,
@@ -100,7 +101,7 @@ plot2(
 Grouped grouped density plot with automatic legend:
 
 ```{r quickstart4}
-plot2(
+tinyplot(
   ~ Petal.Length | Species,
   data = iris,
   type = "density",
@@ -114,7 +115,7 @@ Grouped scatterplot, combined with facet layout:
 
 ```{r quickstart5}
 iris2 = transform(iris, Sepals = ifelse(Sepal.Length>6, "Long", "Short"))
-plot2(
+tinyplot(
   Sepal.Length ~ Petal.Length | Sepals, data = iris2,
   facet = ~Species,
   facet.args = list(bg = "grey90"),
@@ -125,5 +126,5 @@ plot2(
 ```
 
 Hopefully, these have been enough to pique your interest. Head over to the
-[intro tutorial](https://grantmcdermott.com/plot2/vignettes/intro_tutorial.html)
+[intro tutorial](https://grantmcdermott.com/tinyplot/vignettes/intro_tutorial.html)
 for many more examples, including range plots and customization.
\ No newline at end of file
diff --git a/inst/tinytest/_tinysnapshot/readme_base_1.svg b/inst/tinytest/_tinysnapshot/readme_base_1.svg
index da30efca..9c75aa23 100644
--- a/inst/tinytest/_tinysnapshot/readme_base_1.svg
+++ b/inst/tinytest/_tinysnapshot/readme_base_1.svg
@@ -90,7 +90,7 @@
   </clipPath>
 </defs>
 <g clip-path='url(#cpMjUyLjAwfDUwNC4wMHwwLjAwfDUwNC4wMA==)'>
-<text x='392.40' y='34.47' text-anchor='middle' style='font-size: 14.40px; font-weight: bold; font-family: "Liberation Sans";' textLength='34.38px' lengthAdjust='spacingAndGlyphs'>plot2</text>
+<text x='392.40' y='34.47' text-anchor='middle' style='font-size: 14.40px; font-weight: bold; font-family: "Liberation Sans";' textLength='51.96px' lengthAdjust='spacingAndGlyphs'>tinyplot</text>
 <text x='392.40' y='485.28' text-anchor='middle' style='font-size: 12.00px; font-family: "Liberation Sans";' textLength='29.36px' lengthAdjust='spacingAndGlyphs'>Index</text>
 <text transform='translate(264.96,244.80) rotate(-90)' text-anchor='middle' style='font-size: 12.00px; font-family: "Liberation Sans";' textLength='23.36px' lengthAdjust='spacingAndGlyphs'>0:10</text>
 </g>
diff --git a/inst/tinytest/_tinysnapshot/readme_base_2.svg b/inst/tinytest/_tinysnapshot/readme_base_2.svg
index 0fdc9061..d0855ea2 100644
--- a/inst/tinytest/_tinysnapshot/readme_base_2.svg
+++ b/inst/tinytest/_tinysnapshot/readme_base_2.svg
@@ -429,7 +429,7 @@
   </clipPath>
 </defs>
 <g clip-path='url(#cpMC4wMHwyNTIuMDB8MjUyLjAwfDUwNC4wMA==)'>
-<text x='137.95' y='280.61' text-anchor='middle' style='font-size: 11.95px; font-weight: bold; font-family: "Liberation Sans";' textLength='28.52px' lengthAdjust='spacingAndGlyphs'>plot2</text>
+<text x='137.95' y='280.61' text-anchor='middle' style='font-size: 11.95px; font-weight: bold; font-family: "Liberation Sans";' textLength='43.11px' lengthAdjust='spacingAndGlyphs'>tinyplot</text>
 <text x='137.95' y='488.46' text-anchor='middle' style='font-size: 9.96px; font-family: "Liberation Sans";' textLength='63.06px' lengthAdjust='spacingAndGlyphs'>airquality$Day</text>
 <text transform='translate(10.76,372.02) rotate(-90)' text-anchor='middle' style='font-size: 9.96px; font-family: "Liberation Sans";' textLength='69.70px' lengthAdjust='spacingAndGlyphs'>airquality$Temp</text>
 </g>
@@ -628,7 +628,7 @@
   </clipPath>
 </defs>
 <g clip-path='url(#cpMjUyLjAwfDUwNC4wMHwyNTIuMDB8NTA0LjAw)'>
-<text x='389.95' y='280.61' text-anchor='middle' style='font-size: 11.95px; font-weight: bold; font-family: "Liberation Sans";' textLength='83.56px' lengthAdjust='spacingAndGlyphs'>plot2 (formula)</text>
+<text x='389.95' y='280.61' text-anchor='middle' style='font-size: 11.95px; font-weight: bold; font-family: "Liberation Sans";' textLength='98.15px' lengthAdjust='spacingAndGlyphs'>tinyplot (formula)</text>
 <text x='389.95' y='488.46' text-anchor='middle' style='font-size: 9.96px; font-family: "Liberation Sans";' textLength='17.70px' lengthAdjust='spacingAndGlyphs'>Day</text>
 <text transform='translate(262.76,372.02) rotate(-90)' text-anchor='middle' style='font-size: 9.96px; font-family: "Liberation Sans";' textLength='24.34px' lengthAdjust='spacingAndGlyphs'>Temp</text>
 </g>
diff --git a/inst/tinytest/test-README.R b/inst/tinytest/test-README.R
index 9cc404b0..910b38d9 100644
--- a/inst/tinytest/test-README.R
+++ b/inst/tinytest/test-README.R
@@ -7,7 +7,7 @@ f = function() {
   par(mfrow = c(1, 2))
   
   plot(0:10, main = "plot")
-  plot2(0:10, main = "plot2")
+  tinyplot(0:10, main = "tinyplot")
 }
 expect_snapshot_plot(f, label = "readme_base_1")
 
@@ -16,8 +16,8 @@ f = function() {
   
   plot(airquality$Day, airquality$Temp, main = "plot")
   plot(Temp ~ Day, data = airquality, main = "plot (formula)")
-  plot2(airquality$Day, airquality$Temp, main = "plot2")
-  plot2(Temp ~ Day, data = airquality, main = "plot2 (formula)")
+  tinyplot(airquality$Day, airquality$Temp, main = "tinyplot")
+  tinyplot(Temp ~ Day, data = airquality, main = "tinyplot (formula)")
   
 }
 expect_snapshot_plot(f, label = "readme_base_2")
@@ -32,14 +32,14 @@ par(op)
 # continue with tests
 #
 
-f = function() plot2(airquality$Day, airquality$Temp, by = airquality$Month)
+f = function() tinyplot(airquality$Day, airquality$Temp, by = airquality$Month)
 expect_snapshot_plot(f, label = "readme_by")
 
-f = function() plot2(Temp ~ Day | Month, data = airquality)
+f = function() tinyplot(Temp ~ Day | Month, data = airquality)
 expect_snapshot_plot(f, label = "readme_formula")
 
 f = function() {
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     pch = 16
@@ -48,7 +48,7 @@ f = function() {
 expect_snapshot_plot(f, label = "readme_pch_16")
 
 f = function() {
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     type = "l"
@@ -57,7 +57,7 @@ f = function() {
 expect_snapshot_plot(f, label = "readme_type_l")
 
 f = function() {
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     type = "l",
@@ -68,7 +68,7 @@ f = function() {
 expect_snapshot_plot(f, label = "readme_by_lty")
 
 f = function() {
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     type = "l",
@@ -81,14 +81,14 @@ if ((getRversion() <= "4.3.1")) {
   f = function() {
     with(
       airquality,
-      plot2(density(Temp), by = Month, legend = legend("topright", bty="o"))
+      tinyplot(density(Temp), by = Month, legend = legend("topright", bty="o"))
     )
   }
   expect_snapshot_plot(f, label = "readme_density_topright")
 }
 
 f = function() {
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     type = "l",
@@ -103,7 +103,7 @@ f = function() {
   coefs = setNames(coefs, c("term", "estimate", "ci_low", "ci_high"))
   with(
     coefs,
-    plot2(
+    tinyplot(
       x = term, y = estimate,
       ymin = ci_low, ymax = ci_high,
       type = "pointrange",
@@ -120,7 +120,7 @@ if (getRversion()  <= "4.3.2") {
   f = function() {
     par(pch = 16, family = "HersheySans")
     
-    plot2(
+    tinyplot(
       Temp ~ Day | Month,
       data = airquality,
       type = "b",
@@ -149,7 +149,7 @@ basetheme("royal") # or "clean", "dark", "ink", "brutal", etc.
 
 f = function() {
   
-  plot2(
+  tinyplot(
     Temp ~ Day | Month,
     data = airquality,
     type = "b", pch = 15:19,
diff --git a/inst/tinytest/test-aesthetics.R b/inst/tinytest/test-aesthetics.R
index 52c94b17..1a5b25c4 100755
--- a/inst/tinytest/test-aesthetics.R
+++ b/inst/tinytest/test-aesthetics.R
@@ -9,45 +9,45 @@ op = par(no.readonly = TRUE)
 #
 
 # type="b" + aesthetics
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "b")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "b")
 expect_snapshot_plot(f, label = "aesthetics_type_b")
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "b", lty = 1:5)
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "b", lty = 1:5)
 expect_snapshot_plot(f, label = "aesthetics_type_b_lty")
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "b", col = "black", pch = 1:5)
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "b", col = "black", pch = 1:5)
 expect_snapshot_plot(f, label = "aesthetics_type_b_col_pch")
 
 # check that non-point types don't generate points accidentally
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "l")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "l")
 expect_snapshot_plot(f, label = "aesthetics_type_l")
 
 #
 # Next, convenience versions using the "by" keyword
 # 
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
 expect_snapshot_plot(f, label = "aesthetics_by")
 
 # check non-point types don't generate points in legend accidentally
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "l", pch = "by", lty = "by")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "l", pch = "by", lty = "by")
 expect_snapshot_plot(f, label = "aesthetics_by_type_l")
 
 # no color version
-f = function() plot2(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by", col = "black")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by", col = "black")
 expect_snapshot_plot(f, label = "aesthetics_by_nocol")
 
 # inherit global par
 f = function() {
   par(pch = 16)
-  plot2(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
+  tinyplot(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
 }
 expect_snapshot_plot(f, label = "aesthetics_by_par")
 
 # as above but check recycling
 f = function() {
   par(pch = 25, lty = 6)
-  plot2(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
+  tinyplot(Temp ~ Day | Month, data = airquality, type = "b", pch = "by", lty = "by")
 }
 expect_snapshot_plot(f, label = "aesthetics_by_recycle")
 
diff --git a/inst/tinytest/test-datetime.R b/inst/tinytest/test-datetime.R
index c50d7cdb..90aa5648 100644
--- a/inst/tinytest/test-datetime.R
+++ b/inst/tinytest/test-datetime.R
@@ -6,8 +6,8 @@ x_dtt = strptime(20010101:20010110, format="%Y%m%d", tz = "UTC")
 x_dt = as.Date(x_dtt, tz = "UTC")
 y = 1:10
 
-f = function() plot2(x_dtt, y, grid = TRUE)
+f = function() tinyplot(x_dtt, y, grid = TRUE)
 expect_snapshot_plot(f, label = "date_time")
 
-f = function() plot2(x_dt, y, grid = TRUE)
+f = function() tinyplot(x_dt, y, grid = TRUE)
 expect_snapshot_plot(f, label = "date")
\ No newline at end of file
diff --git a/inst/tinytest/test-density.R b/inst/tinytest/test-density.R
index 1511872e..eb79b0fa 100644
--- a/inst/tinytest/test-density.R
+++ b/inst/tinytest/test-density.R
@@ -7,48 +7,48 @@ if (Sys.info()["sysname"] != "Linux") exit_file("Linux snapshots")
 exit_if_not(getRversion()  <= "4.3.2")
 ## Note: Once 4.4.0 is released we can either generate some new plots or
 ## test with something like:
-# f = function() plot2(density(mtcars$mpg, old.coords=TRUE))
+# f = function() tinyplot(density(mtcars$mpg, old.coords=TRUE))
 
-f = function() with(mtcars, plot2(density(mpg)))
+f = function() with(mtcars, tinyplot(density(mpg)))
 expect_snapshot_plot(f, label = "density_nogroups")
 
-f = function() with(mtcars, plot2(density(mpg), by = am))
+f = function() with(mtcars, tinyplot(density(mpg), by = am))
 expect_snapshot_plot(f, label = "density_numeric")
 
-f = function() with(iris, plot2(density(Sepal.Width), by = Species))
+f = function() with(iris, tinyplot(density(Sepal.Width), by = Species))
 expect_snapshot_plot(f, label = "density_factor")
 
-f = function() with(iris, plot2(density(Sepal.Width), by = Species, bg = "by"))
+f = function() with(iris, tinyplot(density(Sepal.Width), by = Species, bg = "by"))
 expect_snapshot_plot(f, label = "density_fill")
 
-f = function() with(iris, plot2(density(Sepal.Width), by = Species, fill = "by"))
+f = function() with(iris, tinyplot(density(Sepal.Width), by = Species, fill = "by"))
 expect_snapshot_plot(f, label = "density_fill")
 
-f = function() with(iris, plot2(density(Sepal.Width), by = Species, type = "area"))
+f = function() with(iris, tinyplot(density(Sepal.Width), by = Species, type = "area"))
 expect_snapshot_plot(f, label = "density_fill")
 
 ## Now test `type = "density"` versions (both atomic and formula)
 ## Should be the same as above, modulo missing titles
 
-f1 = function() with(mtcars, plot2(mpg, type = "density"))
-f2 = function() plot2(~ mpg, mtcars, type = "density")
+f1 = function() with(mtcars, tinyplot(mpg, type = "density"))
+f2 = function() tinyplot(~ mpg, mtcars, type = "density")
 expect_snapshot_plot(f1, label = "density_type_nogroups")
 expect_snapshot_plot(f2, label = "density_type_nogroups")
 
-f1 = function() with(mtcars, plot2(mpg, by = am, type = "density"))
-f2 = function() plot2(~ mpg | am, mtcars, type = "density")
+f1 = function() with(mtcars, tinyplot(mpg, by = am, type = "density"))
+f2 = function() tinyplot(~ mpg | am, mtcars, type = "density")
 expect_snapshot_plot(f1, label = "density_type_numeric")
 expect_snapshot_plot(f2, label = "density_type_numeric")
 
-f1 = function() with(iris, plot2(Sepal.Width, by = Species, type = "density"))
-f2 = function() plot2(~ Sepal.Width | Species, iris, type = "density")
+f1 = function() with(iris, tinyplot(Sepal.Width, by = Species, type = "density"))
+f2 = function() tinyplot(~ Sepal.Width | Species, iris, type = "density")
 expect_snapshot_plot(f1, label = "density_type_factor")
 expect_snapshot_plot(f2, label = "density_type_factor")
 
-f1a = function() with(iris, plot2(Sepal.Width, by = Species, type = "density", bg = "by"))
-f1b = function() with(iris, plot2(Sepal.Width, by = Species, type = "density", fill = "by"))
-f2a = function() plot2(~ Sepal.Width | Species, iris, type = "density", bg = "by")
-f2b = function() plot2(~ Sepal.Width | Species, iris, type = "density", fill = "by")
+f1a = function() with(iris, tinyplot(Sepal.Width, by = Species, type = "density", bg = "by"))
+f1b = function() with(iris, tinyplot(Sepal.Width, by = Species, type = "density", fill = "by"))
+f2a = function() tinyplot(~ Sepal.Width | Species, iris, type = "density", bg = "by")
+f2b = function() tinyplot(~ Sepal.Width | Species, iris, type = "density", fill = "by")
 expect_snapshot_plot(f1a, label = "density_type_fill")
 expect_snapshot_plot(f1b, label = "density_type_fill")
 expect_snapshot_plot(f2a, label = "density_type_fill")
diff --git a/inst/tinytest/test-facet.R b/inst/tinytest/test-facet.R
index 571dada0..b90489cb 100644
--- a/inst/tinytest/test-facet.R
+++ b/inst/tinytest/test-facet.R
@@ -9,7 +9,7 @@ op = par(no.readonly = TRUE)
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = cyl
     )
@@ -20,7 +20,7 @@ expect_snapshot_plot(f, label = "facet")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = am
     )
@@ -31,7 +31,7 @@ expect_snapshot_plot(f, label = "facet_1x2")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = am,
       facet.args = list(ncol = 1)
@@ -43,7 +43,7 @@ expect_snapshot_plot(f, label = "facet_2x1")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(am, vs)
     )
@@ -54,7 +54,7 @@ expect_snapshot_plot(f, label = "facet_2x2")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(cyl, am),
       main = "Facet with interaction"
@@ -66,7 +66,7 @@ expect_snapshot_plot(f, label = "facet_interaction")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(cyl, am, sep = "\n"),
       main = "Facet with interaction"
@@ -78,7 +78,7 @@ expect_snapshot_plot(f, label = "facet_interaction_newline")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(cyl, am),
       facet.args = list(ncol = 2),
@@ -91,7 +91,7 @@ expect_snapshot_plot(f, label = "facet_args_ncol")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       by = cyl, facet = "by"
     )
@@ -102,7 +102,7 @@ expect_snapshot_plot(f, label = "facet_by_equal")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       by = am, facet = cyl
     )
@@ -116,7 +116,7 @@ if (getRversion()  <= "4.3.2") {
   f = function() {
     with(
       mtcars,
-      plot2(
+      tinyplot(
         x = wt, y = mpg,
         by = am,
         facet = cyl, facet.args = list(bg = "grey90"),
@@ -137,23 +137,23 @@ if (getRversion()  <= "4.3.2") {
 ## facet margins (fmar)
 
 f = function() {
-  ofmar = par2("fmar")
-  par2(fmar = c(1,1,0.5,2))
+  ofmar = tpar("fmar")
+  tpar(fmar = c(1,1,0.5,2))
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(cyl, am)
     )
   )
-  par2(fmar = ofmar)
+  tpar(fmar = ofmar)
 }
 expect_snapshot_plot(f, label = "facet_fmar_par2")
 
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = interaction(cyl, am),
       facet.args = list(fmar = c(1,1,0.5,2))
@@ -173,7 +173,7 @@ mtcars2 = cbind(mtcars, predict(mod2, newdata = mtcars, interval = "confidence")
 f = function() {
   with(
     mtcars1,
-    plot2(
+    tinyplot(
       x = wt, y = fit,
       ymin = lwr, ymax = upr,
       type = "ribbon",
@@ -187,14 +187,14 @@ f = function() {
   
   with(
     mtcars1,
-    plot2(
+    tinyplot(
       x = wt, y = mpg,
       facet = cyl
     )
   )
   with(
     mtcars1,
-    plot2(
+    tinyplot(
       x = wt, y = fit,
       ymin = lwr, ymax = upr,
       type = "ribbon",
@@ -209,7 +209,7 @@ expect_snapshot_plot(f, label = "facet_ribbon_add")
 f = function() {
   with(
     mtcars1,
-    plot2(
+    tinyplot(
       x = wt, y = fit,
       ymin = lwr, ymax = upr,
       type = "ribbon",
@@ -222,7 +222,7 @@ expect_snapshot_plot(f, label = "facet_ribbon_by_equal")
 f = function() {
   with(
     mtcars2,
-    plot2(
+    tinyplot(
       x = wt, y = fit,
       ymin = lwr, ymax = upr,
       type = "ribbon",
@@ -239,7 +239,7 @@ if (getRversion()  <= "4.3.2") {
   f = function() {
     with(
       mtcars2,
-      plot2(
+      tinyplot(
         x = wt, y = mpg,
         by = am, facet = cyl,
         palette = "dark2",
@@ -252,7 +252,7 @@ if (getRversion()  <= "4.3.2") {
     )
     with(
       mtcars2,
-      plot2(
+      tinyplot(
         x = wt, y = fit,
         ymin = lwr, ymax = upr,
         type = "ribbon",
@@ -277,12 +277,12 @@ par(op)
 exit_if_not(getRversion()  <= "4.3.2")
 ## Note: Once 4.4.0 is released we can either generate some new plots or
 ## test with something like:
-# f = function() plot2(density(mtcars$mpg, old.coords=TRUE))
+# f = function() tinyplot(density(mtcars$mpg, old.coords=TRUE))
 
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = mpg,
       type = "density",
       facet = cyl
@@ -294,7 +294,7 @@ expect_snapshot_plot(f, label = "facet_density")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = mpg,
       type = "density",
       by = cyl, facet = "by"
@@ -306,7 +306,7 @@ expect_snapshot_plot(f, label = "facet_density_by_equal")
 f = function() {
   with(
     mtcars,
-    plot2(
+    tinyplot(
       x = mpg,
       type = "density",
       by = am, facet = cyl
@@ -321,7 +321,7 @@ if (getRversion()  <= "4.3.2") {
   f = function() {
     with(
       mtcars,
-      plot2(
+      tinyplot(
         x = mpg,
         type = "density",
         by = am,
@@ -342,7 +342,7 @@ if (getRversion()  <= "4.3.2") {
 ## facet (one-sided) formula versions
 
 f = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt, data = mtcars,
     facet = ~cyl
   )
@@ -350,7 +350,7 @@ f = function() {
 expect_snapshot_plot(f, label = "facet_formula")
 
 f = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt, data = mtcars,
     facet = ~am
   )
@@ -358,7 +358,7 @@ f = function() {
 expect_snapshot_plot(f, label = "facet_1x2_formula")
 
 f = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt, data = mtcars,
     facet = ~am,
     facet.args = list(ncol = 1)
@@ -367,7 +367,7 @@ f = function() {
 expect_snapshot_plot(f, label = "facet_2x1_formula")
 
 f = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt, data = mtcars,
     facet = ~am:vs
   )
@@ -378,7 +378,7 @@ expect_snapshot_plot(f, label = "facet_2x2_formula")
 ## in R 4.4.0. Can revert once it reaches release for local testing.
 if (getRversion()  <= "4.3.2") {
   f = function() {
-    plot2(
+    tinyplot(
       ~ mpg | am, mtcars,
       type = "density",
       facet = ~cyl,
@@ -397,7 +397,7 @@ if (getRversion()  <= "4.3.2") {
 ## facet grid (two-sided formula)
 
 f = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt, data = mtcars,
     facet = am ~ cyl,
     main = "facet grid",
@@ -411,7 +411,7 @@ expect_snapshot_plot(f, label = "facet_grid")
 ## in R 4.4.0. Can revert once it reaches release for local testing.
 if (getRversion()  <= "4.3.2") {
   f = function() {
-    plot2(
+    tinyplot(
       mpg ~ wt | factor(gear), data = mtcars,
       facet = am ~ cyl,
       facet.args = list(bg = "grey90"),
@@ -431,7 +431,7 @@ aq$hot = ifelse(aq$Temp>=75, "hot", "cold")
 aq$windy = ifelse(aq$Wind>=15, "windy", "calm")
 
 f = function() {
-  plot2(
+  tinyplot(
     ~ Ozone, aq, 
     type = "density",
     facet = ~hot:windy, 
@@ -441,7 +441,7 @@ f = function() {
 expect_snapshot_plot(f, label = "facet_density_formula")
 
 f = function() {
-  plot2(
+  tinyplot(
     ~ Ozone, aq, 
     type = "density",
     facet = windy ~ hot, 
diff --git a/inst/tinytest/test-label.R b/inst/tinytest/test-label.R
index 6d233d47..0c35b271 100644
--- a/inst/tinytest/test-label.R
+++ b/inst/tinytest/test-label.R
@@ -6,7 +6,7 @@ op = par(no.readonly = TRUE)
 
 f = function() {
   set.seed(42)
-  plot2(rnorm(1))
+  tinyplot(rnorm(1))
 }
 expect_snapshot_plot(f, label = "ylab_good")
 
diff --git a/inst/tinytest/test-legend.R b/inst/tinytest/test-legend.R
index b8ee1c9f..4ac73f6c 100644
--- a/inst/tinytest/test-legend.R
+++ b/inst/tinytest/test-legend.R
@@ -7,47 +7,47 @@ op = par(no.readonly = TRUE)
 
 # logical legend example
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = FALSE)
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = FALSE)
 expect_snapshot_plot(f, label = "legend_false")
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = TRUE)
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = TRUE)
 expect_snapshot_plot(f, label = "legend_true")
 
 # position keyword examples 
 
-f = function() with(airquality, plot2(x = Day, y = Temp, by = Month, legend = "bottom!"))
+f = function() with(airquality, tinyplot(x = Day, y = Temp, by = Month, legend = "bottom!"))
 expect_snapshot_plot(f, label = "legend_keyword_default")
 
 if ((getRversion() <= "4.3.2")) {
-  f = function() with(airquality, plot2(x = density(Temp), by = Month, legend = "bottom!"))
+  f = function() with(airquality, tinyplot(x = density(Temp), by = Month, legend = "bottom!"))
   expect_snapshot_plot(f, label = "legend_keyword_density")
 }
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "bottom!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "bottom!")
 expect_snapshot_plot(f, label = "legend_keyword_formula")
 
 # test other outer keywords
 
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "left!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "left!")
 expect_snapshot_plot(f, label = "legend_keyword_outerleft")
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "bottom!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "bottom!")
 expect_snapshot_plot(f, label = "legend_keyword_outerbottom")
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "top!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "top!")
 expect_snapshot_plot(f, label = "legend_keyword_outertop")
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "topright!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "topright!")
 expect_snapshot_plot(f, label = "legend_keyword_outertopright")
-f = function() plot2(Temp ~ Day | Month, data = airquality, legend = "bottomleft!")
+f = function() tinyplot(Temp ~ Day | Month, data = airquality, legend = "bottomleft!")
 expect_snapshot_plot(f, label = "legend_keyword_outerbottomleft")
 
 # Long legend titles
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality, main = "Long title",
   legend = list("right!", title = "What month of the year is it?", bty = "o")
 )
 expect_snapshot_plot(f, label = "legend_long_right")
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality, main = "Multiline title",
   legend = list("left!", title = "What month of the year is it?", bty = "o")
 )
@@ -55,13 +55,13 @@ expect_snapshot_plot(f, label = "legend_long_left")
 
 # multi-line legend titles
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality, main = "Multiline title",
   legend = list("top!", title = "Month\nof\nthe\nyear", bty = "o")
 )
 expect_snapshot_plot(f, label = "legend_multiline_top")
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality, main = "Multiline title",
   legend = list("bottom!", title = "Month\nof\nthe\nyear", bty = "o")
 )
@@ -71,7 +71,7 @@ expect_snapshot_plot(f, label = "legend_multiline_bottom")
 
 f = function() with(
   airquality,
-  plot2(
+  tinyplot(
     x = Day, y = Temp, by = Month,
     legend = legend("bottom!", title = "Month of the year", bty = "o")
   )
@@ -81,7 +81,7 @@ expect_snapshot_plot(f, label = "legend_default_legend")
 if ((getRversion() <= "4.3.1")) {
   f = function() with(
     airquality,
-    plot2(
+    tinyplot(
       x = density(Temp), by = Month,
       legend = legend("bottom!", title = "Month of the year", bty = "o")
     )
@@ -89,63 +89,63 @@ if ((getRversion() <= "4.3.1")) {
   expect_snapshot_plot(f, label = "legend_density_legend")
 }
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality,
   legend = legend("bottom!", title = "Month of the year", bty = "o")
 )
 expect_snapshot_plot(f, label = "legend_formula_legend")
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality,
   legend = legend(title = NULL)
 )
 expect_snapshot_plot(f, label = "legend_title_null")
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality,
   legend = legend(legend = month.abb[5:9])
 )
 expect_snapshot_plot(f, label = "legend_user_labs")
 
-f = function() plot2(
+f = function() tinyplot(
   Temp ~ Day | Month, data = airquality,
   legend = legend(legend = month.abb[5:10])
 )
 expect_warning(expect_snapshot_plot(f, label = "legend_user_labs_override"))
 
 
-# override default legend margins with par2("lmar")
+# override default legend margins with tpar("lmar")
 
 f = function() {
-  olmar = par2("lmar")
-  par2(lmar = c(1.5, 0.5))
-  plot2(Temp ~ Day | Month, data = airquality, legend = list("right!", bty = "o"))
+  olmar = tpar("lmar")
+  tpar(lmar = c(1.5, 0.5))
+  tinyplot(Temp ~ Day | Month, data = airquality, legend = list("right!", bty = "o"))
   box("figure", lty = 2, col = "blue")
-  par2(lmar = olmar)
+  tpar(lmar = olmar)
 }
 expect_snapshot_plot(f, label = "legend_lmar_right")
 f = function() {
-  olmar = par2("lmar")
-  par2(lmar = c(1.5, 0.5))
-  plot2(Temp ~ Day | Month, data = airquality, legend = list("left!", bty = "o"))
+  olmar = tpar("lmar")
+  tpar(lmar = c(1.5, 0.5))
+  tinyplot(Temp ~ Day | Month, data = airquality, legend = list("left!", bty = "o"))
   box("figure", lty = 2, col = "blue")
-  par2(lmar = olmar)
+  tpar(lmar = olmar)
 }
 expect_snapshot_plot(f, label = "legend_lmar_left")
 f = function() {
-  olmar = par2("lmar")
-  par2(lmar = c(1.5, 0.5))
-  plot2(Temp ~ Day | Month, data = airquality, legend = list("bottom!", bty = "o"))
+  olmar = tpar("lmar")
+  tpar(lmar = c(1.5, 0.5))
+  tinyplot(Temp ~ Day | Month, data = airquality, legend = list("bottom!", bty = "o"))
   box("figure", lty = 2, col = "blue")
-  par2(lmar = olmar)
+  tpar(lmar = olmar)
 }
 expect_snapshot_plot(f, label = "legend_lmar_bottom")
 f = function() {
-  olmar = par2("lmar")
-  par2(lmar = c(1.5, 0.5))
-  plot2(Temp ~ Day | Month, data = airquality, legend = list("top!", bty = "o"))
+  olmar = tpar("lmar")
+  tpar(lmar = c(1.5, 0.5))
+  tinyplot(Temp ~ Day | Month, data = airquality, legend = list("top!", bty = "o"))
   box("figure", lty = 2, col = "blue")
-  par2(lmar = olmar)
+  tpar(lmar = olmar)
 }
 expect_snapshot_plot(f, label = "legend_lmar_top")
 
diff --git a/inst/tinytest/test-misc.R b/inst/tinytest/test-misc.R
index 50735948..6d4dc152 100644
--- a/inst/tinytest/test-misc.R
+++ b/inst/tinytest/test-misc.R
@@ -4,28 +4,28 @@ using("tinysnapshot")
 f = function() {
   par(mfrow = c(1, 2))
   plot(Temp ~ Day, data = airquality, log = "x")
-  plot2(Temp ~ Day, data = airquality, log = "x")
+  tinyplot(Temp ~ Day, data = airquality, log = "x")
 } 
 expect_snapshot_plot(f, label = "arg_log_x")
 
 f = function() {
   par(mfrow = c(1, 2))
   plot(Temp ~ Day, data = airquality, log = "y")
-  plot2(Temp ~ Day, data = airquality, log = "y")
+  tinyplot(Temp ~ Day, data = airquality, log = "y")
 } 
 expect_snapshot_plot(f, label = "arg_log_y")
 
 f = function() {
   par(mfrow = c(1, 2))
   plot(Temp ~ Day, data = airquality, log = "xy")
-  plot2(Temp ~ Day, data = airquality, log = "xy")
+  tinyplot(Temp ~ Day, data = airquality, log = "xy")
 } 
 expect_snapshot_plot(f, label = "arg_log_xy")
 
 f = function() {
   par(mfrow = c(1, 2))
   plot(Temp ~ Day, data = airquality, log = "yx")
-  plot2(Temp ~ Day, data = airquality, log = "yx")
+  tinyplot(Temp ~ Day, data = airquality, log = "yx")
 } 
 expect_snapshot_plot(f, label = "arg_log_yx")
 
@@ -34,7 +34,7 @@ expect_snapshot_plot(f, label = "arg_log_yx")
 exit_if_not(getRversion()  <= "4.3.2")
 ## Note: Once 4.4.0 is released we can either generate some new plots or
 ## test with something like:
-# f = function() plot2(..., old.coords=TRUE))
+# f = function() tinyplot(..., old.coords=TRUE))
 
 f = function() {
   par(mfrow = c(1, 1))
@@ -42,11 +42,11 @@ f = function() {
   m = cbind(mtcars, pred)
   with(
     m,
-    plot2(wt, fit, ymin = lwr, ymax = upr, by = cyl, type = "ribbon", grid = TRUE)
+    tinyplot(wt, fit, ymin = lwr, ymax = upr, by = cyl, type = "ribbon", grid = TRUE)
   )
   with(
     m,
-    plot2(wt, mpg, by = cyl, pch = 16, add = TRUE)
+    tinyplot(wt, mpg, by = cyl, pch = 16, add = TRUE)
   )
 }
 expect_snapshot_plot(f, label = "addTRUE")
\ No newline at end of file
diff --git a/inst/tinytest/test-palette.R b/inst/tinytest/test-palette.R
index 5e7dc8a8..1f60c145 100644
--- a/inst/tinytest/test-palette.R
+++ b/inst/tinytest/test-palette.R
@@ -5,7 +5,7 @@ if (Sys.info()["sysname"] != "Linux") exit_file("Linux snapshots")
 # Test keyword(s)
 ## from palette.colors
 f = function() {
-    plot2(
+    tinyplot(
         Sepal.Length ~ Petal.Length | Species, iris,
         pch = 16,
         palette = "Tableau 10"
@@ -15,7 +15,7 @@ expect_snapshot_plot(f, label = "palette_keyword")
 
 ## from hcl.colors
 f = function() {
-    plot2(
+    tinyplot(
         Sepal.Length ~ Petal.Length | Species, iris,
         pch = 16,
         palette = "Set 1"
@@ -25,7 +25,7 @@ expect_snapshot_plot(f, label = "palette_keyword2")
 
 # Test partial match(es)
 f = function() {
-    plot2(
+    tinyplot(
         Sepal.Length ~ Petal.Length | Species, iris,
         pch = 16,
         palette = "tableau"
@@ -34,7 +34,7 @@ f = function() {
 expect_snapshot_plot(f, label = "palette_keyword")
 
 f = function() {
-    plot2(
+    tinyplot(
         Sepal.Length ~ Petal.Length | Species, iris,
         pch = 16,
         palette = "set1"
@@ -44,7 +44,7 @@ expect_snapshot_plot(f, label = "palette_keyword2")
 
 # Partial match should fail if ambiguous
 f = function() {
-    plot2(
+    tinyplot(
         Temp ~ Day | Month, airquality,
         type = "b", pch = 16,
         palette = "set" # set1, set2, set3, etc.
@@ -54,7 +54,7 @@ expect_error(f())
 
 # Test function
 f = function() {
-    plot2(
+    tinyplot(
         Sepal.Length ~ Petal.Length | Species, iris,
         pch = 16,
         palette = palette.colors(palette = "tableau", alpha = 0.5)
diff --git a/inst/tinytest/test-par_restore.R b/inst/tinytest/test-par_restore.R
index 90a62096..a30786fc 100644
--- a/inst/tinytest/test-par_restore.R
+++ b/inst/tinytest/test-par_restore.R
@@ -9,7 +9,7 @@ exit_if_not(getRversion()  <= "4.3.2")
 op = par(no.readonly = TRUE)
 
 f1 = function() {
-  plot2(
+  tinyplot(
     Sepal.Width ~ Sepal.Length | Species, iris,
     grid = grid(),
     legend = legend("bottom!", bty = "o")
@@ -19,7 +19,7 @@ f1 = function() {
 expect_snapshot_plot(f1, label = "par_restore_bottom")
 
 f2 = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt | cyl, mtcars,
     pch = 19,
     grid = grid(),
@@ -34,7 +34,7 @@ expect_snapshot_plot(f2, label = "par_restore_FALSE")
 par(op)
 
 f3 = function() {
-  plot2(
+  tinyplot(
     mpg ~ wt | cyl, mtcars,
     pch = 19,
     grid = grid(),
diff --git a/inst/tinytest/test-pointrange.R b/inst/tinytest/test-pointrange.R
index a67f747d..44a03629 100644
--- a/inst/tinytest/test-pointrange.R
+++ b/inst/tinytest/test-pointrange.R
@@ -8,7 +8,7 @@ coefs = setNames(coefs, c("x", "y", "ymin", "ymax"))
 fun = function() {
     with(
       coefs,
-      plot2(
+      tinyplot(
         pch = 17,
         x = 1:4,
         y = y,
@@ -23,7 +23,7 @@ expect_snapshot_plot(fun, label = "pointrange_triangle")
 fun = function() {
     with(
         coefs,
-        plot2(
+        tinyplot(
           x = x,
           y = y,
           ymin = ymin,
diff --git a/inst/tinytest/test-ribbon.R b/inst/tinytest/test-ribbon.R
index bd5415eb..f0863442 100644
--- a/inst/tinytest/test-ribbon.R
+++ b/inst/tinytest/test-ribbon.R
@@ -10,7 +10,7 @@ mtcars2 = cbind(mtcars, pred)
 f = function() {
   with(
     mtcars2,
-    plot2(
+    tinyplot(
       x = wt, y = fit,
       ymin = lwr, ymax = upr,
       type = "ribbon"
@@ -22,7 +22,7 @@ expect_snapshot_plot(f, label = "ribbon")
 f = function() {
   with(
     mtcars2,
-    plot2(
+    tinyplot(
       x = wt,
       ymin = lwr, ymax = upr,
       type = "ribbon"
diff --git a/inst/tinytest/test-type-other.R b/inst/tinytest/test-type-other.R
index ed6ee26d..b1309a8c 100644
--- a/inst/tinytest/test-type-other.R
+++ b/inst/tinytest/test-type-other.R
@@ -2,26 +2,26 @@ source("helpers.R")
 using("tinysnapshot")
 if (Sys.info()["sysname"] != "Linux") exit_file("Linux snapshots")
 
-f = function() plot2(0:10, type = "c")
+f = function() tinyplot(0:10, type = "c")
 expect_snapshot_plot(f, label = "type_c")
 
-f = function() plot2(0:10, type = "h")
+f = function() tinyplot(0:10, type = "h")
 expect_snapshot_plot(f, label = "type_h")
 
-f = function() plot2(0:10, type = "s")
+f = function() tinyplot(0:10, type = "s")
 expect_snapshot_plot(f, label = "type_s")
 
-f = function() plot2(0:10, type = "S")
+f = function() tinyplot(0:10, type = "S")
 expect_snapshot_plot(f, label = "type_cap_s")
 
-f = function() plot2(Temp ~ Day | Month, airquality, type = "c")
+f = function() tinyplot(Temp ~ Day | Month, airquality, type = "c")
 expect_snapshot_plot(f, label = "type_c_group")
 
-f = function() plot2(Temp ~ Day | Month, airquality, type = "h")
+f = function() tinyplot(Temp ~ Day | Month, airquality, type = "h")
 expect_snapshot_plot(f, label = "type_h_group")
 
-f = function() plot2(Temp ~ Day | Month, airquality, type = "s")
+f = function() tinyplot(Temp ~ Day | Month, airquality, type = "s")
 expect_snapshot_plot(f, label = "type_s_group")
 
-f = function() plot2(Temp ~ Day | Month, airquality, type = "S")
+f = function() tinyplot(Temp ~ Day | Month, airquality, type = "S")
 expect_snapshot_plot(f, label = "type_cap_s_group")
diff --git a/man/draw_legend.Rd b/man/draw_legend.Rd
index bb99ede9..adb6b849 100644
--- a/man/draw_legend.Rd
+++ b/man/draw_legend.Rd
@@ -2,7 +2,7 @@
 % Please edit documentation in R/draw_legend.R
 \name{draw_legend}
 \alias{draw_legend}
-\title{Calculate placement of legend and and draw it}
+\title{Calculate placement of legend and draw it}
 \usage{
 draw_legend(
   legend = NULL,
@@ -21,7 +21,7 @@ draw_legend(
 )
 }
 \arguments{
-\item{legend}{Legend placement keyword or list, passed down from \code{plot2}.}
+\item{legend}{Legend placement keyword or list, passed down from \code{tinyplot}.}
 
 \item{legend.args}{Additional legend arguments to be passed to \code{legend()}.}
 
@@ -29,23 +29,23 @@ draw_legend(
 
 \item{lgnd_labs}{The labels passed to \code{legend(legend = ...)}.}
 
-\item{type}{Plotting type(s), passed down from \code{plot2}.}
+\item{type}{Plotting type(s), passed down from \code{tinyplot}.}
 
-\item{pch}{Plotting character(s), passed down from \code{plot2}.}
+\item{pch}{Plotting character(s), passed down from \code{tinyplot}.}
 
-\item{lty}{Plotting linetype(s), passed down from \code{plot2}.}
+\item{lty}{Plotting linetype(s), passed down from \code{tinyplot}.}
 
-\item{col}{Plotting colour(s), passed down from \code{plot2}.}
+\item{col}{Plotting colour(s), passed down from \code{tinyplot}.}
 
-\item{bg}{Plotting character background fill colour(s), passed down from \code{plot2}.}
+\item{bg}{Plotting character background fill colour(s), passed down from \code{tinyplot}.}
 
-\item{cex}{Plotting character expansion(s), passed down from \code{plot2}.}
+\item{cex}{Plotting character expansion(s), passed down from \code{tinyplot}.}
 
 \item{lmar}{Legend margins (in lines). Should be a numeric vector of the form
 \code{c(inner, outer)}, where the first number represents the "inner" margin
 between the legend and the plot, and the second number represents the
 "outer" margin between the legend and edge of the graphics device. If no
-explicit value is provided by the user, then reverts back to \code{par2("lmar")}
+explicit value is provided by the user, then reverts back to \code{tpar("lmar")}
 for which the default values are \code{c(1.0, 0.1)}.}
 
 \item{has_sub}{Logical. Does the plot have a sub-caption. Only used if
@@ -92,7 +92,7 @@ par(mar = oldmar)
 
 # Note that the inner and outer margin of the legend itself can be set via
 # the `lmar` argument. (This can also be set globally via
-# `par2(lmar = c(inner, outer))`.)
+# `tpar(lmar = c(inner, outer))`.)
 draw_legend(
   legend.args = list(title = "Key", bty = "o"),
   lgnd_labs = c("foo", "bar"),
diff --git a/man/figures/README-quickstart2-1.png b/man/figures/README-quickstart2-1.png
index d91ee9eb..668661dd 100644
Binary files a/man/figures/README-quickstart2-1.png and b/man/figures/README-quickstart2-1.png differ
diff --git a/man/figures/README-quickstart3-1.png b/man/figures/README-quickstart3-1.png
index e4527d66..51deee6c 100644
Binary files a/man/figures/README-quickstart3-1.png and b/man/figures/README-quickstart3-1.png differ
diff --git a/man/figures/README-quickstart4-1.png b/man/figures/README-quickstart4-1.png
index a98f899f..78590dae 100644
Binary files a/man/figures/README-quickstart4-1.png and b/man/figures/README-quickstart4-1.png differ
diff --git a/man/figures/README-quickstart5-1.png b/man/figures/README-quickstart5-1.png
index 21ef456e..acc1e1da 100644
Binary files a/man/figures/README-quickstart5-1.png and b/man/figures/README-quickstart5-1.png differ
diff --git a/man/plot2-package.Rd b/man/plot2-package.Rd
deleted file mode 100644
index e2b29421..00000000
--- a/man/plot2-package.Rd
+++ /dev/null
@@ -1,47 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/plot2-package.R
-\docType{package}
-\name{plot2-package}
-\alias{plot2-package}
-\title{plot2: Lightweight extension of the base R plot function, with support
-for automatic grouping and legend printing, and several other enhancements}
-\description{
-The goal of \strong{plot2} is to extend the functionality of base R's
-default (2D) \code{plot()} function, particularly as it applies to scatter and
-line plots with grouped data. For example, \strong{plot2} makes it easy to plot
-different categories of a dataset in a single function call and highlight
-these categories (groups) using modern colour palettes. Coincident with
-this grouping support, \strong{plot2} also produces automatic legends with scope
-for further customization. While the package also offers several other
-minor enhancements, it tries as far as possible to be a drop-in replacement
-for the equivalent base plot function. Users should be able to swap a valid
-\code{plot} call with \code{plot2} without any changes to the expected output.
-}
-\details{
-\code{plot2-package}
-}
-\seealso{
-Useful links:
-\itemize{
-  \item \url{https://grantmcdermott.com/plot2/}
-  \item \url{http://grantmcdermott.com/plot2/}
-  \item Report bugs at \url{https://github.com/grantmcdermott/plot2/issues}
-}
-
-}
-\author{
-\strong{Maintainer}: Grant McDermott \email{gmcd@amazon.com}
-
-Authors:
-\itemize{
-  \item Vincent Arel-Bundock \email{vincent.arel-bundock@umontreal.ca} (\href{https://orcid.org/0000-0003-1995-6531}{ORCID}) (@vincentab)
-  \item Achim Zeileis \email{Achim.Zeileis@R-project.org} (\href{https://orcid.org/0000-0003-0918-3766}{ORCID})
-}
-
-Other contributors:
-\itemize{
-  \item Etienne Bacher \email{etienne.bacher@protonmail.com} [contributor]
-}
-
-}
-\keyword{internal}
diff --git a/man/tinyplot-package.Rd b/man/tinyplot-package.Rd
new file mode 100644
index 00000000..bf9a0826
--- /dev/null
+++ b/man/tinyplot-package.Rd
@@ -0,0 +1,49 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/tinyplot-package.R
+\docType{package}
+\name{tinyplot-package}
+\alias{tinyplot-package}
+\title{tinyplot: Lightweight extension of the base R graphics system, with
+support for automatic legends, facetting, and several other enhancements.}
+\description{
+The goal of \strong{tinyplot} is to provides a lightweight extension
+of the base R graphics system with various convenience features,
+particularly for representing groups with your data. For example, the core
+\code{tinyplot()} function (alias: \code{plt()} with no vowels) makes it easy to plot
+different categories of a dataset in a single function call and highlight
+these categories (groups) using modern colour palettes. Coincident with
+this grouping support, \code{tinyplot()} also produces automatic legends with
+scope for further customization. While the package offers several other
+enhancements like facets, it tries as far as possible to be a drop-in
+replacement for the equivalent base plotting calls. Users should generally
+be able to swap a valid \code{plot()} call with \code{tinyplot()} without any changes
+to the expected output.
+}
+\details{
+\code{tinyplot-package}
+}
+\seealso{
+Useful links:
+\itemize{
+  \item \url{https://grantmcdermott.com/tinyplot/}
+  \item \url{http://grantmcdermott.com/tinyplot/}
+  \item Report bugs at \url{https://github.com/grantmcdermott/tinyplot/issues}
+}
+
+}
+\author{
+\strong{Maintainer}: Grant McDermott \email{gmcd@amazon.com}
+
+Authors:
+\itemize{
+  \item Vincent Arel-Bundock \email{vincent.arel-bundock@umontreal.ca} (\href{https://orcid.org/0000-0003-1995-6531}{ORCID}) (@vincentab)
+  \item Achim Zeileis \email{Achim.Zeileis@R-project.org} (\href{https://orcid.org/0000-0003-0918-3766}{ORCID})
+}
+
+Other contributors:
+\itemize{
+  \item Etienne Bacher \email{etienne.bacher@protonmail.com} [contributor]
+}
+
+}
+\keyword{internal}
diff --git a/man/plot2.Rd b/man/tinyplot.Rd
similarity index 86%
rename from man/plot2.Rd
rename to man/tinyplot.Rd
index 6dbc1a60..f5517b82 100644
--- a/man/plot2.Rd
+++ b/man/tinyplot.Rd
@@ -1,15 +1,16 @@
 % Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/plot2.R
-\name{plot2}
-\alias{plot2}
-\alias{plot2.default}
-\alias{plot2.formula}
-\alias{plot2.density}
+% Please edit documentation in R/tinyplot.R
+\name{tinyplot}
+\alias{tinyplot}
+\alias{tinyplot.default}
+\alias{tinyplot.formula}
+\alias{tinyplot.density}
+\alias{plt}
 \title{Lightweight extension of the base R plotting function}
 \usage{
-plot2(x, ...)
+tinyplot(x, ...)
 
-\method{plot2}{default}(
+\method{tinyplot}{default}(
   x,
   y = NULL,
   by = NULL,
@@ -45,7 +46,7 @@ plot2(x, ...)
   ...
 )
 
-\method{plot2}{formula}(
+\method{tinyplot}{formula}(
   x = NULL,
   data = parent.frame(),
   facet = NULL,
@@ -73,7 +74,7 @@ plot2(x, ...)
   ...
 )
 
-\method{plot2}{density}(
+\method{tinyplot}{density}(
   x = NULL,
   by = NULL,
   facet = NULL,
@@ -98,6 +99,8 @@ plot2(x, ...)
   par_restore = FALSE,
   ...
 )
+
+plt(x, ...)
 }
 \arguments{
 \item{x, y}{the x and y arguments provide the x and y coordinates for the
@@ -148,18 +151,18 @@ precedence if both are specified together. Ignored if a two-sided formula
 is passed to the main \code{facet} argument, since the layout is arranged in a
 fixed grid.
 \item \code{fmar} a vector of form \code{c(b,l,t,r)} for controlling the base margin
-between facets in terms of lines. Defaults to the value of \code{par2("fmar")},
+between facets in terms of lines. Defaults to the value of \code{tpar("fmar")},
 which should be \code{c(1,1,1,1)}, i.e. a single line of padding around each
 individual facet, assuming it hasn't been overridden by the user as part
-their global \code{\link[plot2]{par2}} settings. Note some automatic
+their global \code{\link[tinyplot]{tpar}} settings. Note some automatic
 adjustments are made for certain layouts, and depending on whether the plot
 is framed or not, to reduce excess whitespace. See
-\code{\link[plot2]{par2}} for more details.
+\code{\link[tinyplot]{tpar}} for more details.
 \item \code{cex}, \code{font}, \code{col}, \code{bg}, \code{border} for adjusting the facet title text
 and background. Default values for these arguments are inherited from
-\code{\link[plot2]{par2}} (where they take a "facet." prefix, e.g.
-\code{par2("facet.cex")}). The latter function can also be used to set these
-features globally for all \code{plot2} plots.
+\code{\link[tinyplot]{tpar}} (where they take a "facet." prefix, e.g.
+\code{tpar("facet.cex")}). The latter function can also be used to set these
+features globally for all \code{tinyplot} plots.
 }}
 
 \item{data}{a data.frame (or list) from which the variables in formula
@@ -172,7 +175,7 @@ for lines, "b" for both points and lines, "c" for empty points joined by
 lines, "o" for overplotted points and lines, "s" and "S" for stair steps
 and "h" for histogram-like vertical lines. "n" does not produce
 any points or lines.
-\item Additional plot2 types: "density" for densities, "pointrange" or
+\item Additional tinyplot types: "density" for densities, "pointrange" or
 "errorbar" for segement intervals, and "ribbon" or "area" for polygon
 intervals (where area plots are a special case of ribbon plots with \code{ymin}
 set to 0 and \code{ymax} set to \code{y}; see below).
@@ -245,7 +248,7 @@ legend title and categories will automatically be inferred from the \code{by}
 argument and underlying data.
 \item A convenience string indicating the legend position. The string should
 correspond to one of the position keywords supported by the base \code{legend}
-function, e.g. "right", "topleft", "bottom", etc. In addition, \code{plot2}
+function, e.g. "right", "topleft", "bottom", etc. In addition, \code{tinyplot}
 supports adding a trailing exclamation point to these keywords, e.g.
 "right!", "topleft!", or "bottom!". This will place the legend \emph{outside}
 the plotting area and adjust the margins of the plot accordingly. Finally,
@@ -273,7 +276,7 @@ recycle as necessary.}
 
 \item{col}{plotting color. Character, integer, or vector of length equal to
 the number of categories in the \code{by} variable. See \code{col}. Note that the
-default behaviour in \code{plot2} is to vary group colors along any variables
+default behaviour in \code{tinyplot} is to vary group colors along any variables
 declared in the \code{by} argument. Thus, specifying colors manually should not
 be necessary unless users wish to override the automatic colors produced by
 this grouping process. Typically, this would only be done if grouping
@@ -288,7 +291,7 @@ Users can also supply a special \code{bg = "by"} convenience argument, in which
 case the background fill will inherit the automatic group coloring
 intended for the \code{col} argument. Note that this grouped inheritance will
 persist even if the \code{col} defaults are themselves overridden. For example,
-\code{plot2(y ~ x | z, data = fakedata, pch = 22, col = "blue", bg = "by")}
+\code{tinyplot(y ~ x | z, data = fakedata, pch = 22, col = "blue", bg = "by")}
 will yield filled squares with a blue border.}
 
 \item{fill}{alias for \code{bg}. If non-NULL values for both \code{bg} and \code{fill} are
@@ -300,10 +303,10 @@ relative to the default. Note that NULL is equivalent to 1.0, while NA
 renders the characters invisible.}
 
 \item{par_restore}{a logical value indicating whether the \code{par} settings
-prior to calling \code{plot2} should be restored on exit. Defaults to FALSE,
+prior to calling \code{tinyplot} should be restored on exit. Defaults to FALSE,
 which makes it possible to add elements to the plot after it has been
 drawn. However, note the the outer margins of the graphics device may have
-been altered to make space for the \code{plot2} legend. Users can opt out of
+been altered to make space for the \code{tinyplot} legend. Users can opt out of
 this persistent behaviour by setting to TRUE instead. (Another option would
 be calling \code{dev.off()} to reset all \code{par} settings to their defaults.)}
 
@@ -329,17 +332,17 @@ should not be specified in the same call.}
 when extracting the data from \code{formula} and \code{data}.}
 }
 \description{
-Extends base R's graphics system,
-particularly as it applies to scatter and
-line plots with grouped data. For example, \code{plot2} makes it easy to plot
-different categories of a dataset in a single function call and highlight
-these categories (groups) using modern colour palettes. Coincident with
-this grouping support, \code{plot2} also produces automatic legends with scope
-for further customization. While the package also offers several other
-enhancements, it tries as far as possible to be a drop-in replacement
-for the equivalent base plot function. Users should generally be able to
-swap a valid \code{\link[graphics]{plot}} call with \code{plot2} without any
-changes to the output.
+Enhances the base \code{\link[graphics]{plot}} function. Supported features
+include automatic legends and facets for grouped data, additional plot types,
+theme customization, and so on. Users can call either \code{tinyplot()}, or its
+shorthand alias \code{plt()}.
+}
+\details{
+Disregarding the enhancements that it supports, \code{tinyplot} tries as far as
+possible to mimic the behaviour and syntax logic of the original base
+\code{\link[graphics]{plot}} function. Users should therefore be able to swap
+out existing \code{plot} calls for \code{tinyplot} (or its shorthand alias \code{plt}),
+without causing unexpected changes to the output.
 }
 \examples{
 
@@ -347,33 +350,38 @@ changes to the output.
 op = par()
 
 
-# plot2 should be a drop-in replacement for (most) regular plot calls. For
+aq = transform(
+  airquality,
+  Month = factor(Month, labels = month.abb[unique(Month)])
+)
+
+# tinyplot should be a drop-in replacement for (most) regular plot calls. For
 # example:
 
 par(mfrow = c(1, 2))
 plot(0:10, main = "plot")
-plot2(0:10, main = "plot2")
+tinyplot(0:10, main = "tinyplot")
 
 # restore graphics parameters
 par(op)  
 
-# Unlike vanilla plot, however, plot2 allows you to characterize groups 
-# (using either the `by` argument or equivalent `|` formula syntax).
+# Unlike vanilla plot, however, tinyplot allows you to characterize groups 
+# using either the `by` argument or equivalent `|` formula syntax.
 
-aq = transform(
-  airquality,
-  Month = factor(Month, labels = month.abb[unique(Month)])
-)
+with(aq, tinyplot(Day, Temp, by = Month)) ## atomic method
+tinyplot(Temp ~ Day | Month, data = aq)   ## formula method
+
+# (Notice that we also get an automatic legend.)
 
-with(aq, plot2(Day, Temp, by = Month)) ## atomic method
-plot2(Temp ~ Day | Month, data = aq)   ## formula method
+# You can also use the equivalent shorthand `plt` alias if you'd like to save
+# on a few keystrokes
 
-# Notice that we also get an automatic legend.
+plt(Temp ~ Day | Month, data = aq) ## shorthand alias
 
 # Use standard base plotting arguments to adjust features of your plot.
 # For example, change `pch` (plot character) to get filled points.
 
-plot2(
+tinyplot(
   Temp ~ Day | Month,
   data = aq,
   pch = 16
@@ -382,17 +390,17 @@ plot2(
 # Converting to a grouped line plot is a simple matter of adjusting the
 # `type` argument.
 
-plot2(
+tinyplot(
   Temp ~ Day | Month,
   data = aq,
   type = "l"
 )
 
 # Similarly for other plot types, including some additional ones provided
-# directly by plot2, e.g. density plots or internal plots (ribbons, 
+# directly by tinyplot, e.g. density plots or internal plots (ribbons, 
 # pointranges, etc.)
 
-plot2(
+tinyplot(
   ~ Temp | Month,
   data = aq,
   type = "density",
@@ -401,7 +409,7 @@ plot2(
 
 # Facet plots are supported too. Facets can be drawn on their own...
 
-plot2(
+tinyplot(
   Temp ~ Day,
   facet = ~ Month, 
   data = aq,
@@ -412,7 +420,7 @@ plot2(
 # ... or combined/contrasted with the by (colour) grouping.
 
 aq = transform(aq, Summer = Month \%in\% c("Jun", "Jul", "Aug"))
-plot2(
+tinyplot(
   Temp ~ Day | Summer,
   facet = ~ Month, 
   data = aq,
@@ -425,7 +433,7 @@ plot2(
 # or `ncol` to the helper facet.args argument. Note that we can also reduce
 # axis label repetition across facets by turning the plot frame off.
 
-plot2(
+tinyplot(
   Temp ~ Day | Summer,
   facet = ~ Month, facet.args = list(nrow = 1),
   data = aq,
@@ -440,7 +448,7 @@ plot2(
 
 aq$hot = ifelse(aq$Temp>=75, "hot", "cold")
 aq$windy = ifelse(aq$Wind>=15, "windy", "calm")
-plot2(
+tinyplot(
  Temp ~ Day,
  facet = windy ~ hot,
  data = aq
@@ -448,10 +456,10 @@ plot2(
 
 # The (automatic) legend position and look can be customized using
 # appropriate arguments. Note the trailing "!" in the `legend` position
-# argument below. This tells `plot2` to place the legend _outside_ the plot
+# argument below. This tells `tinyplot` to place the legend _outside_ the plot
 # area.
 
-plot2(
+tinyplot(
   Temp ~ Day | Month,
   data = aq,
   type = "l",
@@ -464,7 +472,7 @@ plot2(
 # or users can supply a valid palette-generating function for finer control
 # over transparency etc.
 
-plot2(
+tinyplot(
   Temp ~ Day | Month,
   data = aq,
   type = "l",
@@ -475,7 +483,7 @@ plot2(
 # arguments and base plotting theme settings (e.g., via `par`).
 
 par(family = "HersheySans", las = 1)
-plot2(
+tinyplot(
   Temp ~ Day | Month,
   data = aq,
   type = "b", pch = 16,
@@ -484,6 +492,6 @@ plot2(
   frame = FALSE, grid = TRUE
 )
 
-par(family = "") # revert global font change from above
+par(op) # revert original graphics parameters
 
 }
diff --git a/man/par2.Rd b/man/tpar.Rd
similarity index 68%
rename from man/par2.Rd
rename to man/tpar.Rd
index 73eaa86e..e4c956c9 100644
--- a/man/par2.Rd
+++ b/man/tpar.Rd
@@ -1,20 +1,20 @@
 % Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/par2.R
-\name{par2}
-\alias{par2}
-\title{Set or query plot2 parameters}
+% Please edit documentation in R/tpar.R
+\name{tpar}
+\alias{tpar}
+\title{Set or query tinyplot parameters}
 \usage{
-par2(...)
+tpar(...)
 }
 \arguments{
-\item{...}{arguments of the form \code{tag = value}. Supported \code{plot2} parameters
+\item{...}{arguments of the form \code{tag = value}. Supported \code{tinyplot} parameters
 are described in the 'Graphical Parameters' section below.}
 }
 \description{
-\code{par2} can be used to set or query the additional set of
-graphical parameters provided by \code{plot2} (i.e., beyond the base set
+\code{tpar} can be used to set or query the additional set of
+graphical parameters provided by \code{tinyplot} (i.e., beyond the base set
 provided by  \code{\link[graphics]{par}}). Similar to its base counterpart, parameters can be set
-by passing the appropriate tag-value argument pairs to \code{par2}. Multiple
+by passing the appropriate tag-value argument pairs to \code{tpar}. Multiple
 parameters can be set or queried at the same time, as a list.
 }
 \section{Graphical Parameters}{
@@ -39,10 +39,10 @@ parameters can be set or queried at the same time, as a list.
 \code{fmar} \tab\tab A numeric vector of form \code{c(b,l,t,r)} for controlling the (base) margin padding, in terms of lines, between the individual facets in a faceted plot. Defaults to \code{c(1,1,1,1)}, i.e. a single line of padding around each facet. If more that three facets are detected, the \code{fmar} parameter is scaled by 0.75 (i.e., three-quarters) to reduce the excess whitespace that would otherwise arise due to the absent axes lines and labels. (An exception is made for 2x2 plots to better match the \code{cex} expansion logic of the base graphics system under this particular layout.) Similarly, note that an extra 0.5 lines is subtracted from each side of the facet padding for plots that aren't framed, to reduce excess whitespace.\cr
 \tab\tab\cr
 \tab\tab\cr
-\code{last_facet_par} \tab\tab Full list of graphical parameters used to constructed the most recent faceted \code{plot2} plot during the current session. Unlike other \code{par2} parameters, this parameter is intended for internal use (specifically, to enable adding further elements on top of an existing faceted plot) and should \emph{not} be set by the user.\cr
+\code{last_facet_par} \tab\tab Full list of graphical parameters used to constructed the most recent faceted \code{tinyplot} plot during the current session. Unlike other \code{tpar} parameters, this parameter is intended for internal use (specifically, to enable adding further elements on top of an existing faceted plot) and should \emph{not} be set by the user.\cr
 \tab\tab\cr
 \tab\tab\cr
-\code{lmar} \tab\tab A numeric vector of form \code{c(inner, outer)} that gives the margin padding, in terms of lines, around the automatic \code{plot2} legend. Defaults to \code{c(1.0, 0.1)}, where the first number represents the "inner" margin between the legend and the plot region, and the second number represents the "outer" margin between the legend and edge of the graphics device. (Note that an exception for the definition of the "outer" legend margin occurs when the legend placement is \code{"top!"}, since the legend is placed above the plot region but below the main title. In such cases, the outer margin is relative to the existing gap between the title and the plot region, which is itself determined by \code{par("mar")[3]}.)\cr
+\code{lmar} \tab\tab A numeric vector of form \code{c(inner, outer)} that gives the margin padding, in terms of lines, around the automatic \code{tinyplot} legend. Defaults to \code{c(1.0, 0.1)}, where the first number represents the "inner" margin between the legend and the plot region, and the second number represents the "outer" margin between the legend and edge of the graphics device. (Note that an exception for the definition of the "outer" legend margin occurs when the legend placement is \code{"top!"}, since the legend is placed above the plot region but below the main title. In such cases, the outer margin is relative to the existing gap between the title and the plot region, which is itself determined by \code{par("mar")[3]}.)\cr
 }
 }
 
diff --git a/tests/tinytest.R b/tests/tinytest.R
index 144f6bf5..9bf91130 100644
--- a/tests/tinytest.R
+++ b/tests/tinytest.R
@@ -1,5 +1,5 @@
 
 if ( requireNamespace("tinytest", quietly=TRUE) ){
-  tinytest::test_package("plot2")
+  tinytest::test_package("tinyplot")
 }
 
diff --git a/plot2.Rproj b/tinyplot.Rproj
similarity index 100%
rename from plot2.Rproj
rename to tinyplot.Rproj
diff --git a/vignettes/intro_tutorial.Rmd b/vignettes/intro_tutorial.Rmd
index 97be2cdf..0012c9c8 100644
--- a/vignettes/intro_tutorial.Rmd
+++ b/vignettes/intro_tutorial.Rmd
@@ -20,7 +20,7 @@ knitr::opts_chunk$set(
 ```
 
 The goal of this intro tutorial is to give you a sense of the main features and
-syntax of **plot2**, a lightweight extension of the base R graphics system. We
+syntax of **tinyplot**, a lightweight extension of the base R graphics system. We
 don't try to cover everything, but you should come away with a good
 understanding of how the package works and how it can integrate with your own
 projects.
@@ -32,7 +32,7 @@ a slightly modified version of the `airquality` dataset that comes bundled with
 base R. So let's go ahead and create that now too.
 
 ```{r aq}
-library(plot2)
+library(tinyplot)
 
 aq = airquality
 aq$Month = factor(month.abb[aq$Month], levels = month.abb[5:9])
@@ -40,14 +40,14 @@ aq$Month = factor(month.abb[aq$Month], levels = month.abb[5:9])
 
 ## Similarity to `plot()`
 
-As far as possible, `plot2` tries to be a drop-in replacement for regular `plot`
+As far as possible, `tinyplot` tries to be a drop-in replacement for regular `plot`
 calls.
 
 ```{r base_1}
 par(mfrow = c(1, 2))
 
 plot(0:10, main = "plot")
-plot2(0:10, main = "plot2")
+tinyplot(0:10, main = "tinyplot")
 
 par(mfrow = c(1, 1)) # reset layout
 ```
@@ -56,15 +56,25 @@ Similarly, we can plot elements from a data frame using either the atomic or
 formula methods. Here's a simple example using the `aq` dataset that we created
 earlier.
 
-```{r plot2_simple}
-# with(aq,  plot2(Day, Temp)) # atomic method (same as below)
-plot2(Temp ~ Day, data = aq)  # formula method
+```{r tinyplot_simple}
+# with(aq,  tinyplot(Day, Temp)) # atomic method (same as below)
+tinyplot(Temp ~ Day, data = aq)  # formula method
 ```
 
+If you'd prefer to save on a few keystrokes, you can use the shorthand `plt`
+alias instead.
+
+```{r plt_simple}
+plt(Temp ~ Day, data = aq) # `plt` = shorthand alias for `tinyplot`
+```
+
+(Note that the `plt` shorthand would work for all of the remaining plotting
+calls below. But we'll stick to `tinyplot` to keep things simple.)
+
 ## Grouped data
 
-Where `plot2` starts to diverge from its base counterpart is
-with respect to grouped data. In particular, `plot2` allows you to characterize
+Where `tinyplot` starts to diverge from its base counterpart is
+with respect to grouped data. In particular, `tinyplot` allows you to characterize
 groups using the `by` argument.^[At this point, experienced base plot users 
 might protest that you _can_ colour by groups using the `col` argument, e.g.
 `with(aq, plot(Day, Temp, col = Month))`. This is true,
@@ -78,22 +88,22 @@ plots (i.e., type="l"). Instead, you have to transpose your data and use
 old StackOverflow thread for a longer discussion.]
 
 ```{r by}
-# plot2(aq$Day, aq$Temp, by = aq$Month) # same as below
-with(aq, plot2(Day, Temp, by = Month))
+# tinyplot(aq$Day, aq$Temp, by = aq$Month) # same as below
+with(aq, tinyplot(Day, Temp, by = Month))
 ```
 
 An arguably more convenient approach is to use the equivalent formula syntax.
 Just place the grouping variable after a vertical bar (i.e., `|`).
 
 ```{r formula}
-plot2(Temp ~ Day | Month, data = aq)
+tinyplot(Temp ~ Day | Month, data = aq)
 ```
 
 You can use standard base plotting arguments to adjust features of your plot.
 For example, change `pch` (plot character) to get filled points.
 
 ```{r pch_16}
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   pch = 16
 )
@@ -103,13 +113,13 @@ Similarly, converting to a grouped line plot is a simple matter of adjusting the
 `type` argument.
 
 ```{r type_l}
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "l"
 )
 ```
 
-The default behaviour of `plot2` is to represent groups through colour. However,
+The default behaviour of `tinyplot` is to represent groups through colour. However,
 note that we can automatically adjust `pch` and `lty` by groups too by passing
 the `"by"` convenience keyword. This can be used in conjunction with the default
 group colouring. Or, as a replacement for group colouring---an option that may
@@ -117,7 +127,7 @@ be particularly useful for contexts where colour is expensive or prohibited
 (e.g., certain academic journals).
 
 ```{r by_lty}
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "l",
   col = "black", # override automatic group colours
@@ -138,10 +148,10 @@ Murrell.] Note that case-insensitive, partial matching for these convenience
 string is allowed. For example:
 
 ```{r palette_tableau}
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "l",
-  palette = "tableau" # or "ggplot2", "okabe-ito", "set2", "harmonic", etc.
+  palette = "tableau" # or "ggtinyplot", "okabe-ito", "set2", "harmonic", etc.
 )
 ```
 
@@ -165,13 +175,13 @@ In all of the preceding plots, you will have noticed that we get an automatic
 legend. The legend position and look can be customized with the `legend`
 argument. At a minimum, you can pass the familiar legend position keywords as a
 convenience string ("topright", "bottom", "left", etc.). Moreover, a key feature
-of `plot2` is that we can easily and elegantly place the legend _outside_ the
+of `tinyplot` is that we can easily and elegantly place the legend _outside_ the
 plot area by adding a trailing "!" to these keywords. (As you may have realised,
 the default legend position is "right!".) Let's demonstrate by moving the legend
 to the left of the plot:
 
 ```{r legend_bottom}
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "l",
   legend = "left!"
@@ -189,7 +199,7 @@ the background colour should vary by groups too.
 ```{r density_topright}
 with(
   aq,
-  plot2(
+  tinyplot(
     density(Temp),
     by = Month,
     fill = "by",                         # add fill by groups
@@ -201,7 +211,7 @@ with(
 
 ## Interval plots
 
-`plot2` adds supports for interval plots via the `"pointrange"`, `"errorbar"`,
+`tinyplot` adds supports for interval plots via the `"pointrange"`, `"errorbar"`,
 `"ribbon"` type arguments. An obvious use-case is for regression analysis and
 prediction.
 
@@ -211,7 +221,7 @@ aq = cbind(aq, predict(mod, interval = "confidence"))
 
 with(
   aq,
-  plot2(
+  tinyplot(
     x = Day, y = fit,
     ymin = lwr, ymax = upr,
     by = Month,
@@ -234,7 +244,7 @@ coeftab = data.frame(
 
 with(
   subset(coeftab, !grepl("Day", term)),
-  plot2(
+  tinyplot(
     x = term, y = estimate,
     ymin = ci_low, ymax = ci_high,
     type = "pointrange", # or: "errobar", "ribbon"
@@ -248,13 +258,13 @@ with(
 ## Facets
 
 Alongside the standard "by" grouping approach that we have seen thus far,
-**plot2** also supports faceted plots. Mirroring the main `plot2` function, the
+**tinyplot** also supports faceted plots. Mirroring the main `tinyplot` function, the
 `facet` argument accepts both atomic and formula methods.
 
 ```{r facet_simple}
 with(
   aq,
-  plot2(
+  tinyplot(
     x = Day, y = fit,
     ymin = lwr, ymax = upr,
     type = "ribbon",
@@ -274,7 +284,7 @@ that we can also reduce axis label redundancy by turning off the plot frame.
 ```{r facet_nrow}
 with(
   aq,
-  plot2(
+  tinyplot(
     x = Day, y = fit,
     ymin = lwr, ymax = upr,
     type = "ribbon",
@@ -297,7 +307,7 @@ variables if that's what your data support.
 # Plot the original points 
 with(
   aq,
-  plot2(
+  tinyplot(
     x = Day, y = Temp,
     by = Month,
     facet = "by", facet.args = list(bg = "grey90"),
@@ -309,7 +319,7 @@ with(
 # Add the model predictions to the same plot 
 with(
   aq,
-  plot2(
+  tinyplot(
     x = Day, y = fit,
     ymin = lwr, ymax = upr,
     by = Month, facet = "by",
@@ -328,7 +338,7 @@ arrangement. Here's a simple (if contrived) example.
 aq$hot = ifelse(aq$Temp>=75, "hot", "cold")
 aq$windy = ifelse(aq$Wind>=15, "windy", "calm")
 
-plot2(
+tinyplot(
  Temp ~ Day, data = aq,
  facet = windy ~ hot,
  # the rest of these arguments are optional...
@@ -342,7 +352,7 @@ plot2(
 ## Customization
 
 Customizing your plots further is straightforward, whether that is done by
-changing global parameters (via `par`) or invoking `plot2` arguments. Here's a
+changing global parameters (via `par`) or invoking `tinyplot` arguments. Here's a
 quick penultimate example, where we change our point character, tick labels, and
 font family globally, before adding some transparency to our colour palette, and
 use Tufte-style floating axes with a background panel grid.
@@ -354,7 +364,7 @@ par(
   family = "HersheySans" # Use a (built-in) Hershey font instead of Arial default
 )
 
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "b",
   palette = palette.colors(palette = "tableau", alpha = 0.5),
@@ -369,7 +379,7 @@ plot2(
 
 At the risk of repeating ourselves, the use of `par` in the previous example
 again underscores the correspondence with the base graphics system. Because
-`plot2` is effectively a convenience wrapper around base `plot`, any global
+`tinyplot` is effectively a convenience wrapper around base `plot`, any global
 elements that you have set for the latter should carry over to the former. For
 nice out-of-the-box themes, we recommend the **basetheme** package
 ([link](https://github.com/karoliskoncevicius/basetheme)).
@@ -380,7 +390,7 @@ par(pch = 15, las = 0, family = "") # change/revert global changes from above
 library(basetheme)
 basetheme("royal") # or "clean", "dark", "ink", "brutal", etc.
 
-plot2(
+tinyplot(
   Temp ~ Day | Month, data = aq,
   type = "b",
   pch = "by",
@@ -394,7 +404,7 @@ dev.off()
 
 ## Conclusion
 
-In summary, consider the **plot2** package if you are looking for base R `plot`
+In summary, consider the **tinyplot** package if you are looking for base R `plot`
 functionality with some added convenience features. You can use pretty much the
 same syntax and all of your theme elements should carry over too. It has no
 dependencies other than base R itself and this makes it an attractive option for
