why primo?

The Status Quo

There are plenty of options today for building websites, whether you can code or not. If you can’t code, site builders make it possible to build a website and edit content relatively easily, but at the cost of buying into a proprietary, expensive, closed system. If you can code, then you can typically build faster, more scalable sites by using static site generators, CMSs, and server-side frameworks. There are a few options which are approachable by non-technical and technical users, but the most popular one by far is WordPress.

WordPress has grown to be used by a third of the internet, not by pushing incessant YouTube ads, but by offering users a way to get started quickly and scale their site with custom development. But despite all its benefits, WordPress has gained a long list of shortcomings. It’s approachable, but not as non-technical-user-friendly as commercial site builders. It’s custom, but lacks a lot of the functionality developers have come to expect of the modern web and generally takes a prohibitive amount of skill and effort.

How primo’s different

primo is an integrated tool like WordPress, but by being component-driven and building on the best of the modern web it offers several advantages which make it significantly more approachable, productive, and scalable than WordPress for most sites.

Simplified Content Management

primo's Content Management System is arguably simplest and easiest CMS in the world - combining the easy on-page editing of site builders with the content-focused approach of headless systems. That means that content editors only see options related to content - no design options or code, which means significantly easier onboarding and drastically fewer ways to break the site.

Content Blocks are fluid and get edited directly in-place, while components (which contain structured data) get edited in isolated forms next to a live preview of the component. Content editors can also build entirely new types of pages by using the site's Symbol Library combined with Content Blocks.

editing on page

Streamlined Custom Development

Until now, custom development has been out of the question for small publishers. Accessing a theme's code to customize it and add functionality is typically only something a seasoned developer could do (whether they'd want to is another matter), and building a site from scratch is no walk in the park. Since code is out of sight, it's out of mind, so pre-built themes tend to have a lot of flash, but lack the code quality that would be expected of a professional website (i.e. accessibility, semantic markup, light).

primo's themes and components are the first of their kind to be both fully integrated (i.e. usable out-of-the-box) and easily and completely editable. You can use them as a starting point to build entirely new components, or start from scratch utilizing the best tools of modern development (instant preview, TailwindCSS, JS modules) to build fully custom websites in a tenth of the time, right from your browser.

developing component

Integrated Component Libraries

Reusable components (called Symbols) are at the core of primo's advantage. By working from a library of components, content editors and developers alike can build an endless variety of new pages and websites. When you update a Symbol, it instantly gets updated every where it's used on the site. And when you build a Symbol in one site, you can instantly use it on any other site built in primo.

component picker

Fast, Secure, No Maintenance

When you hit 'publish', primo builds a static site out to a Github repository that you can host anywhere (often for free). Since your site is static and made of clean HTML/CSS, it loads in a flash and can't be compromised like an intricate CMS/server/database can. Plus it handles a ton more traffic and will stay alive for as long as you keep paying for the domain name.

primo is free to use, open source, and easy to get started with no matter your skill level. If you run into any issues you’re welcome to ask for help in our Discord server.