Changelog

Latest changes, bug fixes, and new component releases

v3.8.0

Sept 25, 2023

Charting a new course: Announcing on click events for more interactivity!

Hello! In the last two weeks, our phenomenal contributors, along with our team, have been working to introduce new feature: Chart Interactivity. This enhancement has been on the wish list of our users for a long time. Additionally, we have given a facelift to some charts and tabs.

Release cover 3.8

New Components and Features

Fixes and Improvements

v3.7.0

Sept 5, 2023

Better Datepicker and Multiselect

Hello all, this week we're introducing a new prop to both the date picker and the date range picker. Additionally, we're enhancing how selected items are displayed in the multiselect component.

New Components and Features

  • Date (Range) Picker: New weekStartsOn property to set a desired index for the first day of the week. E.g. 0 = Sunday. #643
  • MultiSelect: New display of selected items with the option to clear items individually. #638

    Thanks to GitHub user jzfrank for those PRs.

Fixes and Improvements

  • Fixes remove scroll utility from css #652
  • Fixes toggling on MultiSelect click #655
  • Make Grid RSC compliant #639
  • Improved MultiSelectSearch with spaces and added new placeholderSearch prop. #651
  • Fixes multiselect overflow-x scrollbar on Firefox #669
  • Improved conditinal rendering on tabs and added extra Margins in Tab and Button #667
  • Adds bold style to Today in Calendar #659
  • Fixes NumberInput does not pass event value through onChange issue #649
v3.6.0

Jul 29, 2023

Introducing a new member to the family: Scatter Chart

Hi everyone, we are thrilled to announce the release of our brand new chart: the <ScatterChart>! This addition opens up exciting possibilities for displaying data. We would like to extend a huge thank you to the GitHub user mbauchet.

Release cover 3.6

New Components and Features

Fixes and Improvements

v3.5.0

Jul 23, 2023

New number input component

Today, we’re adding <NumberInput> as our new component. We were not really sure about our initial design. This is why we reached out to Twitter for a quick poll. Against our expectations, it felt like we brought together the entire design community on Twitter: We received more than 180 Twitter comments of users telling us how we should style the new component. In the end, Konstantin's suggestion won the race. It's always great to see how tiny details can lead to interesting discussions and let us connect to people around the globe with the same dedication to detail.

Release cover 3.5

New Components and Features

v3.3.0 & 3.4.0

Jul 3, 2023

New Date Picker component and select improvements

There a new Date Picker component to select a single date. We also merged PRs from our community, improving select components.

Fixes and Improvements

  • DatePicker: New DatePicker component which allow for single selecting dates
  • Single Select: Adding the functionality to clear state in Single Select component #508
v3.1.0 & 3.2.0

Jun 13, 2023

Fixes to pie chart and datepicker, new Button tooltip

We merged PRs from our community, improving the Button by adding a tooltip. We also improved the themeability of the donut charts' pie variant. There was also a minor DateRangePicker fix, plus upgrading our charts.

Fixes and Improvements

v3.0.0

Jun 8, 2023

Out of the blue. Introducing: Theming & Darkmode

Hello, Grüezi, Γεια σας. It’s the Tremor team coming to you live from around the globe. We were super busy the last weeks working on our next major release – bringing a bunch of new features people have been asking for a long time. In brief, we are adding:

  • Comprehensive global theming via tailwind.config.js

  • An out-of-the-box darkmode

  • A new tremor CLI helping you setting up projects faster

If you encounter any issue, feel free to message us on our Slack Community channel.

Important: Docs for V2 can be found here.

Release cover 3.0

