DEV Community

Emrah KONDUR
Emrah KONDUR

Posted on

Simplifying Chart.js Integration with RazorKit.ChartJs

When building dynamic web applications, visualizing data in the form of charts is often essential. Chart.js is one of the most popular JavaScript libraries for creating interactive charts. However, integrating it with Razor Pages in .NET applications can sometimes feel cumbersome, especially when you want to maintain a clean and fluent code structure.

That’s where RazorKit.ChartJs comes in. This project simplifies the integration of Chart.js into Razor views, making it easier for developers to create powerful charts using a fluent builder pattern.

What is RazorKit.ChartJs?

RazorKit.ChartJs is a Razor helper designed to wrap Chart.js functionalities. It provides a streamlined way to create charts directly in your Razor views using a fluent API. Whether you’re using Line, Bar, or other chart types, you can easily construct the chart configurations in a concise and intuitive manner.

This library was built with simplicity and flexibility in mind, allowing developers to focus more on their application’s functionality and less on manually managing JavaScript or chart configurations.

Key Features

  • Fluent API: Create Chart.js charts using a fluent builder pattern. Each part of the chart can be customized in a chainable, readable format, making your code cleaner and easier to understand.
  • Seamless Integration: RazorKit.ChartJs seamlessly integrates with Razor pages, which means you don’t need to manually write complex JavaScript code to configure your charts. This reduces the potential for errors and improves productivity.
  • Ease of Use: You don’t need to be a JavaScript expert to use RazorKit.ChartJs. With a simple, intuitive API, creating charts becomes almost as easy as writing Razor syntax.
  • Customization: RazorKit.ChartJs exposes various customization options, such as chart types, data sets, labels, and more. You can easily tweak the look and feel of your charts without diving into complex JavaScript.

How to Use RazorKit.ChartJs

Step 1: Install the Package

You can easily add RazorKit.ChartJs to your project by installing it from NuGet. Simply run the following command in your NuGet Package Manager console:

Install-Package RazorKit.ChartJs
Enter fullscreen mode Exit fullscreen mode

Alternatively, you can add it directly via the Package Manager GUI in Visual Studio.

Step 2: Create Your First Chart

Once the package is installed, you’re ready to start creating charts. Let’s create a simple line chart in your Razor view. See doc:

@(Html.Chart("canvasId")
.Data(d => d
    .Labels("January", "February", "March", "April", "May", "June", "July")
    .Datasets(ds =>
        ds.Bar()
        .Label("Bar Chart")
        .Data(65, 59, 80, 81, 56, 55, 40)
        .BackgroundColors("rgba(255, 99, 132, 0.2)", "rgba(255, 159, 64, 0.2)")
        .BorderWidth(1)
    ))
.Options(o => o
    .Scales(s => s.AxisId("y").BeginAtZero(true)))
.Render())
Enter fullscreen mode Exit fullscreen mode

Image description

Why Use RazorKit.ChartJs?

1. Cleaner Code
RazorKit.ChartJs minimizes the need for separate JavaScript files to handle chart creation. The fluent API allows for cleaner, more readable code, keeping everything in the Razor view.

2. Quick Setup
Unlike manually setting up Chart.js, where you need to define JavaScript arrays, options, and charts, RazorKit.ChartJs handles the heavy lifting for you. This means less configuration and faster development time.

3. Consistency Across Projects
Once you’re familiar with the API, it becomes second nature to integrate and customize charts in any project. RazorKit.ChartJs ensures consistency, making it easier to maintain your codebase across multiple projects.

Conclusion

Whether you’re a .NET developer looking to quickly add visualizations to your Razor Pages or someone who prefers a cleaner approach to integrating JavaScript libraries, RazorKit.ChartJs provides a simple and efficient way to work with Chart.js. It reduces the complexity of chart configuration and allows you to create interactive, dynamic charts with ease.

Check out the RazorKit.ChartJs GitHub repository for full documentation, installation instructions, and more examples.

Happy coding!

AWS Q Developer image

Your AI Code Assistant

Generate and update README files, create data-flow diagrams, and keep your project fully documented. Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE

Top comments (0)

AWS GenAI LIVE image

Real challenges. Real solutions. Real talk.

From technical discussions to philosophical debates, AWS and AWS Partners examine the impact and evolution of gen AI.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay