CAll Us: +1 888-999-8231 Submit Ticket

The Ultimate Magento 1 to Magento 2 Migration Guide

Still on Magento 1? Today might be a good time to start working on a migration plan to a newer platform. In this guide, we will cover the process of migrating your data and customizations from Magento 1 to Magento 2.

While Adobe stopped supporting the original Magento software in June 2020, there’s a good chance  you are still using Magento 1 to sell your products online. This is not inherently bad, given that there are products like Hostdedi Safe Harbor where you can get expert Magento 1 support for a fair price, but at some point it’ll be wise to replatform to a solution that’s being actively developed using the latest practices and technologies. 

With that in mind, we created the ultimate Magento 1 to Magento 2 migration guide.

Here’s what you need to know:

Data:

The first step should always be assessing what’s going to be migrated and what’s going to be left out of this process. This is a great opportunity to reduce your site’s footprint and make it lightweight. 

Do you really need all those product variations? How about the CMS pages you created for marketing and special events? Once you decide what’s going to be migrated over to the new platform, there are several tools you can use to automate the process. A complete file and DB backup is recommended before beginning the migration just in case it doesn’t complete and files are removed or modified in the process.

Magento released their own migration tool to handle some entities, including stores, websites, and system configurations like shipping, payment, tax settings, created orders, reviews, changes in customer profiles, plus all operations with orders, products and categories. That tool can be found here.

There will be data that needs to be manually migrated and that usually includes media files, storefront designs, access control lists and admin users. A how-to guide for manually migrating entities can be found here

Integrations:

Most of the stores we see at Hostdedi contain several 3rd party integrations: ERPs, PIMs, CIMs, CRMs, etc. Ads and marketing integrations are the most common ones used for Magento.  

Almost none of these integrations can be migrated automatically due to the differences in architecture between Magento 1 and 2 but the good news is that vendors usually offer migration tools and even modules for both versions, making this migration work simpler. 

Contact your preferred vendor and ask about their Magento 2 module andchances are you won’t have to develop these integrations from scratch. In the case where there’s no official Magento 2 module for the integration you need, check the Magento Marketplace to try and find a matching module for your integration. 

Extensions:

While Magento 1 used to include a web installer to download and install modules, Magento 2 completely removed this feature for security reasons. Sites with more than 100 modules were not common back then and code quality checks were almost on existent.

With the new Marketplace implementing quality checks, the quality of Magento’s extensions has improved dramatically. And while installation is not as simple as it used to be, a consistent standard is being met and code issues are less common for Magento 2. 

Bloated sites with multiple extensions doing the same thing is extremely common in Magento 1 and replatforming to Magento 2 is a good opportunity to remove any unused module to avoid extra classes being loaded and performance degradation. 

Look and feel/Themes:

Theming is often dismissed as “not that important” or “just design” but the truth is it’s a key part of the user experience. Both Magento 1 and 2 had frontend technologies that were already old when they were released (Prorotype.js and Knockout.js), but nowadays there are better options like PWAs or hybrid approaches developers can enjoy developing. There’s not much that can be directly ported between Magento 1 and 2 when it comes to themes and front end implementations, but given the rise of headless and PWA implementations and the API coverage, it has never been simpler to develop modern and usable front ends for your ecommerce store.

Hosting:

It’s really important to keep in mind that the performance profile of Magento 2 is very different from Magento 1. Don’t leave your server sizing and decisions for last and always remember to test your builds in an environment as close as possible to your live production. The infrastructure requirements are different as well with software like Varnish and ElasticSearch being supported out of the box or as system requirements.

Sizing the resources you need might not be as simple as it was with Magento 1 and that’s why the usual recommendation is to reach out to your hosting provider with some historical data to get a quote. Magento 2 is a resource hogging beast and should be treated as such. While developers love to set up production environments, they often forget you actually have to maintain those with security updates and patches. Going the Managed Cloud route should be a simple decision if you don’t already have an in-house sysops team with previous experience with Magento clouds.

Conclusion:

We developed Hostdedi Safe Harbor to provide the updates and security needed by M1 stores post-EOL as they consider their next steps. If you’re a Hostdedi customer and not on Safe Harbor yet, it’s a simple add and can buy you time. Planning for migration early in 2021 will give you the runway you need to make a solid choice for your next platform and be ready for your store’s next phase of success – especially in time for Holiday. The most important takeaways are to understand how different Magento 1 is from Magento 2, ensure you’re looking at all your options, and feel confident in the choice you make for your next platform.

