Skip to content

Developer Documentation

MammothDevelopper edited this page Sep 19, 2025 · 1 revision

💻 Developer Documentation

Nodify is a headless CMS designed for developers. It separates content management from the front-end, offering complete flexibility via RESTful APIs. This document serves as a technical reference for interacting with the Nodify API and creating dynamic pages with templates.

1. Getting Started and Installation

git clone https://github.com/AZIRARM/nodify.git
cd nodify
docker compose up -d

2. Structure and Content Creation

Content in Nodify is organized into nodes. They can contain text, HTML, JSON, images, or files, and can be hierarchical.

Creating a Node

POST /v0/nodes
Content-Type: application/json
{
  "name": "blog",
  "language": "en"
}

Adding Content to a Node

POST /v0/contents
Content-Type: application/json
{
  "nodeCode": "{your_node_code}",
  "type": "text",
  "name": "article-1",
  "content": "<h1>Welcome to my first article</h1>",
  "slug": "welcome-to-my-first-article"
}

3. Data Management API

POST /v0/datas
Content-Type: application/json
{
  "key": "user_settings",
  "value": { "theme": "dark", "notifications": true }
}

4. Retrieving Content

  • Full envelope (default):
GET /v0/content/code/{your_content_code}
  • Raw content only:
GET /v0/content/code/{your_content_code}?payloadOnly=true

5. Tracking Clicks and Views

PATCH /v0/content-clicks/contentCode/{your_content_code}

6. User Feedback

POST /v0/feedbacks
Content-Type: application/json
{
  "contentCode": "article_123",
  "author": "[email protected]",
  "rating": 5,
  "comment": "Great article!"
}

7. Plugins

$with(jquery3.7.1)
<p>This content uses the jQuery plugin.</p>

8. Templates

Creating Templates

Templates allow you to build dynamic pages by combining independent content nodes.

Example structure:

  • html-1 : Header (global template)
  • html-2 : Footer
  • css-1 : CSS
  • html-3 : Body content
  • JS-1 : JavaScript

Assembling the page:

<html>
<head>
    <style>$content(css-1)</style>
</head>
<body>
    $content(html-1) <!-- Header -->
    $content(html-3) <!-- Body -->
    $content(html-2) <!-- Footer -->
    <script>$content(JS-1)</script>
</body>
</html>

Nesting Templates:

<header>
    <h1>$content(site-title)</h1>
    <nav>$content(category-list)</nav>
</header>

Advantages: reusability, maintainability, flexibility, modularity.

#Nodify #HeadlessCMS #DeveloperTools #APIDriven #WebDevelopment #DynamicPages #WebDesign #Templates #ContentManagement #RESTAPI #FrontendDevelopment #BackendDevelopment #Coding #SoftwareDevelopment #TechStack

Clone this wiki locally