3 Essential Design Trends, June 2024

Original Source: https://www.webdesignerdepot.com/design-trends-june-2024/

Summer is off to a fun start with some highly dramatic website design trends showing up in projects. Let’s dive in!

How to Build an Ecommerce Website in 2024

Original Source: https://ecommerce-platforms.com/articles/how-to-build-an-ecommerce-website-2

Having an ecommerce website is the first step to starting your entrepreneurial journey. It’s your digital store, the place where customers can shop for the items you’re selling.

Building an ecommerce website is just the first step; you’ll have to personalize it over time to really match the look and feel of your brand.

Most successful ecommerce websites share a few similar features: they allow users to jump seamlessly between product listings, have lots of informative and educational content, and allow for easy sharing on social media platforms.

In this guide, I’m going to take you through the process of setting up an ecommerce website that best fits the service or product that you want to sell.

Step 1: Identify your Business Model

Before we really get into the weeds, it’s important that you have a clear definition of the business model that you want to follow. You may already know about these two:

B2C (Business-to-customer): Arguably the most popular ecommerce model, where businesses sell directly to end-consumers. Amazon’s a good example (though they also have a B2B arm).

B2B (Business-to-business): This is when a business sells goods and services to another business. Salesforce, for instance, offers an array of services to help other businesses.

There are other models too, such as C2C (Customer-to-customer), which are basically online marketplaces. Craigslist, for example, is a good platform to sell goods to other customers.

Ready to start learning?

Explore our Ecommerce Business Course designed to teach you the art of building and running a thriving online business that not only succeeds but also sustains itself in the long run.

Start Learning

Step 2: Select your Ecommerce Platform

While you still have the option to hire a developer and code your site from scratch, it’s just not a good use of time (and money).

Instead, you can choose an ecommerce platform and build your site within a few hours. Here are some of the best ecommerce website builders chosen by our experts:


When I think of a robust and user-friendly ecommerce platform, Shopify always comes to mind first. We ranked it as the best ecommerce platform, and here are just a few reasons why:

Easy to use: You don’t need to be a tech whiz to get started. All it takes is a few clicks to get started and launch your store.

Flexibility in design: With 100s of design templates (themes) available, you can customize your store to match your brand’s aesthetic. Many are just plug and play too!

Integrations: You get access to thousands of apps to further improve your store’s functionality, from marketing tools to inventory management solutions.


You may have already heard of BigCommerce. It’s commonly used by ecommerce businesses that want to rapidly scale, and is also used by many enterprise-level organizations.

Here’s why we like BigCommerce:

Scalability: BigCommere was purpose-built to help small businesses create a professional-looking store that they can scale.

Lots of features: It offers a host of built-in features, from analytical reporting to multi-channel selling.

No transaction fees: Unlike Shopify, BigCommerce doesn’t charge transaction fees. That’s a huge bonus in my book, especially for stores that sell lots of products.


Squarespace has found its own niche in the ecommerce space, with many business owners preferring it because of its unique design aesthetics.

Personally, I’ve seen some amazing sites built using this ecommerce platform.

Here’s why I like it:

Gorgeous templates: We love the diversity of the templates that Squarespace offers right out of the box.

Content and email marketing function: Squarespace includes built-in blogging and email marketing tools too, so you don’t have to spend extra.

Trial length: One of the best things about Squarespace is just how simple it is. You get a 14-day free trial, which is great in my opinion. That’s more than enough time to really understand the platform and understand its strengths.


If you want to go with a self-hosted option, WooCommerce is your best bet. It’s free to use, and it’s ideal for those who have experience with WordPress.

It’s very different from other hosted platforms on the list, obviously. Here’s why I recommend it:

Free: As I mentioned, the WooCommerce plugin itself is entirely free to use. However, that means you’ll have to pay for hosting, the themes, and other plugins to fully flesh out your store.

Control: You have full control over your website and all related data. For privacy-focused businesses, this is a significant advantage.

Customization: It’s highly customizable too, thanks to the wide range of plugins and themes that you can tap into in the WordPress ecosystem.

Step 3: Start Building Your Site

As you can probably tell, I prefer hosted ecommerce platforms, simply because they are so easy to start with.

I’ll use Shopify as an example for this section:

1: Sign Up for a Shopify Account

Go to Shopify’s website and click on Start free trial. You get the first three days free, and only have to pay $1 for the first month.

Now, you have to create an account. Just enter your email address, create a password, and enter your store name. Click “Create your store” and let Shopify work its magic.

2: Set Up Your Store

The next step requires you to add your business information. Fill the dialogue boxes with relevant information that Shopify requires, including your address. Shopify uses this information to calculate shipping rates and taxes.

On the next screen, you’ll be prompted to select a Shopify plan that fits your needs. There are three popular plans, but I recommend starting with the Basic ($29/month).

3: Customize Your Store’s Design

Go to the Shopify Theme Store and choose a theme that suits your brand. I recommend starting with a free theme first before upgrading to a premium one later on.

Remember, you can always customize the theme to your liking using the Shopify Theme Editor. You can change colors, fonts, and layout to create the brand and feel you prefer.

4: Add Products

In your Shopify admin, click on “Products” and then “Add product”. You’ll have to enter details for all the products you want to list.

