Sign inGet started

Changelog

September 19, 2024

Big number chart

image (12).png

Big number chart

We all love a good bar chart or a scatter plot— they're great for deep dives into data. But sometimes, you just need to cut to the chase and highlight a single, crucial metric for your stakeholders. That's where our new big number chart comes in. It's the simplest way to put your most important numbers front and center in your apps and dashboards.

CleanShot 2024-09-17 at 13.18.26@2x.png

With the big number chart, you can give your metric a clear title, select the exact variable you want to showcase, and format the number just the way you like it.

2024-09-18 13.44.02 (1).gif

Want to show progress or change over time? You can also add a comparison to visualize how this number differs from a previous value, making trends instantly noticeable.

2024-09-19 08.53.10 (1).gif

It's a straightforward tool designed to make your key data points stand out without any fuss. Give it a try and see how easily you can communicate what's most important.

Improved chart filtering in apps

We’ve rolled out a small update to enhance the interactivity of our charts in apps. You can now use on-chart filtering to select data points directly, in addition to the existing conditional filters. This change aims to make it easier for your audience to explore the data more effectively and focus on what interests them most.

2024-09-19 09.15.56 (1).gif

Colorful data tables & faster app startup

image (9).png

Conditional formatting for data tables

Tables are essential tools for exploring data and can also serve as powerful visual aids in your published apps and dashboards. But let’s be honest—poring over plain tables to find what matters isn’t exactly a pleasant experience for your stakeholders. With the release of conditional formatting, you can now spice up your tables and make key results stand out with beautiful colors.

2024-09-03 09.13.34 (1).gif

Coloring tables is easy: click on the Format button at the bottom right corner of your data table. In the popup window, you can define rules to dress up cells with either a single color or a color scale automatically mapped to the values in the selected columns. You can even combine multiple rules, and if they overlap, the last applicable rule will be applied.

These options give you the freedom to highlight what’s important and add some flair to your tables—whether in notebooks or published apps. We can’t wait to see how you’ll use this feature to make your data pop!

Better first-run experience for apps

We've rolled out a series of improvements to make the first interaction with your apps faster and more predictable.

First up, apps now start much quicker! When you visit an app, we're automatically warming up the machine in the background, so you'll spend less time waiting when you run the app or make changes to inputs for the first time. How much faster? It depends on your app, but we've already seen up to a 50% reduction in time to interactivity across many apps.

Next, we've streamlined the app configuration panel and added new options to give you better control over your app's execution logic and data freshness.

In App run settings, we've merged and simplified previous options to give you more clarity on how input changes will affect your app. You can choose between automatic and manual execution modes and decide whether to run only affected blocks or the whole notebook. The new default is automatic execution of affected blocks only, which should provide the best performance for most interactive apps.

CleanShot 2024-09-05 at 14.15.49@2x.png

In the App data section, we've made similar simplifications and added some extra convenience options. Run app from scratch always ensures a clean start. We've introduced a new control (Run app on open) so your app can automatically run whenever someone visits it. Show last run results helps you pre-populate results from the latest notebook run. If you opt for this, you can also schedule the notebook directly from this config, making it easier to keep app data fresh according to your custom schedule.

CleanShot 2024-09-05 at 14.22.42@2x.png

Auto AI with SQL powers

image (8).png

Auto AI: now using SQL blocks

We've taught Auto AI a new trick! It can now use our native SQL blocks to query your connected data warehouses / databases directly.

With this update, Auto AI gains the ability to see and interact with your data integrations. Give it a task and Auto AI will smartly combine SQL for fetching data with Python for processing and visualization. The result? You get a complete package including SQL queries, Python code, and explanatory text all in one go.

This means Auto AI can now handle full analytical tasks from start to finish. No more switching between tools – just ask Auto AI, and it'll take care of the rest.

Watch our quick demo video below to see it in action.

We hope this new feature boosts your productivity! As with all AI updates, it may not work perfectly for every use case, so we'd love to hear your thoughts. Share your suggestions on our Product Portal or report issues by clicking 👎 when reviewing your AI outputs.

Not interested in SQL generation? No worries. We've added an option in Auto AI settings to control which block types appear in your outputs.

CleanShot 2024-08-13 at 15.39.49.png

GitHub integration improvements

Untitled (70).png

Two-way GitHub integration

We've significantly enhanced our GitHub integration to make collaboration even smoother. Originally, we designed it to easily import existing code from your GitHub repository to Deepnote. While pushing changes back to GitHub was possible, it required using the integrated terminal interface in your project, which could be inconvenient. Now, we're excited to introduce a more streamlined process with two-way Github integration!

With our latest update, committing and pushing changes to your cloned repo is as simple as clicking a button. Here's how it works:

  1. Navigate to your synced GitHub repo in Deepnote.
  2. Click on the options menu.
  3. Select Commit & push.
  4. In the pop-up window, add your commit message and description.
  5. Push your edits directly to the origin branch.

By removing the need for terminal commands, this update streamlines your version control process.

But wait, there's more! We've added several other powerful Git operations to support your workflow:

  • Switch between branches with a simple click on the branch name in the dropdown menu.
  • Easily pull the latest changes from the remote repository to keep your local copy current.
  • Need a clean slate? You can now re-clone the repository with just one click.

These features work together to provide a comprehensive Git experience right within Deepnote.

Want to see these new capabilities in action? Check out our demo video!

Automated notebook exports to GitHub

Backing up your notebooks to your GitHub repository is more convenient than ever!

Our enhanced Export to Git feature, found in the Version history tab, now offers two key improvements to streamline your workflow.

First, you can now enable automatic commits for all notebooks in your project. When activated, this option automatically pushes a commit to your GitHub repository whenever an autosave occurs in your project. Since Deepnote autosaves every 10 minutes or after periods of inactivity, this feature ensures your notebooks and GitHub repo can stay in sync without relying on manual commits.

Secondly, we've introduced a new option to control the inclusion of outputs in your notebook exports. This feature is designed with data security in mind. By default, outputs are not included in exports, which helps prevent any accidental leakage of sensitive information. However, if you work with outputs that you want to preserve in your exports, you can easily do so. Simply enable the Include outputs in the exported notebooks option, and your results will be retained, ensuring they look identical when re-imported.

github export (1).png

Auto AI: customizable block types

We've shipped a small but mighty improvement for Auto AI to give you more control over its output. Now, you can specify exactly which types of blocks you want Auto AI to add to your notebook. For a more efficient, code-focused output, simply click on Settings in the prompt bar and deselect the Text option.

Need more textual explanations? No problem – you can change this setting anytime to suit your task at hand.

github export (1).png

Embedded apps & conditional filters for data tables

Untitled (69).png

Embedded apps

We're excited to announce a powerful new feature: the ability to embed Deepnote apps in third-party applications. With this release you can seamlessly incorporate your reports, dashboards, and other data apps into platforms like Notion and Confluence, bringing your insights directly to where your consumers spend most of their time.

Embedding your app is easy. Simply press the Embed button in the app editor sidebar and turn on the embedding toggle. Once activated, just copy the displayed URL and paste it into your preferred application, and voila! Your app is now ready to shine wherever you choose to embed it.

Please note: your app sharing needs to be set to either Anyone with a link or Public for embedding to work. Support for private links is coming soon!

embed (1).png

The embedding capability can support some pretty powerful use cases, such as:

  • Sharing live, interactive data visualizations with stakeholders who may not have direct access to Deepnote
  • Integrating up-to-date analytics into your team's workflow and documentation
  • Maintaining a single source of truth for your data, while distributing insights across multiple platforms

Learn more in our 👉 docs.

Conditional filters for data tables

Tired of writing complex code every time you need to filter your data tables? We hear you. That's why we’ve just introduced conditional filters for data tables – a feature that lets you slice and dice your data without typing a single line of code.

Here's how it works: just click the Filter button in the block actions menu, pick the column you want to filter, choose an operator and value, and hit Apply. Your table will update instantly, showing only the rows you need. Alternatively, if you want to filter on a specific column, you can just click on the column header and press Filter.

Need to tweak your filter? No problem. You can easily add, remove, or modify filters using the Filters list, making data exploration faster and more intuitive than ever.

dataframe-filters-optimized.gif

And here's the cherry on top: we've brought this same filtering capability to apps! Now your consumers can dive into tabular data on their own terms, focusing on whatever aspects interest them – without being constrained by pre-set filter options or having to request changes from the app creators.