While guides like this are helpful, most of the work required for migration will need to be done by a system integrator or a development agency and having a good technological partner will help you solve common issues and scale when needed. We’re here to help with referrals or even to bat around ideas. You can explore more about Hostdedi here.

Source link

What the Entrepreneurs In Your Life Really Want for the Holidays

Hold the body wash gift sets, and put that cookie tin DOWN – here are the presents the solopreneurs in your life ACTUALLY want this Christmas.

A Better Chair

For the traditionalists who still sit in chairs while they work, a new office chair is always sliding down the wants and needs list. Trust me – just get them a new one (ideally one with lumbar support).

The only people who don’t need a new chair are the people who no longer sit in chairs to work.

For People to Stop Putting ‘10X’ In Their Subject Lines

A girl can dream, right?

Blue Light Blocking Glasses

We look at our computers and phones a LOT, and we don’t need a lecture – we need blue light blocking glasses. These little bad boys block the spectrum of blue light responsible for wreaking all sorts of havoc on our brains, from causing migraines, to the insomnia that makes us impossible to deal with.

Buy them for us. PLEASE.

An Electronic ‘Notepad’

Techies and screen-addicts though we may be, most of us carry a scattering of notebooks that contain all manner of highly-important information that we can never seem to find, let alone tag and search for.

Don’t tell us to use Evernote (because we’re already using that too), get us this amazing electronic notepad that mimics what we love about writing things down, in a way that we can actually reference and use.

Alcohol. Lots of Alcohol.

Just kidding. Or are we…?

Entrepreneurship is stressful, and when you’re your own boss, it’s five o’clock when we say it is.

A Physical Time Tracker

Because we forget to change the task on our Pomodoro apps all. The. TIME.

This awesome little time tracker is fully customizable by task, and sitting right in front of your keyboard, is a heck of a lot easier to remember to use than an app.

A Neck and Shoulder Massage

Neck and shoulder pain is a common psychosomatic response to mental stress, and entrepreneurs have a lot of it.

Unfortunately, we also don’t have an hour to lay on somebody’s massage table.

Spare us the lecture on work/life balance, and give us a robot to do it for us.

Something to Hit Between Meetings

Gyms are closed, and business marches on. Give us something besides a broken copy machine to take out our rage on, like this desktop punching bag (please).

A Decision Paperweight for the Impossible Choices

“Can you get that to me by Friday” just got a whole lot easier to answer with this hilarious paperweight from Uncommon Goods.

A Reusable Notebook

Don’t have the Beyonce budget for an electronic notebook? This affordable physical notebook by Rocketbook is reusable, and syncs up with an app to keep handwritten notes organized.

Scribble, snap, and upload, and wipe it clean to start all over again.

Inspirational Wall Art

Remind the entrepreneurs in your life what leadership potential looks like, with an inspirational poster like this one.

For You to Start Using Their Scheduling Link

For real man. We’re busy. GRAB SOME TIME.

A Book by One of the Greats

If Michael Scott’s Somehow I Manage isn’t on our desk already, it needs to be there yesterday. 

Desktop Whiteboard for Capturing Brilliance

The only reason we don’t have one already is because we haven’t found a place for it. This whiteboard fits right above your keyboard, and is the perfect place for scribbling during meetings.

Sustainable On-Ear Bluetooth Headphones

New headphones are always a need, and these headphones by LSTN sound as good as they look. Make sure anything you buy for this crowd is bluetooth capable, with a built-in mic, and background noise reduction is always a nice bonus.

Now Here’s What to Get YOURSELF

Entrepreneurs – solopreneurs ESPECIALLY – manage a lot. Finding clients, accounting, doing the actual WORK they’re selling to end users.

And all the while, WordPress and WooCommerce updates blindside us. We don’t manage our own sites particularly well. The old adage of ‘the cobbler’s family has no shoes’ proves true, and it’s making us look bad.

So BEFORE another plugin breaks, and BEFORE you miss an update that compromises your site’s security, switch to a managed host who will take care of the minutiae for you, so you can focus on what you do best.

Explore affordable Managed Hosting plans by Hostdedi, and reclaim your time.

Learn More

Source link

Adding Unit Tests to an Existing WordPress Plugin

So far we’ve done little more than introduce you to the idea of building tests for your WordPress plugins and talk about a bunch of the extra terms you need to understand to dive deeper into testing your code. Today we’re going to make it practical by grabbing one of my free plugins and adding a few unit tests to show you how to put it together. 

