Yes, you can; consider this example (built on the standard North Carolina shapefile):
library(leaflet)
library(dplyr)
library(sf)
# NC counties - a shapefile shipped with the sf package
shape <- st_read(system.file("shape/nc.shp", package ="sf")) %>%
st_transform(shape, crs = 4326)
# three cities with coordinates
points <- data.frame(name = c("Raleigh", "Greensboro", "Wilmington"),
x = c(-78.633333, -79.819444, -77.912222),
y = c(35.766667, 36.08, 34.223333)) %>%
st_as_sf(coords = c("x", "y"), crs = 4326)
leaflet() %>%
addProviderTiles("Stamen.Toner") %>%
addPolygons(data = shape,
fillColor = "aliceblue",
color = "grey",
popup = ~NAME) %>% # county name, note the tilde!
addCircleMarkers(data = points,
fillColor = "red",
color = NA,
radius = 10,
fillOpacity = 1,
popup = ~name) # city name, again tilde convention
For more Leaflet tuning options have a look at my post here: