{"id":20564333,"url":"https://github.com/tarantool/doc","last_synced_at":"2025-08-20T14:31:01.333Z","repository":{"id":37444996,"uuid":"62576980","full_name":"tarantool/doc","owner":"tarantool","description":"Tarantool documentation","archived":false,"fork":false,"pushed_at":"2024-10-29T09:11:27.000Z","size":70571,"stargazers_count":15,"open_issues_count":657,"forks_count":43,"subscribers_count":31,"default_branch":"latest","last_synced_at":"2024-10-29T11:01:33.413Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.tarantool.io/en/doc/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tarantool.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-04T17:00:57.000Z","updated_at":"2024-10-28T10:31:05.000Z","dependencies_parsed_at":"2024-11-05T11:49:17.158Z","dependency_job_id":null,"html_url":"https://github.com/tarantool/doc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tarantool%2Fdoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tarantool%2Fdoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tarantool%2Fdoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tarantool%2Fdoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tarantool","download_url":"https://codeload.github.com/tarantool/doc/tar.gz/refs/heads/latest","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230431100,"owners_count":18224655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T04:25:44.296Z","updated_at":"2024-12-19T12:09:16.849Z","avatar_url":"https://github.com/tarantool.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"Tarantool Documentation\n=======================\n\n.. figure:: https://badges.crowdin.net/tarantool-docs/localized.svg\n   :alt: Translation badge\n\nTarantool documentation source, published at https://www.tarantool.io/doc/.\n\nHow to build Tarantool documentation using Docker\n-------------------------------------------------\n\nSee `Docker \u003chttps://www.docker.com\u003e`_\n\nPrepare for work\n~~~~~~~~~~~~~~~~\n\nFirst of all, pull the image for building the docs.\n\n..  code-block:: bash\n\n    docker pull tarantool/doc-builder:fat-4.3\n\nNext, initialize a Makefile for your OS:\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"cmake .\"\n\nUpdate submodules and generate documentation sources from code\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nA big part of documentation sources comes from several other projects,\nconnected as Git submodules.\nTo include their latest contents in the docs, run these two steps.\n\n1.  Update the submodules:\n\n    ..  code-block:: bash\n\n        git submodule update --init\n        git fetch --recurse-submodules\n        git submodule update --remote --checkout\n\n    This will initialize Git submodules and update them to the top of the stable\n    branch in each repository.\n\n    ``git submodule update`` can sometimes fail, for example,\n    when you have changes in submodules' files.\n    You can reinitialize submodules to fix the problem.\n\n    **Caution:** all untracked changes in submodules will be lost!\n\n    ..  code-block:: bash\n\n        git submodule deinit -f .\n        git submodule update --init\n\n\n    Note that there's an option to update submodule repositories with a ``make`` command.\n    However, it's intended for use in a CI environment and not on a local machine.\n\n    ..  code-block:: bash\n\n        docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make pull-modules\"\n\n2.  Build the submodules content:\n\n    ..  code-block:: bash\n\n        docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make build-modules\"\n\n    This command will do two things:\n\n    1.  Generate documentation source files from the source code\n    2.  Copy these files to the right places under the ``./doc/`` directory.\n\n    If you're editing submodules locally, repeat this step\n    to view the updated results.\n\nNow you're ready to build and preview the documentation locally.\n\nBuild and run the documentation on your machine\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nWhen editing the documentation, you can set up a live-reload server.\nIt will build your documentation and serve it on `127.0.0.1:8000 \u003chttp://127.0.0.1:8000\u003e`_.\nEvery time you make changes in the source files, it will rebuild the docs\nand refresh the browser page.\n\n..  code-block:: bash\n\n    docker run --rm -it -p 8000:8000 -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make autobuild\"\n\nFirst build will take some time.\nWhen it's done, open `127.0.0.1:8000 \u003chttp://127.0.0.1:8000\u003e`_ in the browser.\nNow when you make changes, they will be rebuilt in a few seconds,\nand the browser tab with preview will reload automatically.\n\nYou can also build the docs manually with ``make html``,\nand then serve them using python3 built-in server:\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make html\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make html-ru\"\n    python3 -m http.server --directory output/html\n\nor python2 built-in server:\n\n..  code-block:: bash\n\n    cd output/html\n    python -m SimpleHTTPServer\n\nthen go to `localhost:8000 \u003chttp://localhost:8000\u003e`_ in your browser.\n\nThere are other commands which can run\nin the ``tarantool/doc-builder`` container:\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make html\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make html-ru\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make singlehtml\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make singlehtml-ru\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make pdf\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make pdf-ru\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make json\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make json-ru\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make epub\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make epub-ru\"\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make update-po\"\n\nLinkcheck\n---------\n\nThere's a specific build mode which checks internal and external links instead of producing a document.\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make linkcheck\"\n\nIf you need to save the linkcheck's report in a file, you can use the following trick:\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make linkcheck\" 2\u003e\u00261 | tee linkcheck.log\n\nHere ``2\u003e\u00261`` redirects the ``stderr`` output to ``stdout``, and then ``tee`` both\nshows in on screen and writes to a file.\n\n\nVale\n----\n\nTarantool documentation uses the Vale linter for checking grammar, style, and word usage.\nIts configuration is placed in the ``vale.ini`` file located in the root project directory.\n\nTo enable RST support in Vale, you need to install Sphinx.\nThen, you can enable Vale integration in your IDE, for example:\n\n*   `VS Code \u003chttps://marketplace.visualstudio.com/items?itemName=ChrisChinchilla.vale-vscode\u003e`_\n*   `IntelliJ-based IDEs \u003chttps://plugins.jetbrains.com/plugin/16136-grazie-professional/docs/project-style-guides.html#vanilla-vale\u003e`_\n\n\nLocalization\n------------\n\nTerms:\n\n*   **translation unit** (TU) is an atomic piece of text which can be translated.\n    A paragraph, a list item, a heading, image's alt-text and so on.\n\n*   **translation source files** are the files with translation units in English only.\n    They're located in ``locale/en``.\n\n*   **translation files** are the files which match original text to\n    translated text. They're located in ``locale/ru``.\n\nTo update the translation files, run the `make update-po` task:\n\n..  code-block:: bash\n\n    docker run --rm -it -v $(pwd):/doc tarantool/doc-builder:fat-4.3 sh -c \"make update-po\"\n\nTranslate the strings in the updated files and then commit the changes.\n\nHow to contribute\n-----------------\n\nTo contribute to documentation, use the\n`REST \u003chttp://docutils.sourceforge.net/docs/user/rst/quickstart.html\u003e`_\nformat for drafting and submit your updates as a\n`pull request \u003chttps://help.github.com/articles/creating-a-pull-request\u003e`_\nvia GitHub.\n\nTo comply with the writing and formatting style, use the\n`guidelines \u003chttps://www.tarantool.io/en/doc/latest/contributing/docs/\u003e`_\nprovided in the documentation, common sense and existing documents.\n\nNotes:\n\n*   If you suggest creating a new documentation section (a whole new\n    page), it has to be saved to the relevant section at GitHub.\n\n*   If you want to contribute to localizing this documentation (for example, into\n    Russian), add your translation strings to ``.po`` files stored in the\n    corresponding locale directory (for example, ``/locale/ru/LC_MESSAGES/``\n    for Russian). See more about localizing with Sphinx at\n    http://www.sphinx-doc.org/en/stable/intl.html.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftarantool%2Fdoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftarantool%2Fdoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftarantool%2Fdoc/lists"}