You can find the plugin on Github or WordPress.org. Just like my previous post, I assume that you have WP CLI installed and can set up basic tests. If you can’t check out my post introducing you to unit testing in WordPress.

Unlike the last time, we only need to scaffold the tests so we can start with the following command in our WordPress installation.

wp scaffold plugin-tests wptt-ics-feeds

Now let’s get into writing a few tests.

The first thing I want to test is to make sure that the links a user sees in their profile with calendar feeds are correct. Specifically, we’re going to look at the get_subscribe_link function.

You can see the completed tests for this section here.

Let’s start by copying the default sample test file and renaming it to test-feed-links.php. I always like to create different files for the areas of the plugins I’m writing tests for, even if that means I have lots of files to deal with. It’s far easier to stay organized with clearly labelled files.

This plugin is a bit older and instantiates a global variable as it starts up. This allows us to call that global when in our setUp function so that we have access to the plugin code. We’ll also need to use the WordPress Factory to set up a new user so that we can test the links provided with that user. That means our setUp and tearDown functions should look like this.

public function setUp(){

    parent::setUp();

    // getting the plugin global

    $this->plugin = $GLOBALS['wptt_ics_feeds'];

    // make a fake user

    $this->editor = new WP_User( $this->factory->user->create( array( 'role' => 'editor' ) ) );

}

public function tearDown(){

        parent::tearDown();

        wp_delete_user( $this->editor->ID, true );

}

Now we can get to writing a test for our feed links. We’ll write two different tests to test both situations that the link function can find itself in. First, we’ll test get_subscribe_link() without any arguments.

   /**

     * Tests base feed link without author

     */

    public function test_base_feed_link(){

        $feed_link = $this->plugin->get_subscribe_link();

        $complete_link = site_url() . '/?feed=wptticsfeeds';

        $this->assertEquals( $feed_link, $complete_link, 'The feed links are not equal' );

    }

The first thing the code above does is access our plugin instance as defined in the setUp function and call the get_subscribe_link() function. Next, I hard code the expected output of the function so that I have something to compare against. Finally, we use assertEquals to compare the two values.

With that done I can head back over to terminal and run the tests with the phpunit command. If my tests pass I’ll see something like the output below. If they don’t pass then I’ll get a big red warning instead of a green bar, which means I need to figure out why they aren’t passing and fix the tests.

