Through the pipeline: An exploration of front-end bundlers

I really like the kind of tech writing where a fellow developer lays out some specific needs, tries out different tech to fulfill those needs, and documents how it went for them.

That’s exactly what Andrew Walpole did here. He wanted to try out bundlers in the context of WordPress themes and needing a handful of specific files built. Two JavaScript and two Sass files, which can import things from npm, and need to be minified with sourcemaps and all that. Essentially the same crap we were doing when I wrote Grunt for People Who Think Things Like Grunt are Weird and Hard eight years ago. The process hasn’t gotten any easier, but at least it’s gotten faster.

The winner for Andrew: esbuild through Estrella.

Direct Link to ArticlePermalink


The post Through the pipeline: An exploration of front-end bundlers appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

How KubeMQ Customers Build Scalable Messaging Platforms With Kubernetes Operators

Over the last several years, the adoption of Kubernetes has increased tremendously. In fact, according to a Cloud Native Computing Foundation (CNCF) survey, 78% of respondents in late 2019 were using Kubernetes in production. Leveraging Kubernetes allows organizations to create a management layer to commodify clouds themselves and build cross- or hybrid-cloud deployments that hide the provider-specific implementation details from the rest of the team.

One crucial part of the Kubernetes ecosphere is Operators — a tool initially introduced by CoreOS in 2016 to utilize the Kubernetes APIs themselves to deploy and manage the state of applications. Operators are a critical part of the deployment and operation of applications in a cross/hybrid environment. They can help manage and maintain state across a federated Kubernetes deployment (multiple Kubernetes clusters running together) or even across clusters.

Apache Cassandra Horizontal Scalability for Java Applications [Book]

The business world grows exponentially with several opportunities and companies competing with each other. The dispute between customers is something that is no longer defined by the company's location, but by its applications' response time. Several studies reveal that millisecond improvements are enough to acquire new customers and retain existing ones, in addition to overcoming the competition.

In this battle for milliseconds, several paradigms and frameworks have been created. All this improvement, however, would be useless if the persistence of information was still the bottleneck.

Gutenberg 10.1 Enhances Reusable Blocks, Updates Social Icons Spacing Options, and Normalizes Image Block Toolbar

Gutenberg 10.1 landed yesterday with several new features, many of which focused on improvements to the interface and user experience. Users can now control the justification of items in the Social Icons block. The new release also enhances the UX for creating reusable blocks, groups the Image block toolbar controls, and introduces categorized template parts in the site editor.

The development team corrected two dozen bugs for this release. As usual, they continued to polish the site-editing experience, which should land in WordPress later this year.

One of the better improvements to the UX is with the dragging performance for the focal point picker. Users can test the Cover or Media & Text blocks to see it in action.

Spacing Options for Social Icons and Buttons

Adjusting the spacing between the Social Icons items in the block editor.
Adding space between items in the Social Icons block.

The Gutenberg development team added the justification toolbar control to the Social Icons block. This allows users to determine how they want their social links to display. The following are the current justification options:

  • Justify items left
  • Justify items center
  • Justify items right
  • Space between items

The Buttons block now has the space-between option, which gives it and Social Icons the same flexibility as the Navigation block.

The Social Icons block still has left, right, and center alignment options too. This is separate from the justification setting. In comparison, the Buttons and Navigation blocks only have wide and full alignments if the active theme supports them. However, the Social Icons block does not have those options. These blocks’ alignments should all have parity unless I am missing some crucial reason for the difference.

Reusable Blocks Updates

Modal overlay for naming a reusable block.
Modal for naming, saving, or canceling a reusable block.

The development team continues to refine the reusable blocks feature. Version 10.1’s highlight is a new modal that pops up when first creating a reusable block. It has a simple title field along with buttons for canceling or saving. The cancel feature is also a new addition.

This modal clears up a problem introduced in Gutenberg 9.7. That release moved the title field for the reusable block into the sidebar panel. If users did not have that panel open, they could easily overlook it.

“Based on these changes, the UI for reusable blocks is most likely going to see some iterations in the upcoming weeks,” said Gutenberg developer Riad Benguella at the time. The team has delivered on this promise.

Gutenberg also uses this new modal as part of its template creation flow in the site editor.

The editor toolbar now displays a reusable block’s name when it is selected in the content canvas. This adds clarity and helps users better see what they are editing. Users can also update the name of a reusable block from within the editor sidebar.

