Systems | Development | Analytics | API | Testing

Honeybadger

Visualizing Ahoy analytics in Rails

At Honeybadger, we use Ahoy for first-party analytics in Rails. Ahoy is excellent for developers because it lives in your Rails application alongside your other data and code. Want to answer a specific question about your product or website visitors? It's just one ActiveRecord query away: Ahoy also works with Chartkick and Groupdate to visualize your data.

Building reusable UI components in Rails with ViewComponent

Reusable UI components are user interface widgets or elements that can be used in various places in a web project. These components are typically small and created for a specific functionality. Typically, you write the code once and then import the UI components wherever needed. For example, you can create a card component that displays certain information or have a navigation bar that will appear at the top of all web pages. Such UI elements can be imported and added to your desired web page.

Password hashing in Node.js with bcrypt

In the digital age, security is of paramount importance, especially when it comes to user data and credentials. As developers, we must ensure that sensitive information, such as passwords, is stored securely to prevent unauthorized access and potential breaches. One of the key techniques employed to enhance security is password hashing, and in the realm of Node.js development, the bcrypt library stands out as a robust solution for this purpose.

Processes and Artisan commands in Laravel

The command-line interface (CLI) can be a powerful tool for developers. You can use it as part of your development workflow to add new features to your application and to perform tasks in a production environment. Laravel allows you to create "Artisan commands" to add bespoke functionality to your application. It also provides a Process facade that you can use to run OS (operating system) processes from your Laravel application to perform tasks such as running custom shell scripts.

Composite primary keys in Rails

Primary keys are vital in the design of a relational database. They are crucial in uniquely identifying records. For example, if you have a table of users, you will need to identify each record uniquely. This is where primary keys are used. Primary keys are usually single columns that auto-increment. There might be cases where you'll need a combination of column to serve as the primary key - this is where composite primary keys become helpful.

Deploy a Rails app to a VPS with Kamal

Ruby on Rails has always been at the forefront of developer productivity, and building robust, highly interactive web applications has never been easier. Rails has been accurately described as the one-person framework. However, building your app is only half the battle. The other half is publishing it for others to use. Unfortunately, being able to deploy your application has always been an afterthought for most developers.

Serialization and deserialization in Node.js

Serialization and deserialization are two fundamental processes that play a pivotal role in achieving this goal, especially within the context of Node.js. Serialization and deserialization are the unsung heroes behind the scenes, responsible for converting complex data structures into formats that can be easily stored, transmitted, and reconstructed when needed. In Node.js apps where data is at the core of application functionality, a solid understanding of these processes is crucial.

Securing Laravel forms using Cloudflare's Turnstile CAPTCHA

Security is an important aspect of any web application. It helps to ensure that your application is protected from malicious actors who may want to cause harm to your application or users, as well as bots trying to spam your forms with fake submissions. One common entry point, especially for automated scripts, is to submit data to publicly-accessible forms on your application.

How to build your own user authentication system in Rails

When building an app, you'll probably need to handle user authentication in one form or another. In Rails applications, several pre-built libraries and gems make it a breeze to build user authentication including well-known libraries like Devise, Doorkeeper and OmniAuth. These libraries work well out of the box, but there's a caveat, as developers must follow certain configuration and design rules for each library.

Managing PDFs in Node.js with pdf-lib

In today's digital age, Portable Document Format (PDF) files have become an integral part of how we share and manage documents. Regardless of whether it's contracts, reports, or presentations, PDFs provide a consistent and reliable way to present information across different platforms and devices. As developers, being able to manipulate and generate PDFs programmatically is a valuable skill. This is where the pdf-lib library for Node.js comes into play.