Skip to content

docs: port documentation to Markdown with Zensical theme#1073

Merged
SaboniAmine merged 30 commits intomasterfrom
docs/port-to-zensical
Feb 27, 2026
Merged

docs: port documentation to Markdown with Zensical theme#1073
SaboniAmine merged 30 commits intomasterfrom
docs/port-to-zensical

Conversation

@davidberenstein1957
Copy link
Collaborator

Summary

Port CodeCarbon documentation from reStructuredText (.rst) to Markdown (.md) with Zensical theme.

Changes

  • Convert all RST docs to Markdown format
  • Add configuration
  • Use CodeCarbon teal branding (matching logo)
  • Fix index.md formatting
  • Add proper headers and structure matching original RST

Branding

  • Primary color: teal (CodeCarbon's brand color)
  • Accent color: teal
  • Dark/light mode support enabled

Files Changed

  • docs/*.md (19 files)
  • docs/zensical.yml (new)
  • zensical.toml (new)

Verification

Build docs with: uv run task docs

- Convert RST docs to Markdown format
- Add zensical.yml configuration
- Use CodeCarbon teal branding (matching logo)
- Fix index.md formatting
- Add proper headers and structure matching original RST
@davidberenstein1957 davidberenstein1957 requested a review from a team as a code owner February 21, 2026 06:45
@inimaz
Copy link
Collaborator

inimaz commented Feb 21, 2026

Thanks for this @davidberenstein1957 ! Maybe update as well the pyproject.toml with the new deps? If I run uv run task docs it still builds the sphinx documentation

@davidberenstein1957 davidberenstein1957 marked this pull request as draft February 21, 2026 09:35
davidberenstein1957 and others added 12 commits February 22, 2026 22:53
- Added deployment directory to .gitignore
- Updated CONTRIBUTING.md to reflect changes in documentation structure
- Replaced Sphinx with Zensical for documentation generation
- Updated README and other documentation files to align with new structure
- Removed obsolete zensical.toml and related files
- Adjusted build commands in pyproject.toml for Zensical integration
* feat: add missing oidc auth on cli

* fix: add authlib to core dependencies

fix: fix tests

* test: add auth tests for the cli

---------

Co-authored-by: Amine Saboni <saboni.amine@gmail.com>
Co-authored-by: inimaz <93inigo93@gmail.com>
* fix(api): logout flow in the dashboard

* fix:allow only authenticated users to logout

* test: fix test_authenticate

* fix: move create_redirect_response to auth_provider
Resolve conflicts:
- CONTRIBUTING.md: keep nested TOC and Zensical doc instructions
- docs: remove old Sphinx-generated files, keep Zensical structure
- pyproject.toml: keep zensical+mike for doc deps
- uv.lock: regenerated with zensical/mike deps

Co-authored-by: Cursor <cursoragent@cursor.com>
@davidberenstein1957 davidberenstein1957 marked this pull request as ready for review February 22, 2026 22:00
davidberenstein1957 and others added 2 commits February 22, 2026 23:05
- .github/pyproject_versions.py: remove extra blank line (isort)
- test_emissions_tracker_constant: widen cpu_load tolerance to 350
  (post-test cpu_percent can differ from during-test load)

Co-authored-by: Cursor <cursoragent@cursor.com>
…sions_tracker_constant

- Updated the assertion for cpu_power to improve code clarity by breaking it into multiple lines.
@codecov
Copy link

codecov bot commented Feb 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.19%. Comparing base (521adc8) to head (9d7d42d).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1073   +/-   ##
=======================================
  Coverage   78.19%   78.19%           
=======================================
  Files          38       38           
  Lines        3637     3637           
=======================================
  Hits         2844     2844           
  Misses        793      793           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@davidberenstein1957
Copy link
Collaborator Author

@inimaz @claude @SabAmine @benoit-cty do you guys have some time to take a look? I did not change much content wise(this will happen in another pr), but mostly ported things to Zensical and make it 2026 ready :)

@benoit-cty
Copy link
Contributor

Thanks David,
My concern is how to make sure we don't miss doc improvement made on RST since you create your branch.
Maybe an AI agent could check that ?
And we have to be careful with following PR to check they also migrate.

@inimaz
Copy link
Collaborator

inimaz commented Feb 25, 2026

My concern is how to make sure we don't miss doc improvement made on RST since you create your branch

@benoit-cty I think if someone changes a RST file that has been deleted by this branch it will show as a git conflict. Maybe we are good as long as we solve those conflicts properly

@inimaz
Copy link
Collaborator

inimaz commented Feb 25, 2026

We can use this one as a test #1078, we merge it and it should throw some conflicts in this branch. Then we have nothing to worry about. (I don't mind doing a version of those changes in md as well later).

- Included instructions for downloading and running a standalone installer using curl for Unix-based systems and PowerShell for Windows users.
- Updated command line section header to include an anchor for easier navigation.
@davidberenstein1957
Copy link
Collaborator Author

@inimaz @benoit-cty I understand your concern. I've checked before, and I've resolved the conflict to master accordingly. We should be able to merge the current branch and I believe we would not need another check for this.

Either way, I used an agent to check the RST against the markdown, and there don't seem to be any changes against the markdown besides some functional changes to include small Ecologits references.

I'm not 100% about the GitHub workflows working correctly for deployment and versioning, so this might need some minor iteration after merging.

- Introduced `build-docs.yml` to automate Sphinx and Zensical documentation builds on push and pull request events.
- Added `deploy-docs.yml` for deploying documentation to GitHub Pages with versioning on master branch pushes and release events.
- Configured Python environment and dependencies for both workflows.
…mmand

- Added the path for `scripts/deploy-docs.sh` to the workflow triggers.
- Corrected the pip installation command by removing the 'uv' prefix for clarity.
…mmand

- Added the path for `scripts/deploy-docs.sh` to the trigger paths in `deploy-docs.yml`.
- Corrected the command to install dependencies from `uv pip install` to `pip install` for proper execution.
…ocess

- Consolidated Sphinx and Zensical build steps into a single job.
- Updated paths to trigger on changes to `mkdocs.yml` instead of `zensical.toml`.
- Replaced Sphinx build commands with Zensical commands for documentation generation.
- Adjusted Python version setup and dependency installation using `uv` for improved compatibility.
davidberenstein1957 and others added 2 commits February 25, 2026 18:38
- Added permissions for read access in `build-docs.yml` and adjusted the build command to use `uv run`.
- Updated `deploy-docs.yml` to set permissions for write access and modified the version retrieval command to utilize `uv run` for consistency in execution.
Copy link
Collaborator

@inimaz inimaz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this @davidberenstein1957 , I like a lot the feel.
I think some hallucinations went through though check some of the comments.

Copy link
Member

@SaboniAmine SaboniAmine left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! In addition to missing sections Inigo identified, some ajustments on the content

- usage.md: remove def_list colon, fix indentation, remove escaping
- comet.md, api.md: remove unnecessary escaping
- rapl.md: fix Threadripper measurements formatting
- output.md: add CodeCarbon API and Logfire sections
- faq.md: update API data answer, link to methodology for hardware
- mkdocs.yml: edit_uri master, Parameters nav label, add test_on_scaleway

Made-with: Cursor
- Removed `grafana_token` parameter from the parameters table in `parameters.md`.
- Corrected formatting inconsistencies in `methodology.md` and `visualize.md`, including adjustments to bullet points and mathematical expressions for clarity.
- Added mkdocstrings plugin for improved documentation generation with Python support.
- Updated navigation in mkdocs.yml to include the Parameters section.
- Enhanced parameter descriptions in emissions_tracker.py for clarity and consistency.
- Corrected minor typos in API and parameters documentation.
- Introduced new check-docs-drift script in pyproject.toml for documentation consistency checks.
- Added `setuptools` to the `dev` dependencies in `pyproject.toml` for improved package management.
- Updated `uv.lock` to include specific versions of `setuptools` based on Python version compatibility.
- Modified `build-docs.yml` to restrict branch triggers to `master` only, simplifying the workflow.
Copy link
Member

@SaboniAmine SaboniAmine left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, a minor formatting issue remains, but after that I guess it could be merged!
We can easily merge patches if something was missing anyway

SaboniAmine and others added 2 commits February 27, 2026 10:23
- Added new lines in `check_powerstat_approach.py`, `intel_rapl_show.py`, `test_default_dram.py`, `test_dram_option.py`, `test_rapl_domains.py`, and `test_rapl_fix.py` for better code organization and readability.
- Fixed formatting in `emissions_tracker.py` to ensure consistent spacing in parameter documentation.
@SaboniAmine SaboniAmine merged commit db0d749 into master Feb 27, 2026
12 checks passed
@SaboniAmine SaboniAmine deleted the docs/port-to-zensical branch February 27, 2026 09:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants