PHPackages                             netlipress/netlipress - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. netlipress/netlipress

ActiveProject

netlipress/netlipress
=====================

Netlipress Starter Project

0.2.0(4y ago)526[1 issues](https://github.com/jwktje/netlipress/issues)MITPHP

Since Feb 22Pushed 4y ago2 watchersCompare

[ Source](https://github.com/jwktje/netlipress)[ Packagist](https://packagist.org/packages/netlipress/netlipress)[ RSS](/packages/netlipress-netlipress/feed)WikiDiscussions main Synced 5d ago

READMEChangelog (1)Dependencies (1)Versions (23)Used By (0)

NetliPress
==========

[](#netlipress)

A framework to write a website managed by Netlify CMS and themed like a Wordpress Theme. Code can be easily migrated to a full fledged Wordpress Theme.

How does it work?
-----------------

[](#how-does-it-work)

This framework uses Collections from Netlify CMS that are formatted as JSON. The router checks if an entry in a collection exists, if so, it loads the data and renders the page.

This data is made available via template tags that mimic a Wordpress and ACF workflow. These tags are described further down. The theme uses Laravel Mix to build the front-end assets.

Get started
-----------

[](#get-started)

1. Run `composer create-project netlipress/netlipress MyProjectName`
2. Run `cd MyProjectName`
3. Run `npm install && npm run prod`
4. Create a new local domain in MAMP (or similar) that points to the `/public` directory of this project
5. Configure the CMS by filling the `/config/cms/*.json` files. Set the `site_url` option in `/config/cms/config.json`to the domain you choose in the previous step. Check the section below for more info on the config files and check the NetlifyCMS docs for the available options.
6. Visit your local domain and verify that you can see the NetliPress splash screen.
7. Run the NetlifyCMS proxy server with `npm run proxy`
8. Access the CMS locally at `/admin`. If the host is configured correctly and the proxy server is running, you should be able to access the CMS.
9. Create a new page in the CMS with the path `/` and a title. This will be your homepage. Verify that you can publish it. Then refresh the CMS page, and you should be able to click `View Live` to visit the page. You should see the title you entered. Don't worry if the layout looks broken. This is because NetliPress doesn't ship with a styled theme. If the URL is wrong, check if you configured your `site_url` correctly in step 6.
10. (optionally) Configure the browserSync proxy option in `webpack.mix.js`
11. Use `npm run watch` during development to compile assets and update via BrowserSync

Deploy to Netlify
-----------------

[](#deploy-to-netlify)

This is to be documented better. But in short the steps are.

1. Initialize a Git repository for this project and push it to Gitlab or Github.
2. Set up a new site on Netlify and connect it with that same repository.
3. Netlify should run `php netlipress-build` any time NetlifyCMS commits new changes to the content. Note; the netlify.toml file should be picked up so the build commands should be automatically discovered.
4. The Netlify build should automatically compile your assets with Laravel Mix any time you commit something containing js or scss files. NetlifyCMS commits will trigger static site generation but they skip asset compilation because their commits only include json or images. Resulting in quicker builds and less build minutes.

This means that any time you make a code change and push it, the commit hook makes sure you push the latest compiled production assets. And Netlify triggers a build of only the static site assets. This means you commit compiled assets but that is on purpose. This saves on build minutes because npm doesn't run on Netlify this way.

Config files
------------

[](#config-files)

`config.json` is the base config. All other files get merged with this file to make the final config for NetlifyCMS

`collections.json` holds all your content collections. Pages and posts are filled by default.

`fields.json` allows you to specify field groups that get shared across collections. An example is provided by default

`menu.json` holds a single collection for menu records. Check `/content/menu/primary.json` for an example.

`settings.json` holds a single collection for groups of site settings. Check `/content/settings/socials.json` for an example.

Development functions
---------------------

[](#development-functions)

`npm run watch` - Build assets for development

`npm run prod` - Build assets for production

`php netlipress-build` - Build static site for Netlify

`npm rum proxy` - Start a proxy to use NetlifyCMS on local the repository

To Do
-----

[](#to-do)

- Document Netlify Deployment steps
- Document Git hook to build production so build minutes on netlify are minimal
- Document the shared field groups
- Document the separate JSON files in config

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~19 days

Recently: every ~10 days

Total

22

Last Release

1511d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/48cbb5b5d647fda6eb13d2aa37b14ac0996b0198f2e561735eadc20b3537a50a?d=identicon)[jwktje](/maintainers/jwktje)

---

Top Contributors

[![jwktje](https://avatars.githubusercontent.com/u/4722137?v=4)](https://github.com/jwktje "jwktje (41 commits)")

---

Tags

wordpressnetlify

### Embed Badge

![Health badge](/badges/netlipress-netlipress/health.svg)

```
[![Health](https://phpackages.com/badges/netlipress-netlipress/health.svg)](https://phpackages.com/packages/netlipress-netlipress)
```

###  Alternatives

[roots/wordpress

WordPress is open source software you can use to create a beautiful website, blog, or app.

19116.9M258](/packages/roots-wordpress)[aristath/kirki

Extending the WordPress customizer

1.3k73.0k4](/packages/aristath-kirki)[wpreadme2markdown/wpreadme2markdown

Convert WordPress Plugin readme.txt to Markdown

9564.6k4](/packages/wpreadme2markdown-wpreadme2markdown)[wpstarter/framework

The WpStarter Framework - Laravel Framework for WordPress

1810.1k4](/packages/wpstarter-framework)[tacowordpress/tacowordpress

WordPress custom post types that feel like CRUD models

232.2k](/packages/tacowordpress-tacowordpress)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