Fill in the product title, description, price, and other relevant details. Make sure to also add high-quality product images.

Also, you’ll see an option for “Collections,” which are basically categories. It’s a great way to organize your products and make sure everything’s grouped accordingly.

5: Set Up Payments

This step is important to ensure that you’re able to receive payments from your customers. Go to Settings > Payments in the sidebar to select your preferred payment gateway. Shopify Payments is the default option, and it lets you save on transaction fees.

This is also a good time to set up additional payment methods such as PayPal, Amazon Pay, or manual payments like bank transfers. The more payment options you support, the easier it is to get customers.

6: Set Up Shipping

Shopify can automatically calculate shipping rates, but it requires a bit of a setup. Go to Settings > Shipping and Delivery and you’ll see a host of options. This is where you can set up shipping zones and rates based on your location and shipping preferences.

Shopify also lets you configure different shipping carriers. If you want to offer carrier shipping, you can integrate with carriers like USPS, UPS, or FedEx. This is useful, as it lets your customers get shipping quotes in real-time.

7: Set Up Taxes

As an ecommerce store owner, you’re liable to collect sales tax. Thankfully, you can sidestep those confusing calculations with Shopify.

Go to Settings > Taxes: Configure your tax settings based on your business location and where you sell. Shopify can automatically calculate taxes for most regions globally, and you can always set up custom rates too.

8: Create Legal Pages

Legal pages protect your business in case of liability. With Shopify, you can auto-generate these pages, though we recommend that as your store grows, you have a lawyer build those out for you.

To start off, go to Online Store > Pages: Create essential pages like Terms of Service, Privacy Policy, and Refund Policy. You can use Shopify’s template generator for these pages.

Note: Make sure to add links to these legal pages in your store’s footer for easy access.

9: Set Up a Custom Domain

Now, you need a domain name before launching the store. Shopify is a domain registrar, so you can buy a domain name directly through the platform. Conversely, you can also transfer an existing domain.

Just make sure to set your newly purchased domain as the default one for your store.

10: Test Your Store

Just one last thing before you launch: checking to ensure everything is as it should be. You can use Shopify’s Bogus Gateway to place a test order and gauge the experience for your potential customers.

I recommend that you check all the main pages. Navigate through your store to ensure all links, images, and functionalities work correctly before moving on to the next step!

11: Launch Your Store

Before you launch, it’s imperative that you remove password protection so that your store’s accessible by the general public. To do this, go to Online Store > Preferences and disable the password page to make your store live.

Now, it’s time to make some (digital) noise! Announce your new store launch on social media, send out emails, and start running ads!

Tips to Improve Sales on Your Ecommerce Website

As I stated at the start of this piece, launching your store is just the first step. If you’re new to the ecommerce space, I want to make sure that you have the tools and the information to succeed.

We work with ecommerce stores of various sizes, helping them grow their business by implementing different strategies that best fit their needs. Here are a few tips that can position you for success from the get-go:

Focus on the User Experience

My most important tip would be for new entrepreneurs to focus on enhancing the user experience. Ideally, you’d want your website to be easy to navigate, mobile-friendly, and of course, ensure that it loads fast.

A seamless experience keeps customers on the site longer and reduces bounce rates. I’ve seen conversion rates improve significantly just by streamlining the checkout process, making it as straightforward as possible, with minimal steps and clear calls to action.

Create High-Quality Product Listings

Another crucial aspect is the quality of product listings. High-quality images, detailed descriptions, and customer reviews can make a big difference.

When consulting with clients, we review and make sure each product page provides all the necessary information a customer might need, reducing any hesitation they might have about making a purchase.

People have become incredibly careful and selective when buying online, and it’s imperative that you provide as much detail as possible, both through written descriptions and through images, to help potential customers convert.

Don’t Sleep on Social Proof

We’ve seen conversion rate jumps of over 10-20% just by adding social proof to smaller ecommerce stores.

Showcasing customer testimonials and reviews can reassure potential buyers about the credibility and quality of your products. Additionally, offering a solid return policy can also go a long way in fostering trust between your audience.

Diversify your Marketing Efforts

Running ads on your site is a good way to start generating sales instantly, but it’s not enough. When working with ecommerce clients, we always recommend that they diversify their marketing efforts.

I’ve found success by employing a mix of email marketing, social media promotions, and search engine optimization (SEO). Personalized email campaigns that offer special discounts or highlight new products can drive lots of repeat business.

Now, I know a lot of ecommerce entrepreneurs who simply prefer running ads because of the instant gratification, but it’s just not a long-term approach. If you want to really build a brand, it’s important to produce engaging content and promote it on multiple platforms.


A well-designed ecommerce website could be the launchpad for success for your online business. Plus, with so many ecommerce platforms now available, it’s no longer difficult to “build” a site from scratch like in the old days.

Once your site is live, you can then begin to focus on promotion and marketing. Just remember, ecommerce sites are quite iterative.

If you feel something isn’t working, you can always change things around and gauge the impact!

The post How to Build an Ecommerce Website in 2024 appeared first on Ecommerce Platforms.

Best Practices For Naming Design Tokens, Components And Variables

Original Source: https://smashingmagazine.com/2024/05/naming-best-practices/