One issue I still have with reusable blocks is when using wide or full-aligned elements. Once a block is saved, it displays at the regular content width, making it less of a WYSIWYG experience. There is an open ticket for this bug. However, it has seen little movement as of late.

Semantic Toolbar for Images

Viewing the Image block toolbar's new grouping that separates meta, block, and inline sections.
Grouped sections in the Image block toolbar.

The Image block’s toolbar received an upgrade. Its controls are grouped, with each group separated by a border. The toolbar follows a specific order: meta, block-level, inline-level, and more options. The goal is for controls on every block to use this order, which translates to a standard UI that users can follow.

This improvement for the Image block brings enough clarity that I already want this across the board. There is an open ticket to normalize the toolbar for all blocks.

Categorized Template Parts

General template parts category in the site editor.
“General” template parts category.

For the experimental site editor, a new patch to group template parts landed in the latest release. The UI change separates parts into four categories: headers, footers, sidebars, and general.

I could not get this feature to work. There are no clear instructions for theme authors to follow. Header templates named header-one.html went to the general category. Template parts in sub-folders, such as header/one.html, also failed. Even just plain header.html did not get grouped.

While there is obviously a bug, I am excited about the prospect of categorized template parts. It is a preemptive step toward decluttering the interface.

The problem with the current approach is that it is unnecessarily limiting. It assumes that headers, footers, and sidebars are the only specific categories of template parts needed. By defining them in core, we lose all flexibility. In past themes, I have built more content-related template parts than I have for those three groups. Under this system, all of these would be tossed into a “general” category with every other template.

This is not an argument for WordPress to have a category to meet my needs. Instead, put this into the hands of theme authors to make the best decision for their theme. Create a way for end-users to categorize their custom template parts as a next step.

Sure, create some defaults like headers, footers, and sidebars. That makes sense. Just hand over some of the control.

Weekly Platform News: Focus Rings, Donut Scope, More em Units, and Global Privacy Control

In this week’s news, Chrome tackles focus rings, we learn how to get “donut” scope, Global Privacy Control gets big-name adoption, it’s time to ditch pixels in media queries, and a snippet that prevents annoying form validation styling.

Chrome will stop displaying focus rings when clicking buttons

Chrome, Edge, and other Chromium-based browsers display a focus indicator (a.k.a. focus ring) when the user clicks or taps a (styled) button. For comparison, Safari and Firefox don’t display a focus indicator when a button is clicked or tapped, but do only when the button is focused via the keyboard.

The focus ring will stay on the button until the user clicks somewhere else on the page.

Some developers find this behavior annoying and are using various workarounds to prevent the focus ring from appearing when a button is clicked or tapped. For example, the popular what-input library continuously tracks the user’s input method (mouse, keyboard or touch), allowing the page to suppress focus rings specifically for mouse clicks.

[data-whatintent="mouse"] :focus {
  outline: none;
}

A more recent workaround was enabled by the addition of the CSS :focus-visible pseudo-class to Chromium a few months ago. In the current version of Chrome, clicking or tapping a button invokes the button’s :focus state but not its :focus-visible state. that way, the page can use a suitable selector to suppress focus rings for clicks and taps without affecting keyboard users.

:focus:not(:focus-visible) {
  outline: none;
}

Fortunately, these workarounds will soon become unnecessary. Chromium’s user agent stylesheet recently switched from :focus to :focus-visible, and as a result of this change, button clicks and taps no longer invoke focus rings. The new behavior will first ship in Chrome 90 next month.

The enhanced CSS :not() selector enables “donut scope”

I recently wrote about the A:not(B *) selector pattern that allows authors to select all A elements that are not descendants of a B element. This pattern can be expanded to A B:not(C *) to create a “donut scope.”

For example, the selector article p:not(blockquote *) matches all <p> elements that are descendants of an <article> element but not descendants of a <blockquote> element. In other words, it selects all paragraphs in an article except the ones that are in a block quotation.

The donut shape that gives this scope its name

The New York Times now honors Global Privacy Control

Announced last October, Global Privacy Control (GPC) is a new privacy signal for the web that is designed to be legally enforceable. Essentially, it’s an HTTP Sec-GPC: 1 request header that tells websites that the user does not want their personal data to be shared or sold.

The DuckDuckGo Privacy Essentials extension enables GPC by default in the browser

