sphinx-nefertiti


Namesphinx-nefertiti JSON
Version 0.3.4 PyPI version JSON
download
home_pagehttps://github.com/danirus/sphinx-nefertiti
SummaryThe Nefertiti for Sphinx theme.
upload_time2024-06-26 17:23:51
maintainerDaniela Rus Morales
docs_urlNone
authorDaniela Rus Morales
requires_pythonNone
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Nefertiti for Sphinx

Nefertiti is a theme for [Sphinx](https://www.sphinx-doc.org/en/master/) that features:

* Responsive design, based on [Bootstrap 5.3](https://getbootstrap.com/docs/5.3).
* Text input field to filter the **index**.
* Font configuration compliant with [EU's GDPR](https://gdpr.eu/).
* Different fonts can be used for different elements.
* Light and dark color schemes, for normal text and code highlighted with Pygments styles.
* Diverse color sets are available: blue, indigo, purple, pink, red, orange, yellow, ...
* Optional highlighting of the project repository in the header.
* Optional project version selector in the header.
* Customizable footer links.

See it in action in [sphinx-themes.org](https://sphinx-themes.org/#theme-sphinx-nefertiti).

## Index filtering

<p align="center"><img align="center" width="315" height="417" src="https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/index-filtering-1.png"></p>

By default the **index** shows the content folded. Opening or closing items is remembered while browsing the documentation. To quickly find items use the input filter. The filter will display items that could be invisible within a folded item. When the user types in the input field, let us say `fo`, the index gets filtered with all the entries that match those two characters. So the index will display three matches: `Fonts`, `Footer links` and `Footnotes`. Those three entries were all folded within their sections:

<p align="center"><img align="center" width="315" height="333" src="https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/index-filtering-2.png"></p>


##  The TOC on the right side

The Table of Contents, displayed on the right side, spans itself to the right border of the browser to display long items, improving readability.

<p align="center"><img width="412" height="306" src="https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/toc.png"></p>

## Other features

Nefertiti for Sphinx comes with the following color sets. Change between them using the attribute `display` of the `html_theme_options` setting.

<p align="center"><img width="768" height="462" src="https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/colorsets.png"></p>

In order to be compliant with [EU's GDPR](https://gdpr.eu/), Nefertiti for Sphinx comes bundled with a group of fonts licensed for free distribution. Adding more fonts is explained in the [User's Guide](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/customization/fonts.html#adding-fonts):

* Assistant
* Exo
* Montserrat
* Mulish
* Nunito
* Open Sans
* Red Hat Display
* Sofia Sans
* Ubuntu
* Varta
* Work Sans
* Fira Code (monospace)
* Red Hat Mono (monospace)
* Ubuntu Mono (monospace)

Combine up to 5 different fonts:

    html_theme_options = {
        "sans_serif_font": "Nunito",
        "documentation_font": "Open Sans",
        "monospace_font": "Ubuntu Mono",
        "project_name_font": "Nunito",
        "doc_headers_font": "Georgia",

        "documentation_font_size": "1.2rem",
        "monospace_font_size": "1.1rem",
    }

## To use it

Install the package from PyPI:

```shell
pip install sphinx-nefertiti
```

Edit the `conf.py` file of your Sphinx project and change the `html_theme` setting:

```python
html_theme = "sphinx_nefertiti"
```

Now rebuild the docs and serve them to get a first glimpse of your site made up with Nefertiti for Sphinx. It has many customizable options worth to explore. You might want to continue reading the [customization](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/customization/index.html) section of the docs.

## To develop it

Clone the Git repository, create a Python virtual environment, and install the NodeJS packages:

```shell
git clone git@github.com:danirus/sphinx-nefertiti.git
cd sphinx-nefertiti
python3.11 -m venv venv
source venv/bin/activate
pip install -r requirements-dev.txt
nvm use --lts
npm install
```

Before contributing, please, install the pre-commit hook scripts:

```shell
pre-commit install
```

There are a comprehensive number of scripts in the package.json. Beyond them there is a Makefile that saves time when building the CSS and JavaScript bundles to deliver them within the Python package of the theme.

Further read the following sections:

 * For [Style development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html#style-development)
 * For [JavaScript development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html#javascript-development)
 * For [Sphinx theme development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html##python-development)


## License

Project distributed under the MIT License.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/danirus/sphinx-nefertiti",
    "name": "sphinx-nefertiti",
    "maintainer": "Daniela Rus Morales",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": "danirus@eml.cc",
    "keywords": null,
    "author": "Daniela Rus Morales",
    "author_email": "danirus@eml.cc",
    "download_url": "https://files.pythonhosted.org/packages/d0/fe/ae1a2b4ae21844717ea66b1008332e6c528eab35f5f80c75390a79e4fef1/sphinx_nefertiti-0.3.4.tar.gz",
    "platform": null,
    "description": "# Nefertiti for Sphinx\n\nNefertiti is a theme for [Sphinx](https://www.sphinx-doc.org/en/master/) that features:\n\n* Responsive design, based on [Bootstrap 5.3](https://getbootstrap.com/docs/5.3).\n* Text input field to filter the **index**.\n* Font configuration compliant with [EU's GDPR](https://gdpr.eu/).\n* Different fonts can be used for different elements.\n* Light and dark color schemes, for normal text and code highlighted with Pygments styles.\n* Diverse color sets are available: blue, indigo, purple, pink, red, orange, yellow, ...\n* Optional highlighting of the project repository in the header.\n* Optional project version selector in the header.\n* Customizable footer links.\n\nSee it in action in [sphinx-themes.org](https://sphinx-themes.org/#theme-sphinx-nefertiti).\n\n## Index filtering\n\n<p align=\"center\"><img align=\"center\" width=\"315\" height=\"417\" src=\"https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/index-filtering-1.png\"></p>\n\nBy default the **index** shows the content folded. Opening or closing items is remembered while browsing the documentation. To quickly find items use the input filter. The filter will display items that could be invisible within a folded item. When the user types in the input field, let us say `fo`, the index gets filtered with all the entries that match those two characters. So the index will display three matches: `Fonts`, `Footer links` and `Footnotes`. Those three entries were all folded within their sections:\n\n<p align=\"center\"><img align=\"center\" width=\"315\" height=\"333\" src=\"https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/index-filtering-2.png\"></p>\n\n\n##  The TOC on the right side\n\nThe Table of Contents, displayed on the right side, spans itself to the right border of the browser to display long items, improving readability.\n\n<p align=\"center\"><img width=\"412\" height=\"306\" src=\"https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/toc.png\"></p>\n\n## Other features\n\nNefertiti for Sphinx comes with the following color sets. Change between them using the attribute `display` of the `html_theme_options` setting.\n\n<p align=\"center\"><img width=\"768\" height=\"462\" src=\"https://github.com/danirus/sphinx-nefertiti/blob/main/docs/source/_static/img/colorsets.png\"></p>\n\nIn order to be compliant with [EU's GDPR](https://gdpr.eu/), Nefertiti for Sphinx comes bundled with a group of fonts licensed for free distribution. Adding more fonts is explained in the [User's Guide](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/customization/fonts.html#adding-fonts):\n\n* Assistant\n* Exo\n* Montserrat\n* Mulish\n* Nunito\n* Open Sans\n* Red Hat Display\n* Sofia Sans\n* Ubuntu\n* Varta\n* Work Sans\n* Fira Code (monospace)\n* Red Hat Mono (monospace)\n* Ubuntu Mono (monospace)\n\nCombine up to 5 different fonts:\n\n    html_theme_options = {\n        \"sans_serif_font\": \"Nunito\",\n        \"documentation_font\": \"Open Sans\",\n        \"monospace_font\": \"Ubuntu Mono\",\n        \"project_name_font\": \"Nunito\",\n        \"doc_headers_font\": \"Georgia\",\n\n        \"documentation_font_size\": \"1.2rem\",\n        \"monospace_font_size\": \"1.1rem\",\n    }\n\n## To use it\n\nInstall the package from PyPI:\n\n```shell\npip install sphinx-nefertiti\n```\n\nEdit the `conf.py` file of your Sphinx project and change the `html_theme` setting:\n\n```python\nhtml_theme = \"sphinx_nefertiti\"\n```\n\nNow rebuild the docs and serve them to get a first glimpse of your site made up with Nefertiti for Sphinx. It has many customizable options worth to explore. You might want to continue reading the [customization](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/customization/index.html) section of the docs.\n\n## To develop it\n\nClone the Git repository, create a Python virtual environment, and install the NodeJS packages:\n\n```shell\ngit clone git@github.com:danirus/sphinx-nefertiti.git\ncd sphinx-nefertiti\npython3.11 -m venv venv\nsource venv/bin/activate\npip install -r requirements-dev.txt\nnvm use --lts\nnpm install\n```\n\nBefore contributing, please, install the pre-commit hook scripts:\n\n```shell\npre-commit install\n```\n\nThere are a comprehensive number of scripts in the package.json. Beyond them there is a Makefile that saves time when building the CSS and JavaScript bundles to deliver them within the Python package of the theme.\n\nFurther read the following sections:\n\n * For [Style development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html#style-development)\n * For [JavaScript development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html#javascript-development)\n * For [Sphinx theme development](https://sphinx-nefertiti.readthedocs.io/en/latest/users-guide/development.html##python-development)\n\n\n## License\n\nProject distributed under the MIT License.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "The Nefertiti for Sphinx theme.",
    "version": "0.3.4",
    "project_urls": {
        "Homepage": "https://github.com/danirus/sphinx-nefertiti"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc14878efb995a59f07709f3b19a3482f45767a68f6f729c0062dd6a355efd45",
                "md5": "51de6624fa8b0fb8f08127d661161d4f",
                "sha256": "eedfe079288678f53e0a564360e89bd8077d4325ac279ebb4c06e9adbb80e9f4"
            },
            "downloads": -1,
            "filename": "sphinx_nefertiti-0.3.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "51de6624fa8b0fb8f08127d661161d4f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 3985167,
            "upload_time": "2024-06-26T17:23:49",
            "upload_time_iso_8601": "2024-06-26T17:23:49.354598Z",
            "url": "https://files.pythonhosted.org/packages/fc/14/878efb995a59f07709f3b19a3482f45767a68f6f729c0062dd6a355efd45/sphinx_nefertiti-0.3.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d0feae1a2b4ae21844717ea66b1008332e6c528eab35f5f80c75390a79e4fef1",
                "md5": "a5055567a44ac9faab9c146ba634926b",
                "sha256": "d66395c81add1606850d2d1189d189da88c6793423c213a035469360913700ee"
            },
            "downloads": -1,
            "filename": "sphinx_nefertiti-0.3.4.tar.gz",
            "has_sig": false,
            "md5_digest": "a5055567a44ac9faab9c146ba634926b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 3971752,
            "upload_time": "2024-06-26T17:23:51",
            "upload_time_iso_8601": "2024-06-26T17:23:51.160681Z",
            "url": "https://files.pythonhosted.org/packages/d0/fe/ae1a2b4ae21844717ea66b1008332e6c528eab35f5f80c75390a79e4fef1/sphinx_nefertiti-0.3.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-26 17:23:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "danirus",
    "github_project": "sphinx-nefertiti",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "sphinx-nefertiti"
}
        
Elapsed time: 0.27177s