Naming is hard. As designers and developers, we often struggle finding the right name — for a design token, colors, UI components, HTML classes, and variables. Sometimes, the names we choose are too generic, so it’s difficult to understand what exactly is meant. And sometimes they are too specific, leaving little room for flexibility and re-use.

In this post, we want to get to the bottom of this and explore how we can make naming more straightforward. How do we choose the right names? And which naming conventions work best? Let’s take a closer look.

Inspiration For Naming

If you’re looking for some inspiration for naming HTML classes, CSS properties, or JavaScript functions, Classnames is a wonderful resource jam-packed with ideas that get you thinking outside the box.

The site provides thematically grouped lists of words perfect for naming. You’ll find terms to describe different kinds of behavior, likeness between things, order, grouping, and association, but also themed collections of words that wouldn’t instantly come to one’s mind when it comes to code, among them words from nature, art, theater, music, architecture, fashion, and publishing.

Naming Conventions

What makes a good name? Javier Cuello summarized a set of naming best practices that help you name your layers, groups and components in a consistent and scalable way.

As Javier points out, a good name has a logical structure, is short, meaningful, and known by everyone, and not related to visual properties. He shares do’s and don’ts to illustrate how to achieve that and also takes a closer look at all the fine little details you need to consider when naming sizes, colors, groups, layers, and components.

Design Tokens Naming Playbook

How do you name and manage design tokens? To enhance your design tokens naming skills, Romina Kavcic created an interactive Design Tokens Naming Playbook. It covers everything from different approaches to naming structure to creating searchable databases, running naming workshops, and automation.

The playbook also features a naming playground where you can play with names simply by dragging and dropping. For more visual examples, also be sure to check out the Figma template. It includes components for all categories, allowing you to experiment with different naming structures.

Flexible Design Token Taxonomy

How to build a flexible design token taxonomy that works across different products? That was the challenge that the team at Intuit faced. The parent company of products such as Mailchimp, Quickbooks, TurboTax, and Mint developed a flexible token system that goes beyond the brand theme to serve as the foundational system for a wide array of products.

Nate Baldwin wrote a case study in which he shares valuable insights into the making of Intuit’s design token taxonomy. It dives deeper into the pain points of the old taxonomy system, the criteria they defined for the new system, and how it was created. Lots of takeaways for building your own robust and flexible token taxonomy are guaranteed.

Naming Colors

When you’re creating a color system, you need names for all its facets and uses. Names that everyone on the team can make sense of. But how to achieve that? How do you bring logic to a subjective topic like color? Jess Satell, Staff Content Designer for Adobe’s Spectrum Design System, shares how they master the challenge.

As Jess explains, the Spectrum color nomenclature uses a combination of color family classifier (e.g., blue or gray) paired with an incremental brightness value scale (50–900) to name colors in a way that is not only logical for everyone involved but also scalable and flexible as the system grows.

Another handy little helper when it comes to naming colors is Color Parrot. The Twitter bot is capable of naming and identifying the colors in any given image. Just mention the bot in a reply, and it will respond with a color palette.

Common Names For UI Components

Looking at what other people call similar things is a great way to start when you’re struggling with naming. And what better source could there be than other design systems? Before you end up in the design system rabbit hole, Iain Bean did the research for you and created the Component Gallery.

The Component Gallery is a collection of interface components from real-world design systems. It includes plenty of examples for more than 50 UI components — from accordion to visually hidden — and also lists other names that the UI components go by. A fantastic resource — not only with regards to naming.

Variables Taxonomy Map

A wonderful example of naming guidelines for a complex multi-brand, multi-themed design system comes from the Vodafone UK Design System team. Their Variables Taxonomy Map breaks down the anatomy and categorization of a design token into a well-orchestrated system of collections.

The map illustrates four collections required to support the system and connections between tokens — from brand and primitives to semantics and pages. It builds on top of Nathan Curtis’ work on naming design tokens and enables everyone to gather insight about where a token is used and what it represents, just from its name.

If you want to explore more approaches to naming design tokens, Vitaly compiled a list of useful Figma kits and resources that are worth checking out.

Design Token Names Inventory

Romina Kavcic created a handy little resource that is bound to give your design token naming workflow a power boost. The Design Token Names Inventory spreadsheet not only makes it easy to ensure consistent naming but also syncs directly to Figma.

The spreadsheet has a simple structure with four levels to give you a bird’s-eye view of all your design tokens. You can easily add rows, themes, and modes without losing track and filter your tokens. And while the spreadsheet itself is already a great solution to keep everyone involved on the same page, it plays out its real strength in combination with the Google Spreadsheets plugin or the Kernel plugin. Once installed, the changes you make in the spreadsheet are reflected in Figma. A real timesaver!

Want To Dive Deeper?

We hope these resources will come in handy as you tackle naming. If you’d like to dive deeper into design tokens, components, and design systems, we have a few friendly online workshops and SmashingConfs coming up:

Design Token and UI Component Architecture with Nathan Curtis, June 6–14
Creating and Maintaining Successful Design Systems with Brad Frost, Aug 27 — Sept 10
Figma Workflow Masterclass
with Christina Vallaure, Nov 14–22
SmashingConf Freiburg 2024 🇩🇪 — The Web, Sep 9–11
SmashingConf New York 2024 🇺🇸 — Front-End & UX, Oct 7–10
SmashingConf Antwerp 2024 🇧🇪 — Design & UX, Oct 28–31