AI code completion for free & notebook usage insights

Untitled (68).png

AI code completion for Free users

Our AI-powered code completions have significantly boosted productivity for customers on our paid plans. Many have found these 'ghost texts' so indispensable in speeding up tedious coding tasks that they’ve become an essential part of their workflow. Due to the success of this feature, we are now making it available on all our plans! 🎁

Starting this week, AI code completions are accessible to users on our Free and Education plans without any restrictions. Simply start typing in a code or SQL block, and you will see real-time code suggestions. To accept a suggestion, press Tab. These code completions are blazing fast and context-aware, tailoring suggestions to your notebook's content.

Pro tip: For even smarter completions, try adding instructions in text blocks or code comments.

2024-06-25 14.39.49 (1).gif

We hope you will all enjoy this added boost to your coding efficiency!

Check out our 👉 docs for more details.

Notebook & apps usage insights

Have you ever wondered if your hard work in analysis is making an impact? Or if your latest interactive dashboard is regularly viewed by key stakeholders? With our new notebook notebook usage analytics feature, you can now easily answer these questions.

To view usage insights for your notebook, click on the context menu of the specific notebook and select View analytics. Alternatively, you can find the same button in Project settings in the upper right corner. If the current notebook is published as an app, you can also click on the View analytics button on the top band or in the app editor sidebar.

2024-06-25 10.14.41 (1).gif

The displayed insights include a timeline of daily visits for both the notebook and the app, as well as a record of daily executions for the app. You can also see a breakdown of individual visits to your notebook and app, allowing you to quickly identify if you’re reaching your target audience. Additionally, you can change the analyzed timeframe in the upper right corner to look at different periods.

Discover more in our 👉 docs.

Advanced charts filters & AI shortcuts

Untitled (64).png

Conditional filters on charts

Our chart blocks have just received a significant boost in interactivity: you can now apply conditional filters to quickly drill down into your data points of interest without writing any code. Simply click the Filter button in the block actions menu, select the column you wish to filter, choose an operator and a value for your condition, and press Apply. The chart will update instantly!

2024-05-30 11.03.51 (1).gif

The applied filters are always added to the Filters list, making them easy to remove or modify. You can also combine multiple conditional filters - just press the plus button in the Filters list to add a new filter for more complex filtering logic.

add filter (1).png

The new conditional filters work seamlessly with on-chart interactive filtering. Select a range on your charts, and you can choose to Keep or Exclude the selected values. This functionality also works by clicking on your legend items.

2024-05-30 11.24.05 (1).gif

The best part: conditional filters are now also available in Apps! By utilizing filters, your audience can easily slice and dice the plotted data themselves, enabling them to focus on particular aspects of interest. This greatly extends the self-serve capability of your Apps, making them more dynamic and eliminating the need to anticipate all filtering needs in advance.

app filters (1).png

Quicker access to Deepnote AI

We've made it quicker and easier than ever to work with Deepnote AI, even without lifting your hands from the keyboard:

  • You can trigger Deepnote AI directly from the block adder menu for faster access.
  • Simply type /ai into any text block to activate Deepnote AI instantly.
  • Use the new keyboard shortcut Cmd+Shift+A (Mac) or Ctrl+Shift+A (Windows & Linux) to fire up Deepnote AI from any block!
CleanShot 2024-05-30 at 14.16.37 (1).png

Iterative AI editing & faster AI responses

Untitled (63).png

Iterative AI editing

Asking Deepnote AI to edit the content of a Python or SQL block is a powerful feature that can significantly enhance your ability to modify and debug your code. Often, achieving the optimal outcome involves iterative changes: you request a modification, run the code, and then realize further adjustments are needed. This back-and-forth interaction with the AI is typical when working with LLMs. However, until now, it required a workaround in Deepnote. Previously, you could only request a single edit at a time, meaning multi-step changes necessitated duplicating the given block and starting anew with a fresh prompt.

We’re excited to introduce iterative AI editing to streamline this workflow. Now, when you request an AI edit in a code/SQL block and receive a suggestion, you can immediately type in a new prompt as a follow-up. The AI will process this new prompt and provide another edit suggestion. As always, you can instantly run the code for these suggestions to observe how they impact your outputs.