The New York Times has become the first major publisher to honor GPC. A number of other publishers, including The Washington Post and Automattic (WordPress.com), have committed to honoring it “this coming quarter.”

From NYT’s privacy page:

Does The Times support the Global Privacy Control (GPC)?

Yes. When we detect a GPC signal from a reader’s browser where GDPR, CCPA or a similar privacy law applies, we stop sharing the reader’s personal data online with other companies (except with our service providers).

The case for em-based media queries

Some browsers allow the user to increase the default font size in the browser’s settings. Unfortunately, this user preference has no effect on websites that set their font sizes in pixels (e.g., font-size: 20px). In part for this reason, some websites (including CSS-Tricks) instead use font-relative units, such as em and rem, which do respond to the user’s font size preference.

Ideally, a website that uses font-relative units for font-size should also use em values in media queries (e.g., min-width: 80em instead of min-width: 1280px). Otherwise, the site’s responsive layout may not always work as expected.

For example, CSS-Tricks switches from a two-column to a one-column layout on narrow viewports to prevent the article’s lines from becoming too short. However, if the user increases the default font size in the browser to 24px, the text on the page will become larger (as it should) but the page layout will not change, resulting in extremely short lines at certain viewport widths.

If you’d like to try out em-based media queries on your website, there is a PostCSS plugin that automatically converts min-width, max-width, min-height, and max-height media queries from px to em.

(via Nick Gard)

A new push to bring CSS :user-invalid to browsers

In 2017, Peter-Paul Koch published a series of three articles about native form validation on the web. Part 1 points out the problems with the widely supported CSS :invalid pseudo-class:

  • The validity of <input> elements is re-evaluated on every key stroke, so a form field can become :invalid while the user is still typing the value.
  • If a form field is required (<input required>), it will become :invalid immediately on page load.

Both of these behaviors are potentially confusing (and annoying), so websites cannot rely solely on the :invalid selector to indicate that a value entered by the user is not valid. However, there is the option to combine :invalid with :not(:focus) and even :not(:placeholder-shown) to ensure that the page’s “invalid” styles do not apply to the <input> until the user has finished entering the value and moved focus to another element.

The CSS Selectors module defines a :user-invalid pseudo-class that avoids the problems of :invalid by only matching an <input> “after the user has significantly interacted with it.”

Firefox already supports this functionality via the :-moz-ui-invalid pseudo-class (see it in action). Mozilla now intends to un-prefix this pseudo-class and ship it under the standard :user-invalid name. There are still no signals from other browser vendors, but the Chromium and WebKit bugs for this feature have been filed.


The post Weekly Platform News: Focus Rings, Donut Scope, More em Units, and Global Privacy Control appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Google Flutter V2 Adds Web and Desktop Support

Google has announced the availability of Flutter V2, the second generation of the company’s open-source UI toolkit, almost four years after the project’s initial release in May of 2017. With this release, Google has significantly broadened the scope of Flutter’s development reach.

Virtual Tour Is the Biggest Project Yet for the New Java Community Platform, Foojay

Fifteen events are already confirmed in an ambitious virtual tour of Java User Groups across the globe, marking a strong start for the new Java community platform Foojay.

Foojay.io was founded last year as a vendor-neutral platform for developers who create and run applications on top of Java and OpenJDK. It is designed to provide free information on all things Java with updated analysis, highlights, OpenJDK update release details, and command-line arguments hosted on its website.

Monitoring Across Frameworks

Gone are the times when developers' jobs ended with the release of the application. Nowadays, developers care more and more about the operational side of IT: perhaps they operate applications themselves, but more probably, their organization fosters increased collaboration between Dev and Ops.

I started to become interested in the Ops side of software when I was still a consultant. When Spring Boot released the Actuator, I became excited. Via its convention-other-configuration nature, it was possible to add monitoring endpoints with just an additional dependency.

Hyrum’s Law: What It Means for API Design and Management

api design management hyrum

The Promise and Challenges of Loose Coupling

APIs should be built around the idea of loose coupling – that providers and consumers of services possess more independence and autonomy to evolve. The obvious advantage of this approach is that it requires less time-consuming coordination, and thus allows providers and consumers to evolve independently.

However, independent growth presents an increased risk of breaking changes. Will existing API consumers have to adapt to every development? Or can they continue using the API in an unaltered state? 

Deadlock-Free Synchronization in Java