We’d be absolutely delighted to welcome you to one of our special Smashing experiences — be it online or in person!

Enhancing DevSecOps Workflows with Generative AI: A Comprehensive Guide

Original Source: https://www.sitepoint.com/enhancing-devsecops-workflows-with-generative-ai-a-comprehensive-guide/?utm_source=rss

The advent of generative AI is set to revolutionize DevSecOps practices by addressing the manual aspects of the development lifecycle

Continue reading
Enhancing DevSecOps Workflows with Generative AI: A Comprehensive Guide
on SitePoint.

How Freelancers Can Prevent Chargebacks (7 Effective Strategies)

Original Source: https://www.hongkiat.com/blog/prevent-chargebacks/

We all know the financial challenges freelancers face when finding new clients, preserving existing income sources, maintaining cash flow during slow times, handling income taxes, and more. Unfortunately, there is another financial hurdle you could face as a freelancer: chargebacks.

A chargeback is a forced credit card refund. Chargebacks are a form of consumer protection, originally created to protect people from fraud and unauthorized transactions. The merchant bears the burden of proof. All the cardholder (freelance client) has to do is contact the bank and ask for their money back.

If you accept credit card as a form of payment, even if you are freelancing, credit card companies will deem you a merchant, which means that a freelance client can dispute a payment they’ve made to you. The money will be removed from your bank account, without warning or your consent, and you will be left with an extra chargeback fee you’ll have to pay.

As you can see, chargebacks open the door for fraudsters, which may include clients of questionable character looking to cheat the system. So here are some financial tips for freelancers to prevent chargebacks.

10 Tips to Invoice Your Clients Professionally

.no-js #ref-block-post-10379 .ref-block__thumbnail { background-image: url(“https://assets.hongkiat.com/uploads/thumbs/250×160/invoice-freelance-clients-professionally.jpg”); }

10 Tips to Invoice Your Clients Professionally

Let’s face it – getting paid is great, but invoicing can be a real headache for freelancers, especially… Read more

Accepting Credit Cards As Payment

The first solution that might come to mind is to avoid accepting credit cards as payment altogether. However, other forms of payment come with risks too: check fraud, counterfeit checks, and bouncing checks are some unpleasant side effects of accepting checks as payment.

credit card paymentcredit card payment

Bitcoin and other virtual currencies aren’t widely accepted yet, and wiring money or providing direct deposits are risks many clients aren’t usually willing to take. In the end, credit card payments are usually the lesser evil. Chargebacks are unpleasant but with proper management, they are preventable. Taking manageable risks is the only way to ensure growth and success.

Best Ways To Prevent Chargebacks

A determined fraudster or a lazy client is bound to slip through the cracks on occasion, but there are plenty of ways to reduce the risk of these unnecessary profit losses.

1. Consider Using A Moderator

Technically, you can find freelance jobs anywhere. It should also be noted that anyone can post these jobs. Unless there is a screening process of some sort, you could end up working with some real sketchy characters. Consider using freelance job coordinators like oDesk, Upwork, or Guru.


In addition to facilitating work opportunities through the job board, these companies act as a payment moderator between the client and freelancer. There are checks and balances in place to help make the payment process as safe as possible. Some even go so far as to guarantee payment. Chargebacks are much less likely to occur in these “safe” environments.

2. Meticulously Research The Potential Client

Even if you do use one of these freelancing agencies – and especially if you don’t – it is important to do your own research. An honest client who has every intention of paying for quality work will have a better online reputation than a scammer who is determined to get something for free.

talk to client onlinetalk to client online

Go online and learn everything you can about a new or potential client.

Check out their website (the design can tell you a lot about the company’s legitimacy).
See if there are any reviews on the client’s Google+ account.
Be sure to check out scam websites like Ripoff Report.
If the company has brick-and-mortar presences, you can see how they stand with the Better Business Bureau.
In addition to your online research, conduct a phone or Skype interview.
Also, if the client does business in the “real world,” stop in during business hours (if they are local).

3. Take Extra Precautions

Many chargebacks are filed because of unauthorized transactions. A fraudster could get hold of credit card information and buy a design on someone else’s dollar. Make sure you really are working for the person who will be footing the bill.

If possible, ask for a photocopy (or scan) of both the face of the credit card and the client’s photo ID. Make sure the names match. A thief probably wouldn’t have access to both the credit card and ID. In fact, if the credit card account number has been hacked from somewhere, they might not even have access to the actual card. You can also compare the signature on the ID to the signature on the contract.

4. Address Payment Details In Writing

Your contract might be your best chargeback prevention tool. Disputing a chargeback is difficult – and rarely successful. The only way to prove your case (and get your money back) is to have written documentation supporting your claims.

contract with clientcontract with client

Since a contract would act as this dispute proof, it also acts as a deterrent for anyone who might be looking for ways to cheat the system. So make sure you plug any holes from the get-go. This article on freelance contract clauses can help you draft a fail-proof contract; pay careful attention to the tips regarding rates, invoicing, kill fees, and deadlines. These will be most helpful in preventing chargebacks.