Migration Info

  • Theming: If you use Tremor in an existing project, you have to add/extend your `tailwind.config.js` with Tremor's `tailwind.config.js`. See first bullet point below.
  • `tailwind.config.js`: Our theming works by extending the tailwind config theme. In order to get the correct styles, please see the tailwind.config.js example in the new Theming page in our docs.

    Action: Add Tremor's theme styles to your `tailwind.config.js` theme section.

    Attention: See Theming with Tremor for more.

  • Breaking Toggle: This component has been removed. The Tabs component now has two variants: "line" and "solid". The solid variant mimics the look of the Toggle component.

    Action: Replace <Toggle> and <ToggleItem> with <TabList variant="solid">. Note that the API for the tabs has changed significantly.

  • Breaking Tabs: The Tabs component and its API has been completely redesigned.

    Action: Replace <Tab> and <TabItem>, as well as the state logic (index and onIndexChange) with <TabGroup>, <TabList>, <Tab>, <TabPanels>, <TabPanel>. Please refer to the tabs documentation.

  • Breaking Dropdown: This component has been removed. Use the new `Select` component.

    Action: Replace <Dropdown> and <DropdownItem> with <Select> and <SelectItem> Note that the API for Select has changed.

  • Breaking DateRangePicker: API changed significantly.The value prop uses Object instead of Array. The select options now use children.

    Action: Replace the value array with the object.

    Action: Replace enableDropdown with enableSelect.

    Action: Replace dropdownPlaceholder with selectPlacehoder.

  • Breaking Select, SearchSelect, MultiSelectBox: The type of the value property has been changed to string. MultiSelectBox has been renamed to MultiSelect. Prop text has been replaced with a children property.

    Action: Cast the input for value to string

  • Breaking Grid: Properties with numCol have been renamed.

    Action: Replace <Grid numColsSm={2}> with <Grid numItemsSm={2}>

  • Breaking ProgressBar: Properties have been renamed.

    Action: Replace percentageValue with value

  • Breaking MarkerBar: Properties have been renamed.

    Action: Replace percentageValue with markerValue

  • Breaking DeltaBar: Properties have been renamed.

    Action: Replace percentageValue with value

  • Breaking CategoryBar: Properties have been renamed.

    Action: Replace percentageValue with value

    Action: Replace categoryPercentageValues with values

  • Breaking RangeBar: Has been removed. Use the MarkerBar with it's new minValue and maxValue props.

    Action: Replace RangeBar with <MarkerBar minValue={XX} maxValue={XX}>

Community PRs and quality of life updates

We merged two PRs from our community, improving the BarList and animations of our charts.

Fixes and Improvements

v2.8.0 & v2.9.0

May 26, 2023

Small improvements before the big release

Howdy, many pennies make a dollar. That's why we fixed some tiny details under the hood. The next changelog will create more buzz, trust us and stay tuned!

Fixes and Improvements
v2.6.0 & v2.7.0

May 18, 2023

New decimal option for charts and improvements to date range picker

A new clear allowing decimals in the charts axis. There is a new option to clear the selected date range in the picker.

Fixes and Improvements

  • DateRangePicker: Adds a enableClear prop to the component. This adds a clear button to reset the date range.
  • LineChart, BarChart, AreaChart: Adds a allowDecimals prop to the component. Adding the option to display the numbers in the Y axis, with or without decimals.
v2.5.0

May 12, 2023

Support for Next.js 13

All of Tremor's components now work gracefully with the latest version of Next.js. Thanks to Ben from our community.

v2.2.0 & 2.3.0

Apr 27, 2023

New chart Area and Line Chart properties

Minor fixes and updates to peer dependencies plus new curve types for our charts.

Fixes and Improvements

  • AreaChart: Adds a connectNulls and curveType prop to the component.
  • LineChart: Adds a connectNulls and curveType prop to the components.
  • SelextBox: Fixed a bug in the SelextBox' text input when focused, which lead to not being able to search or type.
v2.1.0

Mar 27, 2023

New disabled property and improved TextInput

This release adds a new disabled property some input components and password support for our textual input.

Fixes and Improvements

v2.0.0

Mar 12, 2023

🎉 Our major release is here: className exposure and full switch to Tailwind CSS

This major release is the first step towards a production-ready version of Tremor. Over the past few months, we have rewritten the library to make it fit for the future. We added the long-awaited exposure of className (#75) and support for other HTML attributes, enabling you to overwrite or extend our root styles with Tailwind CSS.

The improvements in this release resulted in removed properties (see migration guide below). This also means that Tailwind CSS has now become a prerequisite to using Tremor at full capacity (including our Blocks).

Release cover 2.0

Migration Info

  • If you use Tremor in an existing project remove the Tremor stylesheet import in the _app.js / _app.tsx file.

  • `tailwind.config.js`: With this release, you must add the path to the Tremor package in the content section in your Tailwind CSS configuration. If you use Tremor in an existing project, remove the Tremor stylesheet import in the _app.js / _app.tsx file.

    Action: Add './node_modules/@tremor/**/*.{js,ts,jsx,tsx}' in your `tailwind.config.js` content section.

    Attention: See Installation Guideline for more.

  • Breaking AreaChart, LineChart, BarChart, DonutChart: dataKey has been replaced with index.

    Action: Replace <AreaChart dataKey="date" /> with <AreaChart index="date" />

  • Breaking marginTop has been removed. To set margins with Tailwind CSS, use className instead.

    Action: Replace marginTop="mt-4" with className="mt-4"

  • Breaking height has been removed. To set height with Tailwind CSS, use className instead.

    Action: Replace height="h-72" with className="h-72" or className="h-[500px]"

  • Breaking yAxisWidth prop has been changed to take in a numeric pixel value instead of a Tailwind utility.

    Action: Replace yAxisWidth="w-12" with yAxisWidth= { 48 }

  • Breaking maxWidth has been removed. To set a maximum width with Tailwind CSS, use className instead.

    Action: Replace maxWidth="max-w-md" with className="max-w-md"

  • Breaking spaceX has been removed. To set the space between items, use className instead.

    Action: Replace spaceX="space-x-3" with className="space-x-3"

  • Breaking truncate has been removed. To truncate text, use className instead.

    Action: Replace truncate={ true } with className="truncate"

  • Breaking ColGrid: has been renamed to Grid

    Action: Replace <ColGrid></ColGrid> with <Grid></Grid>

  • Breaking Tracking: has been renamed to Tracker

    Action: Replace <Tracking /> with <Tracker />

  • Breaking Dropdown, SelectBox, MultiSelectBox, TabList, Toggle: The type of the value property has been changed to string .

    Action: Cast the input for value to string

  • Breaking Accordion, Card: shadow removed. Use className instead. Note that we provide a shadow by default. To remove shadows altogether, use className="shadow-none"

    Action: Replace <Card shadow={ true }></Card> with <Card className="shadow"></Card>

  • Breaking Badge, BadgeDelta, Callout, Button: text has been removed. Please use children instead. #81

    Action: Replace <Badge text="Your Text" /> with <Badge>Your Text</Badge>

  • Breaking Card: hFull has been removed. Use className instead.

    Action: Replace <Card hFull={ true }></Card> with <Card className="h-full"></Card>

  • Breaking Table, Metric: textAlignment has been removed. Use className instead. #135, #295, #318

    Action: Replace <TableHeaderCell textAlignment="text-left"></TableHeaderCell> with <TableHeaderCell className="text-left"></TableHeaderCell>

  • Breaking Grid: gapX and gapY has been removed. Use className instead.

    Action: Replace <Grid gapX="gap-x-6"></Grid> with <Grid className="gap-x-6"></Grid>

  • Breaking Block: This component has been removed. Use a `div` instead.

    Action: Replace <Block truncate="true"></Block> with <div className="truncate"></div>

  • Breaking Footer: This component has been removed. Use a `div` with a border instead.

    Action: Replace <Footer height="h-20"></Footer> with <div className="h-20 mt-6 pt-4 border-t border-slate-200"></div>

v1.7.0

Feb 3, 2023

Quality of life improvements to the Date Range Picker

This release adds two new features to the Date Range Picker component. There is a new locale property, helping you in bringing your dashboard to more users around the world. We also added a dropdownPlaceholder property and added support for an endDate to our options prop.

New Components and Features

  • DateRangePicker: Add i18n Support to support multiple languages. For this, use the new locale prop. PR #292, #205
  • DateRangepicker: Added endDate key to the options array object in order to support arbitrary date ranges in the dropdown options instead of only relative ones. Discussed here Disc #275, #86
  • DateRangepicker: A new dropdownPlaceholder prop allows for setting the dropdown placeholder text separately.
v1.5.0

Jan 15, 2023

Improvements to the Button component

We merged the Button and ButtonInline components. Hence, this release adds two new features to the resulting Button component. A variant property for styling as well as the option to pass text child elements.

Fixes and Improvements

  • Button: Added new variant property, replacing the importance property for button styling. PR #273
  • Button: Added new option to pass text as a child element, deprecating the text property.
  • ButtonInline: Is now deprecated. Please use Button with variant set to 'light'
v1.4.0

Jan 4, 2023

Mastering the basics

We are excited to announce that our input components have undergone some updates! We have added a variety of new features to improve accessibility and control.

Release cover 1.4

Fixes and Improvements

  • Added a new value and property enabling a controllable state.
  • Added new onValueChange property to replace handleSelect (handleSelect is deprecated)
  • Enabled KeyListeners, e.g. ESC key to dismiss an opened Dropdown and Arrow Up/Down to skim through options.
  • Added defaultValue for uncontrolled mode
  • Added id property
  • Added a new DateRangePicker component which will replace the current Datepicker (Datepicker is deprecated)
  • It supports a controlled and uncontrolled state, through the value and the defaultValue properties. The input format is a tuple in the following format: [startDate, endDate, dropdownOption (optional)]
  • The default dropdown options can be replaced through the options property
v1.3.0

Dec 15, 2022

Text input is finally here!

After a long wait, the text input component is finally available. Along the way we also added some improvements to existing components.

Release cover 1.3

New Components and Features

Fixes and Improvements

v1.2.0

Nov 29, 2022

Celebrating our first community-built release

This release is almost solely built on issues and pull requests created by our community. It features new props of our existing components to build cooler stuff and cover new edge cases. Thank you eykrehbein, dmytro-tinybird, souravmondal93, jelleag, and bernsno for contributing.

Release cover 1.2

New Features

  • Donut Chart: Added variant property to select between a pie or donut chart
  • Bar List: Added optional href key in data to incorporate links
  • Area Chart / Bar Chart / Line Chart: Added optional autoMinValue property to adjust the minimum value in relation to the magnitude of the data
  • Area Chart: Added optional stack to cumulate the chart data visually
  • Datepicker: Added the ability to select a single date (No idea how we could have missed this)
  • Datepicker: Added the relative filter option for today tdy
  • Buttons: Added loading state with optional loading and loadingText property. If loading is enabled, a spinner is shown which can be complemented by a loadingText
v1.1.0

Nov 4, 2022

New chart component, icon support in Tab and Bar List, enhanced Datepicker and Button props

You asked, we delivered: the donut chart. Our newest component comes with neat features, like a sum that is automatically calculated and a tooltip your users will love. We also tweaked our existing components. Our buttons now have a disabled variant and you can now provide a default date range in the datepicker. More fixes summarized below.

Release cover 1.1

New Components and Features

  • Donut Chart: Display the relationship of parts data to the whole
  • Button and Button Inline: Added optional disabled property to set the status of a button to disabled
  • Datepicker: Added optional defaultRelativeFilterOption property to set a default relative date selection on render
  • Tabs: Added optional icon property to insert an icon in a tab
  • Bar List: Added the ability to include an icon in your data array via an icon key

Fixes and Improvements

  • Datepicker: Clears relative selection when absolute dates are selected
  • Datepicker: Prevent defaultStartDate and defaultEndDate to exceed minDate and maxDate respectively
  • Datepicker: Prevent modal from exceeding viewport
v1.0.11

Oct 24, 2022

Fixed a top margin issue in Lists

This release fixes one issue regarding the marginTop property when using a list

Fixes and Improvements

  • Fixes to list element specificity PR #146
v1.0.10

Oct 23, 2022

Improvements to the color mapping used in Charts

This release fixes one issue regarding Chart categories color mapping

Fixes and Improvements

  • Ensures that colors are always mapped to the correct categories in Legend and Tooltip #115
v1.0.9

Oct 22, 2022

Minor fixes to the SelectBox and Barlist

This release fixes two issues regarding SelectBox and BarList components

Fixes and Improvements

  • Fixes issue how to use SelectBox and MultiSelectBox in forms #122
  • Fixed BarList issue where two children with the same key are encountered #117
  • Added type="button" to all HTML button elements
  • Moved resize-observer-polyfill module to devDependencies
  • Fixed styling issue of ArrowHeadHeadDownIcon in the SelectBox
v1.0.8

Oct 20, 2022

Changes to the global CSS styling

We eliminated the global CSS styles which had caused issues for some users. With this release the CSS styles are now scoped to Tremor components only, thus any CSS conflicts in existing projects should be resolved.

Fixes and Improvements

  • Fixed an issue where global CSS styles were overwritten