Each AI follow-up suggestion is added as a new item to your edits history list. If you wish to revert to a previous stage in your editing flow, you can simply click on the desired step from the list, returning the block to that specific state. This feature allows you to effortlessly compare results across different prompts and continue with the most promising options.

This iterative editing flow essentially functions as an isolated mini-chat with the AI, ensuring that all the context of your prompts and AI outputs is preserved during your editing. The significant advantage is that you don’t need to repeatedly rewrite your original prompts; you can simply use short instructions as you would in a chat. For instance, if something doesn’t quite work, you can just say "try another option," and the AI will understand how to proceed.

The new editing flow can also help you keep your notebook more organized! Working with generative AI is inherently experimental, and maintaining the in-between stages in your notebook can create a mess of duplicated blocks. With iterative editing, you gain a safe drafting space, allowing you the freedom to commit only the final results to the notebook, ensuring it remains clean and focused for others to see.

See the new AI editing features in action in the video below!

Faster AI responses

You might have noticed that the speed of AI code generation, editing and fixing has significantly increased! This improvement is due to our switch to the latest and most capable OpenAI model. We hope you enjoy the 2x speed boost, which pairs especially well with the new iterative editing flow!

Reactive notebooks & AI in chart blocks

Untitled (62).png

Reactive notebook execution

Traditional data notebooks are executed block-by-block, allowing for a block to be executed out-of-order or even repeatedly. While this is very powerful, it also has the potential to create hidden state that can complicate data reproducibility and clarity.

One common problem is the potential 'staleness' in your notebook. For instance, if you update data at the beginning of your notebook but don’t rerun the whole thing, later sections might still be using old, outdated data and outputs (e.g. a chart that doesn’t reflect your latest filtering logic). Typically you would circumvent these problems by manually re-running your whole notebook (or larger sections of it), which can be an inefficient (and still error-prone) solution.

To resolve these core issues, we've introduced reactive execution mode in our notebooks. Simply put, reactive mode makes notebooks similar to Excel spreadsheets — you just input the data and code, and the whole document updates itself accordingly. No need to click to manually run blocks. This makes reactive notebooks easier to work with and reason about.

To activate this mode, simply click on the option dropdown next to the Run notebook button and select Block and dependent blocks.

reactivity (1).png

Once enabled, reactive execution becomes the default mode. This means that when you execute a specific block, all downstream blocks with dependent variables will automatically be re-executed. For instance, if you update an input block, any other blocks that depend on this input will automatically update. Similarly, if you alter the filtering logic on a dataframe, any charts visualizing this dataframe will automatically refresh to reflect the changes.

Reactive execution mode is a major enhancement to the core notebook experience, boosting your efficiency and helping to ensure that your data and results always remain up-to-date.

Check out this video to see it an action! You can also discover more details in our 👉 docs.

AI in chart blocks

With our latest update to Deepnote AI, you can now generate or edit visualizations in your chart blocks by using natural language. Just type in your question or the specifics of the visualization you need, and hit Submit. In seconds, you'll see a suggested chart. You can approve this suggestion by clicking Done or reject it with Undo.

2024-04-25 13.36.54 (1).gif

The suggested chart comes fully configured, serving as an ideal starting point. From there, you can fine-tune the details to better suit your needs. If you need further modifications, just submit a new prompt, and Deepnote AI will adjust your existing chart accordingly.

2024-04-25 13.45.18 (1).gif

Please note that Chart AI is currently in Beta. While we are excited to offer this feature, some functionality may not be perfect yet. We welcome your feedback to improve the service—use the built-in 👎 button or share your thoughts on our product portal.

For more details on chart blocks, visit our 👉 docs.

IAM roles for S3 and Redshift, notebook locking & custom chart tooltips

Untitled (59).png

Role-based authentication for S3 and Redshift

We've introduced a new, secure way to connect to your S3 buckets and Redshift data warehouse - now available through IAM role authentication! This feature leverages AWS's native role-based access control, providing a robust security enhancement over traditional static keys. By using IAM roles, you can benefit from:

  • Automatic credential rotation: temporary credentials that reduce the risk of long-term exposure.
  • Simplified permissions management: enables more precise control over S3 resources, adhering to the principle of least privilege.
  • Eliminated need for static credentials: decreases the potential for security breaches.