Designers: Know Your Rights! 4 Must-Have Clauses In A Contract

.no-js #ref-block-post-15423 .ref-block__thumbnail { background-image: url(“https://assets.hongkiat.com/uploads/thumbs/250×160/design-contract-clauses.jpg”); }

Designers: Know Your Rights! 4 Must-Have Clauses In A Contract

Freelancers, you have learned to never start work without a written contract, but it’s hard to like contracts…. Read more

5. Clearly Outline Copyright Ownership

Another important tip to note is copyright issues. Copyright laws are another valuable chargeback prevention tool. Imagine the following situation. You design a killer website for a client. He accepts the design. He pays you via credit card. Life goes on.

Later, you receive notice of a chargeback, but your design is still on the client’s site. If you worded your contract right, you can go after the thieving client. How? Put the following phrase in your contract: copyright transfers to the client only upon payment in full. If the client filed a chargeback, he hasn’t paid you, and therefore is in violation of copyright laws by continuing to use your design.


If you threaten the client with a DMCA takedown, he is likely to cancel the chargeback quickly. If he doesn’t pay, follow through with the takedown. This action won’t get you your money back, but it will give you a little satisfaction!

Understanding and Reviving Unused Designs

.no-js #ref-block-post-15211 .ref-block__thumbnail { background-image: url(“https://assets.hongkiat.com/uploads/thumbs/250×160/ressurect-your-design.jpg”); }

Understanding and Reviving Unused Designs

In the past, wars were won through smart strategies and skilled soldiers. Just like in those battles, the… Read more

6. Comply With All Deadlines

Not all chargebacks come from scammers. There is a real possibility the chargeback filed against you is valid and brought about by your own actions. There are many acceptable reasons why a cardholder would file a chargeback. For example, one chargeback reason code that could influence your freelance income is “services not provided.”

If you don’t adhere to deadlines, it is understandable that a client might consider a chargeback. The client shouldn’t have to pay for something he didn’t receive. If there is a chance you’ll miss a deadline, let the client know as soon as possible and offer an alternate submission schedule.

meeting deadlinemeeting deadline

Additionally, make sure you provide excellent customer service. Answer your client’s phone calls and emails promptly and professionally. If there is a lag in communication, the client might think you went MIA and pull the plug on payments that have already been rendered.

10 Things Your Clients Hate Hearing

.no-js #ref-block-post-14820 .ref-block__thumbnail { background-image: url(“https://assets.hongkiat.com/uploads/thumbs/250×160/things-clients-hate.jpg”); }

10 Things Your Clients Hate Hearing

With a quick search on Google, you will discover that the Internet is filled with the rage of… Read more

7. Do The Work, And Do It Well!

Chargebacks filed when services are “not as described or defective” is also a legitimate grievance. If your client hired you to do X and you delivered Y, isn’t it understandable that a chargeback could be in your near future?

One way to ensure the quality of your work is to limit the number of projects you accept at a given time. If you are stretched too thin, it will show in the quality of your work. Take pride in your work. Deliver completed projects that represent your very best effort.

Juggling Deadlines and Priorities 101 for Freelancers

.no-js #ref-block-post-16676 .ref-block__thumbnail { background-image: url(“https://assets.hongkiat.com/uploads/thumbs/250×160/juggling-deadlines.jpg”); }

Juggling Deadlines and Priorities 101 for Freelancers

Deadlines can be a nasty thorn for many freelancers. I feel that deadlines make me more concerned with… Read more

And there you have it. There is nothing to fear about chargebacks once you understand how to prevent or at least minimize the possibility of it happening on your watch. Don’t threaten the success of your design career by failing to take a few preventative steps before work begins.

The post How Freelancers Can Prevent Chargebacks (7 Effective Strategies) appeared first on Hongkiat.

Switching It Up With HTML’s Latest Control

Original Source: https://smashingmagazine.com/2024/05/switching-it-up-html-latest-control/

The web is no stranger to taking HTML elements and transforming them to look, act, and feel like something completely different. A common example of this is the switch, or toggle, component. We would hide a checkbox beneath several layers of styles, define the ARIA role as “switch,” and then ship. However, this approach posed certain usability issues around indeterminate states and always felt rather icky. After all, as the saying goes, the best ARIA is no ARIA.

Well, there is new hope for a native HTML switch to catch on.

Safari Technology Preview (TP) 185 and Safari 17.4 released with an under-the-radar feature, a native HTML switch control. It evolves from the hidden-checkbox approach and aims to make the accessibility and usability of the control more consistent.

<!– This will render a native checkbox –//>
<input type=”checkbox” />

<!– Add the switch attribute to render a switch element –//>
<input type=”checkbox” switch />
<input type=”checkbox” checked switch />

Communication is one aspect of the control’s accessibility. Earlier in 2024, there were issues where the switch would not adjust to page zoom levels properly, leading to poor or broken visibility of the control. However, at the time I am writing this, Safari looks to have resolved these issues. Zooming retains the visual cohesion of the switch.

The switch attribute seems to take accessibility needs into consideration. However, this doesn’t prevent us from using it in inaccessible and unusable ways. As mentioned, mixing the required and indeterminate properties between switches and checkboxes can cause unexpected behavior for people trying to navigate the controls. Once again, Adrian sums things up nicely:

“The switch role does not allow mixed states. Ensure your switch never gets set to a mixed state; otherwise, well, problems.”

— Adrian Roselli

Internationalization (I18N): Which Way Is On?

Beyond the accessibility of the switch control, what happens when the switch interacts with different writing modes?

When creating the switch, we had to ensure the use of logical CSS to support different writing modes and directions. This is because a switch being in its right-most position (or inline ending edge) doesn’t mean “on” in some environments. In some languages — e.g., those that are written right-to-left — the left-most position (or inline starting edge) on the switch would likely imply the “on” state.

While we should be writing logical CSS by default now, the new switch control removes that need. This is because the control will adapt to its nearest writing-mode and direction properties. This means that in left-to-right environments, the switch’s right-most position will be its “on” state, and in right-to-left environments, its left-most position will be the “on” state.

See the Pen Safari Switch Control – Styling [forked] by @DanielYuschick.

Final Thoughts

As we continue to push the web forward, it’s natural for our tools to evolve alongside us. The switch control is a welcome addition to HTML for eliminating the checkbox hacks we’ve been resorting to for years.

That said, combining the checkbox and switch into a single input, while being convenient, does raise some concerns about potential markup combinations. Despite this, I believe this can ultimately be resolved with linters or by the browsers themselves under the hood.

Ultimately, having a native approach to switch components can make the accessibility and usability of the control far more consistent — assuming it’s ever supported and adopted for widespread use.

Collective #840

Original Source: https://tympanus.net/codrops/collective/collective-840/

Introducing the CSS anchor positioning API * Superior Range Syntax * Best intention barriers (ARIA edition)

Beyond CSS Media Queries

Original Source: https://smashingmagazine.com/2024/05/beyond-css-media-queries/

Media queries have been around almost as long as CSS itself — and with no flex, no grid, no responsive units, and no math functions, media queries were the most pragmatic choice available to make a somewhat responsive website.

In the early 2010s, with the proliferation of mobile devices and the timely publication of Ethan Marcotte’s classic article “Responsive Web Design”, media queries became much needed for crafting layouts that could morph across screens and devices. Even when the CSS Flexbox and Grid specifications rolled out, media queries for resizing never left.

While data on the actual usage of media queries is elusive, the fact that they have grown over time with additional features that go well beyond the viewport and into things like user preferences continues to make them a bellwether ingredient for responsive design.

Today, there are more options and tools in CSS for establishing layouts that allow page elements to adapt to many different conditions besides the size of the viewport. Some are more widely used — Flexbox and Grid for certain — but also things like responsive length units and, most notably, container queries, a concept we will come back to in a bit.

But media queries are still often the de facto tool that developers reach for. Maybe it’s muscle memory, inconsistent browser support, or that we’re stuck in our ways, but adoption of the modern approaches we have for responsive interfaces seems slow to take off.

To be clear, I am all for media queries. They play a significant role in the work we do above and beyond watching the viewport size to make better and more accessible user experiences based on a user’s OS preferences, the type of input device they’re using, and more.

But should media queries continue to be the gold standard for responsive layouts? As always, it depends, but

It is undeniable that media queries have evolved toward accessibility solutions, making space for other CSS features to take responsibility for responsiveness.

The Problem With Media Queries

Media queries seemed like a great solution for most responsive-related problems, but as the web has grown towards bigger and more complex layouts, the limits of media queries are more prevalent than ever.

Problem #1: They Are Viewport-Focused

When writing media query breakpoints where we want the layout to adapt, we only have access to the viewport’s properties, like width or orientation. Sometimes, all we need is to tweak a font size, and the viewport is our best bud for that, but most times, context is important.

Components on a page share space with others and are positioned relative to each other according to normal document flow. If all we have access to is the viewport width, knowing exactly where to establish a particular breakpoint becomes a task of compromises where some components will respond well to the adapted layout while others will need additional adjustments at that specific breakpoint.

So, there we are, resizing our browser and looking for the correct breakpoint where our content becomes too squished.

The following example probably has the worst CSS you will see in a while, but it helps to understand one of the problems with media queries.

That same layout in mobile simply does not work. Tables have their own set of responsive challenges as it is, and while there is no shortage of solutions, we may be able to consider another layout using modern techniques that are way less engineered.

We are doing much more than simply changing the width or height of elements! Border colors, element visibility, and flex directions need to be changed, and it can only be done through a media query, right? Well, even in cases where we have to completely switch a layout depending on the viewport size, we can better achieve it with container queries.

Again, Problem #1 of media queries is that they only consider the viewport size when making decisions and are completely ignorant of an element’s surrounding context.

That may not be a big concern if all we’re talking about is a series of elements that are allowed to take up the full page width because the full page width is very much related to the viewport size, making media queries a perfectly fine choice for making adjustments.

See the Pen Responsive Cards Using Media Queries [forked] by Monknow.

But say we want to display those same elements as part of a multi-column layout where they are included in a narrow column as an <aside> next to a larger column containing a <main> element. Now we’re in trouble.

A more traditional solution is to write a series of media queries depending on where the element is used and where its content breaks. But media queries completely miss the relationship between the <main> and <aside> elements, which is a big deal since the size of one influences the size of the other according to normal document flow.