Thread synchronization is a great tool to overcome race conditions in multithreaded programs. But, it also has a dark side; deadlocks: nasty errors that are difficult to discover, reproduce, and fix. The only surefire way to prevent them is properly designing your code, which is the subject of this article. We will take a look at the origin of deadlocks, consider a method for discovering potential deadlocks in existing code, and present practical approaches to designing a deadlock-free synchronization. The concepts will be illustrated with a simple demo project.

It is assumed that the reader is already familiar with multithreaded programming and has a good understanding of thread synchronization primitives in Java. In the following sections, we will not distinguish between the synchronized statements and the lock API, using the term “lock” for reentrant locks of both types, preferring the former in the examples.

Re-Thinking the Visitor Pattern With Scala: Shapeless and Polymorphic Functions

Over the course of my career, a problem that I have had to face fairly repeatedly is dealing with a nested tree-like structure with arbitrary depth. From XML to directory structures to building data models, nested trees or documents are a common and pretty useful way to model data.

Early in my career (classic Java/J2EE/Spring days), I tackled them using the classic Visitor pattern from the Gang of Four and have probably had more than my fair share of implementing that pattern. Then, whilst working in Groovy, I re-imagined the pattern a little to make it a little more idiomatic (dealing with mostly Maps and Lists) and, now, I am working in Scala, and once again the problem has arisen.

Beyond “Hello World”: Zero-Downtime Deployments With Hazelcast on Kubernetes

Today, I'd like to offer an approach that will allow most organizations to proceed with zero-downtime deployments with help from the Hazelcast platform.

Applications Are Not Stateless!

A couple of years ago, I became interested in Continuous Deployment as the natural extension of my deep interest in Continuous Integration. Among the CD patterns, Blue-Green deployment was the first. Here's a sample architecture: Blue Green deployment The idea is that a router component directs the requests to one environment; by convention blue. This environment contains all the necessary components for the application to achieve its task. Meanwhile, Ops can deploy a new version of the application in the green environment. When all is ready, they can switch the router to direct all the requests to the new green environment.

Implementing Authentication and Authorization With Vaadin

This article shows how to implement authentication and authorization in Spring Boot Vaadin Flow applications without using Spring Security.

Why Without Spring Security?

Spring Security is a powerful framework designed for web applications based on the request/response paradigm. Vaadin hides this paradigm so you can focus on the application and UI logic without having to deeply understand the underlying web technologies. Although it's possible to use Spring Security with Vaadin, doing so requires more work than the approach shown in this article.

Vonage Review

Have you been considering Vonage as your VoIP provider? There are plenty of great options on the market. But when it comes to an affordable and flexible voice over internet protocol or VoIP calling system you can rely on, Vonage stacks up as a top contender in the field—especially as a global calling solution. With plenty of features and payment options, Vonage molds to your business’s needs while providing you with quality calling solutions.

Here’s a closer look at what it offers, how it stacks up, and any pros and cons worth considering before making any real decisions.

Vonage Pros and Cons

As a cloud communications platform, Vonage offers plenty of solutions for video conferencing, call centers, video calls, or personal calling plans. With over 50 calling features, there are some pros and cons to consider if you’re a business owner in need of an array of calling solutions.

It’s always a good idea to walk through any calling solution software’s strengths and weaknesses since your business’s needs will be different according to the industry you operate in and your team’s size and overall business goals and budget.

Pros

Social platform reach: With Vonage, you can reach your customers through Viber, Facebook Messenger, WhatsApp, and more for a more convenient and intimate experience with your customers.

APIs for enterprise: Once upon a time, Vonage didn’t offer reliable enterprise solutions. But that changed once it acquired Nexmo. Now you can add communications functionality into your business globally, no matter your team’s size.

Ecommerce features: Vonage allows you to embed custom messaging, fraud detection, and voice verification, among other APIs, to ensure a better customer shopping experience. You can also interact with customers in real-time as they shop through messaging and chat features.

99.9 percent uptime: Vonage’s average uptime over a six month period is pretty close to 100 percent. This adds to its reliability factor regardless of the call solution you’re implementing.

Dropped connection solutions: If you happen to make a call and your internet connection drops, Vonage has a fail-safe feature that reroutes your call so that you don’t lose connection with your customers.

Month-to-month contracts: When you sign up for a Vonage business calling plan, you aren’t locked into costly and lengthy contracts. You can go with a month-to-month plan that allows you to make changes if you aren’t satisfied with the service.

