[ADD] report_carbone, jsonifier, export_json : carbone is an alternative to Py3o

This commit is contained in:
2026-04-21 14:59:24 +02:00
parent ae3c34257f
commit c2061984d1
216 changed files with 29344 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 892 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 799 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 736 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,3 @@
<svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
<circle cx="12" cy="12" r="11" stroke="#01FFCC" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 193 B

View File

@@ -0,0 +1,3 @@
<svg width="19" height="19" viewBox="0 0 19 19" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
<circle cx="9.5" cy="9.5" r="9.5" fill="#01FFCC"/>
</svg>

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,153 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JSON Export - Odoo v18</title>
<!-- <link rel="stylesheet" href="/export_json/static/src/css/description.css">-->
</head>
<body>
<div class="container" style="font-family: 'Inter', sans-serif; line-height: 1.7; color: #001E2B;
background-color: #ffffff; max-width: 1200px; margin: 0 auto; padding: 20px;">
<!-- Header -->
<div class="header"
style="background-color: #001e2b; color: #f5f3ed; padding: 80px 60px; margin-bottom: 60px; text-align: center;">
<table class="header-title-table" style="width: 100%; margin-bottom: 20px;">
<tr>
<td class="header-title-left"
style="text-align: right; vertical-align: middle; padding-right: 40px;">
<h1 class="header-title"
style="color: #01FFCC; font-size: 3em; font-weight: 700; letter-spacing: -0.02em; margin: 0;">
JSON Export
</h1>
</td>
<td class="header-title-right" style="text-align: left; vertical-align: middle;">
<img src="assets/logo/mangono-logo.png" alt="Mangono Logo" class="header-logo"
style="width: 300px; max-width: 100%; object-fit: contain;">
</td>
</tr>
</table>
<span class="header-badge"
style="display: inline-block; border: 1px solid rgba(245,243,237,0.3); padding: 10px 24px; margin: 10px 8px; font-size: 0.85em; letter-spacing: 0.05em; text-transform: uppercase; color: #f5f3ed;">
Free Module
</span>
<span class="header-badge"
style="display: inline-block; border: 1px solid rgba(245,243,237,0.3); padding: 10px 24px; margin: 10px 8px; font-size: 0.85em; letter-spacing: 0.05em; text-transform: uppercase; color: #f5f3ed;">
Odoo v18
</span>
</div>
<!-- Description -->
<div class="section" style="margin-bottom: 80px;">
<div class="section-title-wrapper" style="margin-bottom: 40px;">
<div class="section-title-line"
style="background-color: #01ffcc; height: 16px; width: 310px; margin-bottom: 12px;"></div>
<h2 class="section-title"
style="color: #001E2B; font-size: 2.2em; font-weight: 700; letter-spacing: -0.01em; margin: 0; border-bottom: 1px solid #001E2B; padding-bottom: 15px;">
Description
</h2>
<img src="assets/svg/green-dot.svg" alt="green-dot" class="section-title-dot"
style="display: block; margin-top: 8px;">
</div>
<p class="section-text" style="font-size: 1.1em; line-height: 1.8;">
<strong>JSON Export</strong>
is a module that adds the JSON option as an export format inside Odoos native export tool.
</p>
</div>
<!-- Screenshots Section -->
<div class="section" style="margin-bottom: 80px;">
<div class="section-title-wrapper" style="margin-bottom: 40px;">
<div class="section-title-line"
style="background-color: #01ffcc; height: 16px; width: 310px; margin-bottom: 12px;"></div>
<h2 class="section-title"
style="color: #001E2B; font-size: 2.2em; font-weight: 700; letter-spacing: -0.01em; margin: 0; border-bottom: 1px solid #001E2B; padding-bottom: 15px;">
Screenshot
</h2>
<img src="assets/svg/green-dot.svg" alt="green-dot" class="section-title-dot"
style="display: block; margin-top: 8px;">
</div>
<div class="screenshot-wrapper" style="text-align: center; margin: 30px 0;">
<img src="assets/screenshots/pop-up-export.png" class="screenshot-image"
style="width: 100%; max-width: 100%; object-fit: contain;">
</div>
</div>
<!-- Installation -->
<div class="section" style="margin-bottom: 80px;">
<div class="section-title-wrapper" style="margin-bottom: 40px;">
<div class="section-title-line"
style="background-color: #01ffcc; height: 16px; width: 310px; margin-bottom: 12px;"></div>
<h2 class="section-title"
style="color: #001E2B; font-size: 2.2em; font-weight: 700; letter-spacing: -0.01em; margin: 0; border-bottom: 1px solid #001E2B; padding-bottom: 15px;">
Installation &amp; Configuration
</h2>
<img src="assets/svg/green-dot.svg" alt="green-dot" class="section-title-dot"
style="display: block; margin-top: 8px;">
</div>
<h3 style="color: #001E2B; font-size: 1.4em; margin-top: 40px; margin-bottom: 20px; font-weight: 500;">
1. Installation
</h3>
<p>Install the module from the Odoo Store.</p>
<h3 style="color: #001E2B; font-size: 1.4em; margin-top: 40px; margin-bottom: 20px; font-weight: 500;">
2. Configuration
</h3>
<p>No specific configuration required.</p>
<h3 style="color: #001E2B; font-size: 1.4em; margin-top: 40px; margin-bottom: 20px; font-weight: 500;">
3. Usage
</h3>
<p>When using Odoos export feature, the “JSON” option will appear in “Export Format”.</p>
</div>
<!-- Technical Specifications -->
<div class="section" style="margin-bottom: 80px;">
<div class="section-title-wrapper" style="margin-bottom: 40px;">
<div class="section-title-line"
style="background-color: #01ffcc; height: 16px; width: 310px; margin-bottom: 12px;"></div>
<h2 class="section-title"
style="color: #001E2B; font-size: 2.2em; font-weight: 700; letter-spacing: -0.01em; margin: 0; border-bottom: 1px solid #001E2B; padding-bottom: 15px;">
Technical Specifications
</h2>
<img src="assets/svg/green-dot.svg" alt="green-dot" class="section-title-dot"
style="display: block; margin-top: 8px;">
</div>
<div class="tech-specs"
style="background-color: #ffffff; padding: 30px; margin-top: 30px; border: 1px solid #e8e6df;">
<table style="width: 100%; border-collapse: collapse;">
<tr>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df; font-weight: 500; width: 240px;">
Odoo Version
</td>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df;">18.0</td>
</tr>
<tr>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df; font-weight: 500;">
Dependencies
</td>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df;">base, web, jsonifier</td>
</tr>
<tr>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df; font-weight: 500;">Category
</td>
<td style="padding: 15px 0; border-bottom: 1px solid #e8e6df;">Extra Tools</td>
</tr>
<tr>
<td style="padding: 15px 0; font-weight: 500;">License</td>
<td style="padding: 15px 0;">AGPL-3</td>
</tr>
</table>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,187 @@
/* =========================
GLOBAL
========================= */
body {
font-family: "Inter", sans-serif;
line-height: 1.7;
color: #001e2b;
background-color: #ffffff;
}
a {
color: #01ffcc;
}
.container {
font-family: "Inter", sans-serif;
line-height: 1.7;
color: #001e2b;
background-color: #ffffff;
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
/* =========================
HEADER
========================= */
.header {
background-color: #001e2b;
color: #f5f3ed;
padding: 80px 60px;
margin-bottom: 60px;
text-align: center;
}
.header-title-table {
width: 100%;
margin-bottom: 20px;
}
.header-title-left {
text-align: right;
vertical-align: middle;
padding-right: 40px;
}
.header-title-right {
text-align: left;
vertical-align: middle;
}
.header-title {
color: #01ffcc;
font-size: 3em;
font-weight: 700;
letter-spacing: -0.02em;
margin: 0;
}
.header-logo {
width: 300px;
max-width: 100%;
object-fit: contain;
}
/* =========================
BADGES
========================= */
.header-badge {
display: inline-block;
border: 1px solid rgba(245, 243, 237, 0.3);
padding: 10px 24px;
margin: 10px 8px;
font-size: 0.85em;
letter-spacing: 0.05em;
text-transform: uppercase;
color: #f5f3ed;
}
/* =========================
SECTIONS
========================= */
.section {
margin-bottom: 80px;
}
/* =========================
SECTION TITLES PATTERN B
========================= */
.section-title-wrapper {
margin-bottom: 40px;
}
.section-title-line {
background-color: #01ffcc;
height: 16px;
width: 310px;
margin-bottom: 12px;
}
.section-title {
color: #001e2b;
font-size: 2.2em;
font-weight: 700;
letter-spacing: -0.01em;
margin: 0;
border-bottom: 1px solid #001e2b;
padding-bottom: 15px;
}
.section-title-dot {
display: block;
margin-top: 8px;
}
/* =========================
TEXT
========================= */
.section-text {
font-size: 1.1em;
line-height: 1.8;
}
/* =========================
SCREENSHOT
========================= */
.screenshot-wrapper {
text-align: center;
margin: 30px 0;
}
.screenshot-image {
width: 100%;
max-width: 100%;
object-fit: contain;
}
/* =========================
SUBTITLES
========================= */
.section h3 {
color: #001e2b;
font-size: 1.4em;
margin-top: 40px;
margin-bottom: 20px;
font-weight: 500;
}
/* =========================
TECH SPECS
========================= */
.tech-specs {
background-color: #ffffff;
padding: 30px;
margin-top: 30px;
border: 1px solid #e8e6df;
}
.tech-specs table {
width: 100%;
border-collapse: collapse;
}
.tech-specs td {
padding: 15px 0;
border-bottom: 1px solid #e8e6df;
font-size: 0.95em;
}
.tech-specs td:first-child {
font-weight: 500;
color: #001e2b;
width: 240px;
}
.tech-specs td:last-child {
color: #5a5a5a;
}