See the Pen Responsive Cards Using Media Queries Inside Container [forked] by Monknow.

The .cards element is in the context of the <aside> element and is squished as a result of being in a narrow column. What would be great is to change the layout of each .card component when the .cards element that contains them reaches a certain size rather than when the viewport is a certain size.

That’s where container queries come into play, allowing us to conditionally apply styles based on an element’s size. We register an element as a “container,” which, in our current example, is the unordered list containing the series of .card components. We’re essentially giving the parent selector a great deal of power to influence the current layout.

.cards {
container-name: cards;

Container queries monitor an element by its size, and we need to tell the browser exactly how to interpret that size by giving .cards a container-type, which can be the container’s size (i.e., in the block and inline directions) or its inline-size (i.e., the total length in the inline direction). There’s a normal value that removes sizing considerations but allows the element to be queried by its styles.

.cards {
container-name: cards;
container-type: inline-size;

We can simplify things down a bit using the container shorthand property.

.cards {
container: cards / inline-size;

Now, we can adjust the layout of the .card components when the .cards container is a certain inline size. Container queries use the same syntax as media queries but use the @container at-rule instead of @media.

.cards {
container: cards / inline-size;

@container cards (width < 700px) {
.cards li {
flex-flow: column;

Now, each .card is a flexible container that flows in the column direction when the width of the .cards container is less than 700px. Any wider than that, we have the same to lay them out in a row direction instead.

See the Pen Responsive Cards Using Container Queries [forked] by Monknow.

Style queries are a cousin to container queries in the sense that we can query the container’s styles and conditionally apply style changes to its children, say changing a child element’s color to white when the container’s background-color is set to a dark color. We’re still in the early days, and support for style queries and browser support is still evolving.

I hope this gives you a sense of how amazing it is that we have this context-aware way of establishing responsive layouts. Containers are a completely new idea in CSS (although we’ve used the term synonymously with “parent element” for ages) that is novel and elegant.

So, Are Media Queries Useless?

NO! While media queries have been the go-to solution for responsive design, their limitations are glaringly obvious now that we have more robust tools in CSS that are designed to solve those limits.

That doesn’t make media queries obsolete — merely a different tool that’s part of a larger toolset for building responsive interfaces. Besides, media queries still address vital accessibility concerns thanks to their ability to recognize a user’s visual and motion preferences — among other settings — at the operating system level.

So, yes, keep using media queries! But maybe reach for them sparingly since CSS has a lot more to offer us.

Hidden vs. Disabled In UX

Original Source: https://smashingmagazine.com/2024/05/hidden-vs-disabled-ux/

Both hiding and disabling features can be utterly confusing to users. And for both, we need very, very good reasons. Let’s take a closer look at what we need to consider when it comes to hiding and disabling — and possible alternatives that help enhance the UX.

This article is part of our ongoing series on design patterns. It’s also an upcoming part of the 10h-video library on Smart Interface Design Patterns 🍣 and the upcoming live UX training as well. Use code BIRDIE to save 15% off.

Show What’s Needed, Declutter The Rest

You’ve probably been there before: Should you hide or disable a feature? When we hide a feature, we risk hurting discoverability. When we disable it without any explanation, we risk that users get frustrated. So, what’s the best way to design for those instances when some options might be irrelevant or unavailable to users?

As a rule of thumb, disable if you want the user to know a feature exists but is unavailable. Hide if the value shown is currently irrelevant and can’t be used. But never hide buttons or key filters by default as users expect them to persist.

Unlike hidden features, disabled features can help users learn the UI, e.g., to understand the benefits of an upgrade. So, instead of removing unavailable options or buttons, consider disabling them and allowing the user to “Hide all unavailable options.” Be sure to explain why a feature is disabled and also how to re-enable it.

Another thing to watch out for: When we allow users to switch between showing and hiding a feature, we also need to ensure the switch doesn’t cause any layout shifts.

For both hiding and disabling, we need very thorough considerations of available alternatives, e.g., enabled buttons, read-only state, better empty states, hide/reveal accordions, error messages, and customization. We need to show what’s needed and de-clutter the rest.

Whenever possible, I try to keep buttons and features in their default state — enabled, accessible, and legible. When a user interacts with that feature, we can explain why they can’t use it, how to enable it, and how to keep it enabled. Possible exceptions are confirmation codes and loading/processing states.

Hiding vs. Disabling Roadmap

As Sam Salomon suggests, if you’re unsure whether hiding or disabling is the best option for your use case, ask yourself the following question: “Will a given user ever be able to interact with this element?” Depending on your answer, follow the steps below.

✅ Yes

→ Disable it (as disabled buttons or read-only state).
↳ For temporary restrictions or filter incompatibility.
↳ When a value or status is relevant but not editable.
↳ When an action isn’t available yet (e.g., “Export in progress…”).

🚫 No

→ Hide it (remove from a toolbar, collapse in accordion).
↳ E.g., due to permissions, access controls, safety, and security.
↳ For inaccessible features: e.g., admin buttons, overrides.
↳ Hide such controls by default and reveal them once a condition is met.

Key Takeaways

Hiding important features hurts their discoverability.
Disabling features is frustrating without an explanation.
But some options might be irrelevant/unavailable to users.
Users might expect a feature to exist but won’t find it.
We need to show what’s needed and de-clutter the rest.
Avoid disruptive layout shifts as you show and hide features.
Don’t remove unavailable options or buttons automatically.
Instead, disable them and allow it to “Hide all unavailable options.”
Allow users to hide sections with a lot of disabled functionality.
Explain why a feature is disabled and how to re-enable it.

Hidden vs. Disabled In Design Systems

The design systems below provide useful real-world examples of how products design their hidden and disabled states.

Carbon (disabled state)
Carbon (read-only state)

Useful Resources

Disabled Buttons And What To Do Instead, by Adam Silver
Hidden vs. Disabled States, by Maria Panagiotidi
Making Disabled Buttons Inclusive, by Sandrina Pereira
Hide or Disable, by Sam Solomon
The Disabled State In UI Design (Sketchnotes), by Krisztina Szerovay
Usability Pitfalls of Disabled Buttons, by yours truly Vitaly Friedman
Alternative Design Patterns For Disabled Features, by Katie Jacquez
Designing Filters UX That Works, by yours truly Vitaly Friedman
UI Traps: Disabled Buttons and Inputs, by James Carleton

Meet Smart Interface Design Patterns

If you are interested in similar insights around UX, take a look at Smart Interface Design Patterns, our 10h-video course with 100s of practical examples from real-life projects — with a live UX training later this year. Everything from mega-dropdowns to complex enterprise tables — with 5 new segments added every year. Jump to a free preview.

Meet Smart Interface Design Patterns, our video course on interface design & UX.

Jump to the video course →

100 design patterns & real-life
10h-video course + live UX training. Free preview.

Printify Versus Printful for Bulk Orders

Original Source: https://ecommerce-platforms.com/articles/printify-versus-printful-for-bulk-orders

Currently, Printify and Printful are the two main online platforms that offer print-on-demand (POD) services. So, if you’re eager to kickstart your POD dropshipping business, these platforms may be the best place to start.

Like many POD platforms, Printify and Printful offer bulk order policies to accommodate clients who wish to purchase large volumes of printed items.

Printful has a slightly lower monthly subscription fee and can create more than 330 product mockups for bulk orders, whereas Printify can offer up to four mockups per product.

This is why it’s important to compare Printful versus Printify features as well as their order processing and shipping times.

For example, research shows that Printful processing shipping times are shorter than those of Printify by at least two days. Printful takes two to five business days, while Printify takes two to seven business days.

In this article, we’ll dive into the key differences of how Printful and Printify complete bulk orders.

How Does Printful Fulfill Bulk Orders?

Printful fulfills bulk orders through its vast network of printing facilities and fulfillment centers around the world. Here are the key steps the platform takes to fulfill large orders:

Order Placement

You will place your bulk orders through the Printful platform, specifying the quantity and customization details for each item. Because the platform is responsible for dropshipping, you have to provide the shipping details of your orders.


Printful will forward your order to one of its printing facilities. The platform will most likely use the printing facility that’s near the customer for faster delivery. The facility will then produce the custom items according to your specifications.

The POD platform for Printful offers various printing methods like direct-to-garment (DTG) printing, embroidery, and cutting and sewing. The method used for your order depends on the type of item ordered.

Quality Control

Printful has put quality control measures in place to ensure all its products meet the required standards. Each item is inspected for print quality, color accuracy, and any defects before it is approved for shipping.


If you’re satisfied with the quality of your products, they’ll be securely packaged for shipping. Printful offers standard packaging options as well as custom packaging solutions for bulk orders, such as branded packaging or custom enclosures.


Printful delivers bulk orders through various shipping carriers. The choice of the carrier depends on the destination and your customer’s preferences. You can also choose from the various delivery methods offered by Printful, including economy, standard, and express shipping.

Your bulk order will then be delivered to the customer’s specified address. The customer can monitor the status of their package using the tracking information provided by Printful.

Furthermore, the platform’s customer support team is available to assist your clients with any issues they may have regarding their orders.

How Printify Fulfills Bulk Orders

Like Printful, Printify relies on its POD partners to fulfill bulk orders. It also follows the same order fulfillment steps as Printful.

However, you need to check the platform’s bulk order policies to know what qualifies as a bulk order.

This way, you can provide your customers with the right information when listing your products. It also prevents any publishing error on Printify. According to Printify, bulk ordering is available on select items, including:



Tote bags

Tank tops


Pencil cases


Note that these items are available for bulk ordering when you order more than sixty items from the same print provider.

Printify has a team of in-house design experts who regularly test print providers for quality control by giving them samples of complex designs.

Any printing service provider whose performance doesn’t meet the platform’s quality standards will be removed from the platform.

Printify passes each order‒including bulk orders‒through three quality checks, starting from the time a blank product arrives at the printing facility to when the final product is ready for shipping.

In Summary

It’s important to keep in mind that the fulfillment process may vary depending on factors such as the products ordered, the print provider selected, and the shipping method chosen.

For the most up-to-date print-on-demand platform comparisons, check out ecommerce-platforms.com today!

The post Printify Versus Printful for Bulk Orders appeared first on Ecommerce Platforms.