IAM (1).png

To set up your connection, choose the “IAM role” option in the "Authentication" section, input the Amazon Resource Name (ARN) of the role you wish to use, and update the trust policy as outlined. This process applies similarly for both S3 buckets and Redshift clusters.

For step-by-step instructions and more details, visit our S3 and Redshift docs.

Notebook locking

We’ve all been there - you go to run an app or a notebook, and it doesn’t work because someone accidentally changed something they shouldn’t have. To prevent these frustrating mishaps and ensure your work remains stable, we’re introducing notebook locking.

Untitled (57).png

Simply enable the lock from the notebook’s context menu. While locked, the notebook can still be run, shared, or commented on—just no edits allowed. When updates are necessary, users can unlock it, make their changes, and rest assured that it will automatically lock again afterward.

Learn more in our docs.

Custom tooltips on charts

Ever needed to show just a bit more information on a chart without cluttering the entire visualization? Our new custom tooltips feature is here to help. Now you can enrich your charts by selecting additional data points to display from any column in your plotted dataframe—not just those configured on the chart.

It’s perfect for highlighting more information for an unusual data point on a scatterplot or adding context with an extra metric on your bar charts, all without overwhelming your audience.

Simply go to the Display tab and choose the columns you wish to display in the Data selector in the Tooltips section.

custom tooltips (1).png

Scheduled projects view

Stay on top of your automated workflows with our new scheduled project view! This handy new section, located in the workspace navigation sidebar, provides a clear overview of all projects in your workspace that have automation set up, showing exactly when each project is scheduled to run.

schedule (2).png

SQL AI Beta release

SQL AI.png

Writing SQL queries is often one of the first steps in data analysis. With our latest upgrade to Deepnote AI, it can now assist you in getting this essential task done much more easily. Simply click on the AI button in a SQL block and ask a question in plain language - Deepnote AI will interpret it and provide you with a suggested SQL query you can run immediately.

Watch this 2-minute demo to see SQL AI in action for yourself!

sql_ai-generate_faster.gif

You can also use the AI button to help with editing an existing query or fix issues with errors you may encounter.

sql_ai-edit_faster.gif

As with all AI features, the right context is key for accurate suggestions. Deepnote AI utilizes the content of your notebook along with the schema of your connected data warehouse. To ensure the AI is incorporating the most updated schema information, you may want to refresh the given integration’s schema. It might take a minute or two for the updated schema to propagate to Deepnote AI, especially if you are connecting to an integration from your Deepnote workspace for the first time.

sql_ai-schema_refresh.gif

Once that’s done, Deepnote AI will be able to take advantage of your schema structure to compose queries with the relevant table and column names. (It may take a few minutes after refreshing the schema to make this information available).

If you prefer to use SQL for data manipulation of Python variables, Deepnote AI can also assist you in that. The AI button is available in Dataframe SQL blocks as well, so you can ask for the AI’s help in writing SQL for any downstream filtering and aggregations.

sql_ai-dataframe_sql-faster.gif

We hope that SQL AI will make query writing a more efficient, smoother process for you, but as of now, this is a Beta release with some limitations to note.

  • Schemas can get very large, sometimes including thousands of tables. Deepnote AI searches for the relevant parts, but it may not always come up with the right table/columns names for you. If you notice this pattern, try providing guidance in the notebook or in the prompt (e.g. mention in a text block to ‘always use table order_details for order attributes’). This kind of information can greatly help steer the AI to get the right answers for you. Check out our docs for more prompting tricks and tips.
  • SQL AI is only available to assist you in one SQL block at a time. When you use Auto AI to generate multiple blocks for you, SQL blocks won’t be added.
  • Supported integrations include BigQuery, Snowflake, PostgreSQL, Redshift, Athena and Clickhouse, MySQL, MariaDB and Microsoft SQL Server.

We are actively improving SQL AI to make the suggestions more accurate and relevant for you. Your feedback is crucial for us: please let us know if you encounter issues by clicking on the thumbs down button and leaving a note!

feedback.gif

Be sure to check out our docs to learn more.

Footer

Solutions

  • Notebook
  • Data apps
  • Machine learning
  • Data teams

Product

Company

Comparisons

Resources

  • Privacy
  • Terms

© Deepnote