In this case, our tests passed and we can move on to testing the output of our link function if we pass in an author name. You can see this test below.

   /**

     * Tests feed link with author

     */

     public function test_author_feed_link(){

        $feed_link = $this->plugin->get_subscribe_link( array( 'author' => $this->editor->ID ) );

        $complete_link = esc_url( site_url() . '/?feed=wptticsfeeds&wpttauthor=". $this->editor->user_login );

        $this->assertEquals( $feed_link, $complete_link, "The feed links with author are not equal' );

     }

Here we do almost the same thing as we did when we tested our link previously. The change is that we pass in the user we created with our setUp function and then test to make sure that this link comes out as expected with assertEquals.

Now, let’s move on to testing the custom filter inside the plugin.

Testing a WordPress Filter with PHPUnit

I’ve had some disputes with other developers about testing filters in the past. Some don’t bother testing their internal plugin filters, but I think that you should be testing these filters. Sometimes filter names change and you forget about this so don’t document it anywhere or check for usage of the filter. Writing a simple test for your filter will highlight this because when you change the filter name a test error will happen.

For this test, we’ll add a new file to our tests folder called test-filters.php. I’ll use this file to test all future filters that need to be tested in the plugin. This time our setUp function only needs to instantiate an instance of our plugin and our tearDown function doesn’t need to do anything. See the code below.

   public function setUp(){

        parent::setUp();

        // getting the plugin global

        $this->plugin = $GLOBALS['wptt_ics_feeds'];

    }

    public function tearDown(){

        parent::tearDown();

    }

Next, we need to write the test for our filter which you can see below.

   /**

     * Tests that the post where time can be changed with a filter

     */

    public function test_posts_where_filter(){

        add_filter( 'wptt_ics_feeds_how_old', array( $this, 'new_where' ), 10, 2 );

         $output = $this->plugin->two_months( '' );

         $date = date('Y-m-d', strtotime( $this->new_where() ) );

         $this->assertStringContainsString( $date, $output, 'The date filter did not work' );

    }

    public function new_where(){

        return '-1 week';

    }

The first thing we do is call our filter and then pass it our new_where function. I always like to write a separate function for filter tests because I have ended up using them in multiple tests enough that I feel this saves work later. Our new_where function will pass the string -1 week to our filter.

Next we call our two_months() function inside the plugin. Then we use a standard PHP date function to get the format we expect for the date. Since I’m mostly concerned that the date is parsed properly in the plugin I use assertStringContainsString to check to see if the output of the two_months function contains the same date string as the $date variable.

Again, if your tests pass, then it should all be green. If they fail you’ll get a big red warning instead of the pleasant green bar.

Why Don’t We Test the ICS Feed Output

Note, that I didn’t test the final output of our ICS feed. While this is possible, it’s got a bunch of moving parts that could fail and have nothing to do with my code. I could send the ICS feed to an online validator and then receive the JSON response and parse it to check if it’s valid.

If the HTTP request fails, my test fails. If the online validation service shuts down, my test fails. There are a bunch of other scenarios that could also cause my test to fail for no reason that’s my fault. Because of this, I chose not to test the final feed programmatically and figured that I could test it by subscribing to a feed in my calendar and seeing that my posts were in fact on the calendar as expected.

This Isn’t Unit Testing

I’m sure that some of you are looking at this and saying that I’m not writing unit tests, and you’d be correct. I’m writing integration tests because my code is integrating with WordPress for the tests to work. Yes, you can use WP_Mock to fake WordPress to write true unit tests, but most of the time I care that my code works with WordPress.

Today, we looked at adding a few tests to an existing WordPress plugin as a practical example of how testing can work for your projects. To continue learning, check out the business case for adding testing to your process as a business owner. It can be hard to see past the upfront expense since development will take longer, but it does pay off.

Source link

Elasticsearch in Magento 2.4: It’s not just a good idea; it’s required

When Magento 2.4 was introduced in July 2020, Elasticsearch became a requirement. If you haven’t already upgraded, you’re going to want to take action as soon as possible to deliver the best possible experience to your customers. 

What is Elasticsearch?

We’ve all gone to sites where the search function returned results that were incomplete, irrelevant, unfilterable, or otherwise difficult to make sense of. For quite some time, Elasticsearch has been a popular solution to improve search results. It allows merchants to tune search results based on frequency, recency, popularity, and other factors. It helps shoppers get to the results they want, minimizing the effect of typos, words out of order, and other all-too-human gaps in the input.

Because it’s proven so useful, Magento made it a required component in Magento installs of version 2.4 and beyond. To be specific, Elasticsearch 7.6.x is the recommended version for Magento 2.4.

So whether you’re a Main Street merchant or a multi-million dollar brand, older hosting environments will need to be upgraded. Which makes it a perfect time to take the leap to a hosting provider that will do more than just keep you online. 

Hostdedi containers support Elasticsearch (and more)

Hostdedi Managed Magento plans support many services including Elasticsearch with Cloud Containers. Containers allow you to add the services you need for your Magento installation, sized with the resources required for your site, including:

  • Elasticsearch (the search utility that’s now required in Magento 2.4)
  • RabbitMQ (an open source message broker that helps websites to exchange data)
  • Solr (another search utility, popular with Magento 1 merchants)
  • Varnish (reduces server load by caching dynamic content)

Hostdedi Magento plans are available in sizes XS through 2XL to meet the needs of  Magento merchants of all sizes. And if your site has outgrown the solution you’re currently running, our dedicated server offerings are also equipped to handle Magento 2.4.

For Dedicated servers, Elasticsearch 7.6 may require other updates

Our Dedicated Servers and Cluster solutions are set up with CentOS7, Apache 2.4, and PHP 7.4, as required for Elasticsearch 7.6. If you are using an older hosting solution, you may find that the upgrade to Magento 2.4 requires an update so that these versions are current.

Whether you’re already hosting your Magento site with Hostdedi or you’re currently hosted elsewhere, Hostdedi support makes migration to a Magento 2.4-ready environment easy (and free). We’re at-the-ready to support your compliance for Magento 2.4 whenever you are. 

Learn more about all the benefits of Hostdedi Managed Magento here

Source link

WooCommerce Performance Optimization: 5 Things You Should Be Doing Right Now

Building a blazing fast WooCommerce store used to be a full-time job. Now, basic WooCommerce performance optimization is simply a matter of knowing what technologies and plugins to use to keep your store speedy and your customers engaged. Here’s an intro to five performance topics and related resources for successfully optimizing your online store.

Shouldn’t I start with caching?

When looking at WooCommerce performance optimization, it’s easy to gravitate towards caching. While caching is a necessary technique for speeding up a WooCommerce website, it’s important that what you’re caching is also optimized.

Protip: Optimize your online store before enabling caching to make troubleshooting easier!

Page optimization

How quickly a page loads can mean the difference between a sale and a bounce. It’s important to make sure that the visible area of the page loads as quickly as possible. That means that graphical flourishes, fonts, and tracking scripts should either be some of the last things to load or should load asynchronously.

Even if you defer the loading of certain parts of the website, it’s still critical that you pay attention to how a page loads. Are external resources being loaded? Are those resources fonts or something more mission critical like CSS? Make sure critical resources are loaded quickly and/or asynchronously.

A couple great plugins for this type of optimization are Async JavaScript and Autoptimize.

Database optimization

Optimizing database queries and table types is a great way to see big performance gains with minimal effort. 

Create a new Index

Indexes help the MySQL database server find information quicker. Think of it as the index at the back of an old encyclopedia, or a table of contents in a book. While too many indexes can actually slow down the database, some strategically created indexes can have dramatic performance benefits.

Consider applying this index to your WordPress website to see a lift in performance.

MyISAM vs InnoDB

Usually referred to as storage engines, MyISAM and InnoDB are two different table types available within MySQL. For WordPress, tables should be in InnoDB format to get the best performance from your database. Of course, before making any changes, remember to back up your database.

Need to convert your database tables to InnoDB? This plugin should help.

Image optimization

While it might be hard to believe, large images can dramatically decrease the performance of your website or store. It might be tempting to think that lazy loading images can fix the problem, but remember that every image within the currently viewable area of a website must load for your user to have a good experience. In-fact, image size makes an even bigger difference when a user is visiting your website from their mobile device because network conditions and speeds are different in every place on earth. Luckily there are great plugins that can help optimize your images!

TinyPNG, Imagify, EWWW, Shortpixel, and Robin Image Optimizer are a few great image optimization plugins.

Caching

WordPress used to be just a blogging platform. As WordPress has evolved into a capable platform for building stores, learning sites, etc, so has the need for caching. You can learn about this important aspect of WooCommerce performance optimization by checking out the caching in WooCommerce article on the Hostdedi blog.

Multi-threading

If you’ve ever been in a busy supermarket wishing they’d open up another checkout lane, you already understand the idea behind multi-threading. Because a PHP process works on commands in a linear way, a growing site will eventually grind to a halt as a single PHP process becomes overwhelmed. If you add more processes, the website is capable of responding to more requests concurrently, and the system starts to move again. WordPress hosts like Hostdedi use PHP worker processes to enable multi-threading for fast concurrent requests. For a more in-depth look at worker processes and how they work, check out this article. If you’re feeling extra cool, you can even try your hand at implementing workers using the official PHP documentation.

Remember to test your optimizations

As a final thought, remember to test the speed of your website before and after optimizations. While there are many resources for testing page speed, GTMetrix is a great place to start your journey. And remember, if you need help along the way, get in touch. We are here to help!

Source link

The No Code Movement Explained

For a really long time, the only people who could build websites were the tech-savvy. You had to know a fair amount of code and do all of the work of creating the functionality your site needed manually. Then came platforms like WordPress, and pretty soon, user-created sites were cropping up all over the Internet. Thus, the no code movement was born.

Now, the no code movement has been typified as more than just a PaaS category, but as a mission-based business model that’s leveling the playing field for small businesses and less technical players.

What is the No Code Movement?

The no code movement is a sector of web tools that make building apps, websites, and automations easy for people with absolutely no coding knowledge. 

Sometimes called ‘low code’ or ‘visual development’, the no code movement represents an industry innovating on the heels of a mission: to make technology accessible to everyone.

Over the years, an array of tools and platforms have been developed to meet the market need for development tools that don’t require coding experience. These no code development platforms (NCDPs) have risen to the task of handling everything from visual web development, to no code form integrations, and even no code app development platforms.

In 2019, WebFlow hosted the No Code Conference in San Francisco, California, featuring industry speakers from platforms like Asana and Atlassian. Makerpad, an online community that plays host to a wide array of educational resources on the subject, now hosts over 180 tutorials and a community of over 1,500 members who grow and innovate in the space.

The no code movement has taken hold, and now, web development is officially anyone’s game.

But What About the Developer Job Market?

We’re a community of small business owners and developers here at Hostdedi, which puts us in the unique position of seeing both a benefit and a drawback to the no code movement. 

While this new array of platforms and user-friendly tools enable small businesses to get a leg up on a shoestring budget, it also means that developers are being cut out of that process in some cases.

However, in spite of the availability of these tools, the web development industry is still predicted to grow at a rate well above average. According to the United States Bureau of Labor Statistics, web development from 2019 to 2029 is predicted to grow at a rate of 8%, thanks in large part to the massive growth of the ecommerce sector.

In addition to the strong demand for ecommerce developers, the demand to develop NCDPs is also providing job security to counteract the market share those platforms are simultaneously taking.

3 Benefits of the No Code Movement

It’s not just another SaaS gimmick – the no code movement is addressing some very real problems. Here are the Benefits of the No Code Movement:

1. Reducing the Developer Backlog

When you’re working on an app, even small changes in copy and design have to be fed into the development team’s queue. More often than not, that queue is already backlogged with bug and UX fixes that trump a minor change to branding. 

With no code app development platforms, more team members can now work within the development environment, reducing the burden on developers to make minor changes to content.

2. Reducing Costs for Small Businesses

The average app can cost between $20,000 and $70,000 to develop, depending on the complexity. With no code app development platforms like Bubble, the costs can be as low as free, and as high as $500/month for developer accounts working on multiple applications.

3. Speeding Up Technological Inclusivity

It’s no secret that the tech world has struggled with inclusivity for a long time. There have been enormous pushes to diversify the industry, including coding classes for women and underserved communities, but the pace for the change that NCDPs can bring is much faster, empowering anyone with an Internet connection and a willingness to learn to go from idea-to-app in record time.

Drawbacks of the No Code Movement

Dependence on NCDP Platform

Like anything that makes starting a website or building an app easier, there are tradeoffs. In the case of NCDPs, the biggest one is your dependency on these platforms to keep your business going. 

For example, if the form building tool you’re using suddenly goes out of business, you have a broken link in your system, and you’ll need to deploy a fix that may not work with your other integrations.

Not Scalable

Another reason an NCDP may not make sense is that they’re not always scalable. While no code platforms are excellent, low-cost ways to validate an idea, ultimately as that business grows, it may require more robust solutions that require custom coding.

You can think of it like the use case for WooCommerce versus Magento. While a WooCommerce store is more user-friendly to build for someone without coding expertise and is incredibly scalable, it’s not the most practical ecommerce platform for enterprises who require extremely high-performance sites and a lot of custom development.

In short, no code development platforms work for a business until they don’t, at which point hiring a developer to build a custom solution may be required (but also, a lot more realistic given that you have an operational business at that point).

No Code Development Platforms We Love

Bubble

Bubble is a no code development platform that empowers people with zero coding experience to build custom applications.

Zapier

Zapier is an automation tool that allows you to connect different apps and set up event triggers to automate parts of your business and work, with absolutely zero coding.

Convert Pro

Convert Pro is an email opt in and lead generation plugin for WordPress sites. We love it so much, we’ve included it with our Managed WooCommerce plans at the Creator level and above.

Learn More

Beaver Builder

Beaver Builder is a visual building tool for WordPress sites that allows you to create customizable drag and drop designs – no coding experience required. It’s another one of our favorite WordPress plugins, and is included with all of our Managed WordPress/WooCommerce plans at the Creator level and above.

Learn More

Mailchimp

Mailchimp is as user-friendly as it gets when it comes to email marketing. Using this user-friendly tool, you can design custom email templates and automate campaigns that sync directly with your website.

Sharetribe

Sharetribe is a no code development platform that allows users to create a dynamic marketplace site, without having to code a custom solution.

Typeform

Typeform is a no code form creator with a beautiful user experience. Using this tool, you can create custom forms that sync beautifully between your website and CRM.

Decisions

Decisions is a workflow automation tool that cuts hours out of your day by automating parts of your business for you.

There are plenty more no code tools to choose from, including n8n, Saltcorn, Rintagi, OSBP, or ManyChat.

Empowering Small Businesses with No Code Platforms

The No Code Movement is more than just a business model for platform developers. It represents another step in diversifying and democratizing the tech industry. 

The no code movement isn’t a threat to the web developers and agencies Hostdedi serves, but a way to expand opportunity to serve small businesses who can use these tools to create their own success story.

Source link