Pruvious is a Nuxt module that transforms your app into a powerful CMS. It provides features such as database models, file management, a dashboard, block components, authentication, translations, caching, and many more.
Hi! After using WordPress for more than 15 years, I was looking for a replacement based on JavaScript. After trying a lot of free headless CMS options, I always found that some features were preventing me from switching. For example, while I really like Strapi, I couldn't utilize block nesting the way I do in WordPress (Gutenberg) or even ACF repeaters before Gutenberg.
Because I wanted to write my frontend with Vue, the most sensible option for me was to use Nuxt for server-side rendering. Last year, I attempted to create a small backend with some basic CMS functionalities for managing pages and custom fields that are connected to Nuxt via an API. While this started as a hobby project, I invested more and more time into it. In the end, I released the project (Nuxt module) under the MIT license with the name Pruvious (pun intended).
Pruvious allows you to build modular websites very quickly by providing full TypeScript support for everything you do. For instance, you can create collections (equivalent to custom post types in WordPress) and have their fields automatically typed in the included query builder. The most powerful feature of Pruvious is its blocks. They are regular Vue components used to build website pages. The only difference (addition) is that you can define your fields (with all the options, validation, and value sanitizing rules) directly in Vue's `defineProps()`, which accelerates your development tremendously. These field definitions are automatically parsed away when your project is built, and the corresponding database columns are created along with the REST API endpoints. Yes, Pruvious uses separate tables for all collections (post types); there are no `wp_posts` and `wp_postmeta`, joining tables, and sluggish SQL queries.
There are many benefits you can get from Pruvious if you develop CMS-powered websites, and it's completely free! Also, if you are not familiar with Vue or Nuxt, it's very easy to learn as Vue is the most beginner-friendly JS framework nowadays. If you haven't tried it, I really recommend doing so. You can find the complete list of Pruvious features on the website: https://pruvious.com. If I haven't covered something, feel free to ask here! Thank you for reading. Peace out :)
I usually use Nuxt as my frontend framework of choice, and installing Pruvious is as easy as adding a Nuxt module. Great DX!
To me it seems like the module is very well written, and the way I define new CMS collections and blocks feels very Nuxt-native to me. The conventions are quite similar to Nuxt's.
I cannot wait for more people to find this CMS, and for the contributions to start flowing on Github!
Pruvious