Vocdoni logo

Vocdoni is the first universally verifiable, censorship-resistant, anonymous, and self-sovereign governance protocol.
Our main aim is a trustless voting system where anyone can speak their voice and where everything is auditable.
We are engineering building blocks for a permissionless, private and censorship resistant democracy.
Explore the developer portal ยป

More About Us

Vocdoni Website | Web Application | Blockchain Explorer | MIT Law Publication | Contact Us

Key Repositories

Vocdoni Node | Vocdoni SDK | UI Components | Application UI | Census3
# developer-portal This repository hosts the Vocdoni developer portal, the source-of-truth of technical documentation for all of the software under the Vocdoni umbrella. It is created with [Docusaurus](https://docusaurus.io/) and is hosted at https://developer.vocdoni.io ### Table of Contents - [Getting Started](#getting-started) - [Reference](#reference) - [Examples](#examples) - [Preview](#preview) - [Disclaimer](#disclaimer) - [Contributing](#contributing) - [License](#license) ## Getting Started You can host the developer portal locally. The easiest way to do so is with the docusaurus development server: ```bash yarn install yarn start ``` You can also build the site: ```bash yarn build ``` You can locally deploy the site: ```bash USE_SSH=true yarn deploy ``` This will run `docusaurus deploy` which deploys whatever iteration of the site has been built in the `build/` folder. It will then push the build result to the remote `gh-pages` branch corresponding to the branch you are running the command from. ## Reference There are multiple auto-generated documentation files that require generation. ### Generate the API documentation The Vocdoni API documentation is sourced from the `swaggers` folder. If you modified the swagger file under `swaggers/` folder and want to build `.mdx` files again: ```bash yarn run re-gen ``` Note that this docs generation step is already performed as part of `yarn start` or `yarn build`. ### Generate the SDK documentation If you want to generate the SDK documentation for yourself, you can do so from inside the `docs` directory in the `vocdoni-sdk` project. ~~~bash yarn yarn build ~~~ This creates a temporary documentation folder `temp_docs`. Then you can return to the developer-documentation directory and run the yarn script to replace the SDK reference folder, clean up some broken autogenerated links, and remove the temp_docs folder: ~~~bash # Set the vocdoni sdk folder path export VOCDONI_SDK_PATH=...... yarn copy-sdk-docs ~~~ Note that the SDK docs are tracked by git, and you should not need to do this if you are not a repo maintainer. ### Translations We integrated crowdin for translations. Use: ```bash yarn crowdin:upload ``` To upload translations to crowdin. There you can translate the files and then download them using: ```bash yarn crowdin:download ``` This will download translation files to the `i18n/` folder. To test them use `yarn start -- --locale es`. See these issues [1](https://community.crowdin.com/t/exclude-single-line-on-markdown-headers/2897), [2](https://community.crowdin.com/t/broken-mdx-components-on-download/2912) to understand why the `pre`/`post` scripts on crowdin download and upload. ## Contributing While we welcome contributions from the community, we do not track all of our issues on Github and we may not have the resources to onboard developers and review complex pull requests. That being said, there are multiple ways you can get involved with the project. Please review our [development guidelines](https://developer.vocdoni.io/development-guidelines). ## License This repository is licensed under the [GNU Affero General Public License v3.0.](./LICENSE) Vocdoni Developer Portal Copyright (C) 2024 Vocdoni Association This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)