novaris-dev / novaris
A starter project for building websites with the Novaris Content Management System.
Requires
- php: >=8.2
- novaris-dev/framework: ^1.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-11-03 05:57:00 UTC
README
Novaris is a lightweight, flat-file content management system built with PHP. It is designed to provide a simple and flexible foundation for building websites without the need for a database.
Content is written in Markdown, while themes handle the presentation of the site. Novaris includes support for custom content types, taxonomies, routing, templates, themes, caching, and static site generation.
Whether you're building a blog, personal website, documentation site, or something entirely your own, Novaris aims to keep the development experience simple while giving you the flexibility to build the site you want.
Requirements
Before installing Novaris, make sure your environment meets the following requirements:
- PHP 8.2 or higher
- Composer
- Apache or Nginx
For theme and frontend development
- Nodejs
- npm
Installation
Clone the Novaris repository:
git clone https://github.com/novaris-dev/novaris.git cd novaris
Install the PHP dependencies
Composer install
If you are developing a theme or working with frontend assets, install the Node.js dependencies:
npm install
Start the frontend development environment:
npm run dev
Starting your own theme
Novaris doubles as a starter theme. When you copy it to build your own, give the copy its own identity first. The framework reads theme.json to install and update themes, so leaving the Novaris values in place makes your site check the Novaris repository for updates.
theme.json: set your theme's details:{ "name": "My Theme", "slug": "my-theme", "version": "0.0.1", "repository": "your-name/my-theme" }slugis the theme's folder name, in lowercase with hyphens.versionstays at0.0.1until your first release. Then keep it in step with your release tags, because updates are found by comparing it with the latest GitHub release ofrepository.repositoryis your theme's GitHubowner/name. Leave it empty ("") if you don't publish releases; the update check is skipped when it's missing.
export-theme.js: changeexportPathfrom'novaris'to your slug.package.json:- Change
name,description,author,homepage,repositoryandbugsto your own. - In the
watch:novarisscript, replace the--url=address with your site's address.
- Change
composer.json: changename(for exampleyour-name/my-theme).
The Novaris version in theme.json and package.json stays at 0.0.1 on purpose, so every new theme starts from there. Novaris releases themselves are tracked in changelog.md and the git tags.
Documentation
Coming soon