Call without desk phones: You don’t need a desk phone when you sign up with Vonage to make calls. You can seamlessly make calls through your laptop, desktop, tablet, or smartphone with its online portal.

Enables remote work: With Vonage, your team no longer has to work from one central location. They can take work home and stay connected through desktop and mobile apps.

Programmable solutions: You can develop your own calling applications with Vonage APIs with plenty of code snippets, guides, and tutorials on its site.

App integration: Easily connect and integrate with the apps your or your team are already using for enhanced productivity and flexibility.

Call routing: Vonage is set up so you can have more than one device connected to your calling dashboard. So if you can’t pick up a call or need to reroute it, you can easily do that.

Create automations: Whether you want specific calls to go to voicemail, want to play a pre-recorded message, or customize greetings, you can do that with Vonage.

Call monitoring: With Vonage, you can easily monitor team calls, advise them as they’re on a call, or reroute their call in real-time on their behalf. This is an especially useful feature for call centers.

Plenty of integrations: You can easily integrate Vonage with tools like Salesforce, HubSpot, Bullhorn, Zendesk, Soho, GSuite, and Zapier.

AI tools: If you need advanced calling features like self-service or post-call analysis, Vonage offers AI tools that go beyond the basics of call management for enterprise-level call center needs.

Small business solutions: Vonage makes it easy to set up and manage a call management system without a pricey IT team or the need to code anything. Click-to-dial and auto-dial features built into its CRM quickens the calling cycle.

Cons

Customer support: It’s been said that Vonage’s customer service isn’t always the most efficient or timely. While it does have call or chat support for troubleshooting whenever you need it, it can be time-consuming to connect to the right person.

Cost for services: Depending on the features you’re looking for, other voice over internet providers offer some of the same features Vonage does for a lot less or even free. This is where you must weigh the upsides of having a potentially more dependable calling feature you pay for versus using an alright one for free that gets the job done but lags in quality.

Phone number loss: While there are many instances when people transfer existing phone numbers to Vonage successfully without any fees, it doesn’t guarantee that you’ll be able to, as some numbers won’t be compatible. If it is transferable, this process can take up to 20 business days.

Compare The Best VoIP Phone Services
We reviewed dozens of VoIP phone service providers and narrowed them down to the best options.
See Top Picks

How Vonage Compares to Top VoIP Phone Services

As I mentioned before, there are a ton of other voice over internet solutions out you can use just as easily. But when it comes down to it, how does Vonage really stack up?

After much research, comparison, and overall consideration, Vonage’s strengths lie in international calling features for either business or personal plans. Vonage offers an all-in-one solution that provides text messaging, voice calls, team collaboration calls, conference calls, and call center solutions for enterprise businesses that need to get a reliable handle on their calls’ quality.

Other VoIP call and video options that come close are Nextiva or RingCentral. Nextiva because of the reliable voice over internet services it provides for small and enterprise customers and its CRM features.

On the other hand, RingCentral is great if you want access to free video and team messaging solutions, and it doesn’t fall short as far as reliable calling solutions go. With it, you don’t have to invest in new calling equipment. You can use the same number and phone equipment once you’re onboarded to keep making your calls. You can see our full list of top picks here.

Compare The Best VoIP Phone Services
We reviewed dozens of VoIP phone service providers and narrowed them down to the best options.
See Top Picks

Vonage Hardware Requirements

As you use Vonage, you’ll likely need to invest in equipment depending on your business’s size and needs.

First, you’ll want to ensure you’re using a compatible certified router, which currently includes Linksys and Netgear models you can verify on its site. Otherwise, you might experience problems with call audio and dropped calls.

Vonage offers certified IP phones and accessories that come in handy if, for example, you handle high volumes of incoming calls and need calling equipment that is compatible with its system.

For equipment to be compatible with Vonage, it needs to be SIP (Session Initiated Protocol) capable. If you’re unsure about your equipment’s compatibility, a Vonage technician can walk you through the process.

This is an extra cost to consider and make space for in your budget when you’re signing up for Vonage since it doesn’t include equipment cost in its plans.

Vonage Pricing

For the sake of simplicity, here are how Vonage’s pricing plans work for a smaller team of 20:

Mobile – $14.99 per month per line plus taxes and fees

  • Unlimited calls
  • Unlimited SMS
  • Access to the Vonage App Center
  • Unlimited team messaging

Premium – $24.99 per month per line plus taxes and fees

  • Unlimited video for up to 100
  • Multi-level auto attendant
  • CRM integration
  • IP desk phone capability

Advanced – $34.99 per month per line plus taxes and fees

  • 15 hours of on-demand call recording
  • Call group
  • Visual voicemail
  • White-glove set-up

Prices for plans at Vonage differ depending on the number of employees. The good news is all plans come with unlimited phone calls and SMS.

Any calling plans for 100 employees or more will require you to contact the sales team for a more personalized package.

Vonage Setup

To start using Vonage once you’ve signed up to one of its business plans, you’ll have to sign in first to set up features, manage user permissions and roles, and manage all your extensions.

Vonage offers interactive guides through its Learning Center once you’re signed in to help you make the setup process easier. Not only that, Vonage offers customer training sessions that cover features, equipment, and user accounts.

Once you’ve added your information, you can get started immediately. Or, you can also schedule a service delay of up to 45 days, so it’s there ready to be used whenever you need it.

Vonage Features

Vonage offers an exhaustive list of features—over 50 of them. Not all of them will apply to your business, but it’s good to know they’re available as your business grows.

Here’s a quick list of some of its more popular features:

  • Vonage Extensions
  • Boomerang
  • Selective Call Block
  • Vonage Voicemail Plus
  • Enhanced Call Forwarding
  • SimulRing
  • Add-on Calling Features

Vonage Offerings

What solutions does Vonage offer? This depends on if you’re looking for home or business call plans. Since we’re focusing on business solutions for this review, they fall into three general categories. Here’s a closer look at each.

Communications APIs

Vonage APIs allow you to integrate effective calling solutions for startups and enterprises that are looking to scale. Vonage’s communications APIs include video, in-app voice, SMS, sip trunking, email, dispatch, and more.

You can easily verify user accounts as well as prevent fraud with its safe two-step authentication feature. It also allows you to create sub-accounts to configure the reporting and billing of different projects.

Unified Communications

Vonage’s unified communications offerings include solutions that let business work from anywhere with more than 50 features to choose from. Some of the features include paperless fax, call monitoring, virtual receptionist, click-to-dial, call flips, and local or geographic numbers.

Vonage’s unified communications make it easy to collaborate with colleagues no matter where you are with tools available for desktop or mobile, meeting scheduling functions, as well as the ability to easily record and share meetings.

Contact Centers

Vonage offers cloud contact center software to create a better overall sales experience. It brings easy to manage omnichannel features that include voice, digital channels, and even video.

Powerful routing features allow you to use customer details so you can reroute them to the best agent equipped to help them with their specific needs. You can auto-log calls and recordings and use its click-to-dial or auto-dial tools within its CRM.

Ai powered features allow you to collect post-call analysis, enable self-service tools, and leverage dynamic routing.

Compare The Best VoIP Phone Services
We reviewed dozens of VoIP phone service providers and narrowed them down to the best options.
See Top Picks

Summary

When you take a broad look at Vonage and all it has to offer, the question isn’t “will they cover all the call features I need?” The question becomes, “will I be satisfied with its level of service once it’s integrated into my business?”

Why? Vonage is a comprehensive all-in-one voice over internet service provider that provides tools for its users from onboarding to equipment and beyond.

This makes it a solid option for small businesses counting on growth who need a reliable VoIP to help them get there—whether they work with at-home employees or otherwise. Yet, it doesn’t leave out the more complex needs of enterprise customers who need features like AI and advanced automations to successfully take care of their various types of call needs both within the organization and customer-facing.

If you’re ready to take the plunge, check out its plans and get started with Vonage here.

Running Hazelcast Using Hazelcast Command Line

Until recently, you had to follow a manual approach to install and run Hazelcast instances on your environment. Now, there is an easier way to run Hazelcast using Hazelcast Command Line tool. In this blog post, we will go through what problems we aim to solve with Hazelcast CLI as well as how to use it. If you're more of a hands-on learner, feel free to skip directly to the end for tips on using it.

Installing and Starting an Hazelcast Instance, the Long Way

As you most likely know, you can use Hazelcast in two main topologies: Embedded and Client-Server. You add Hazelcast as a dependency to your Java application if you choose the former architecture. But, if you would like to design your architecture using a client-server approach, you need to start Hazelcast member instances. Before the Hazelcast CLI, you had to perform multiple steps to run a Hazelcast member standalone.