.github | ||
.gitlab/issue_templates | ||
assets | ||
configs | ||
content | ||
databags | ||
i18n | ||
lego@8cb5f20089 | ||
models | ||
templates | ||
.gitignore | ||
.gitmodules | ||
.htaccess | ||
babel.cfg | ||
community.lektorproject | ||
packages | ||
README.md |
Community portal
This is the repository of Community portal. The current online version of this portal can be found at https://community.torproject.org or Community Onion Service.
To clone the code use either of
git clone https://git.torproject.org/project/web/community.git/
torify git clone http://dccbbv6cooddgcrq.onion/project/web/community.git/
or browse it online.
How to report bugs or feedback
First check if your issue wasn't already opened in dip.torproject.org, then file a trac ticket and choose the component: Webpages/Community.
What is Lektor
Lektor is a framework to generate and serve websites from Markdown files.
Its code can be found at GitHub.
How to contribute
(Easy) Edit this page button
You can click Edit this page
and submit your content changes in a Pull Request in GitHub.
(Advanced) Compiling a local version of the website
-
Download and install Lektor: https://www.getlektor.com/downloads/
-
Install the lektor-i18n plugin and its dependencies.
-
Clone the repository:
git clone https://git.torproject.org/project/web/community.git
- Init the building blocks submodule:
$ cd lego && git submodule update --init --recursive
-
Translations for the website are imported by Jenkins when bulding the page, but if you want to test them, download the correct branch of the translations repo to the ./i18n/ folder.
-
Finally
To run a local continuous builder: $ lektor server
To just build the website once: $ lektor build -O <folder>
How to develop on the website
Check our wiki pages.
Translations
To help us to translate, please join the Tor Project team in Transifex.
Getting help
If you want to contribute to the Community portal, we will be happy to help you. Join us at #tor-www in irc.oftc.net.
Our Workflows
Internal Workflow
This is the workflow that Tor Internal people should use when making changes on the Community Portal:
- When starting work on an issue or content, please assign the issue to yourself and move into the
Doing
column on the Community Portal Project Board. You can follow the process outlined in "How to send a merge request or propose a change" to work on your changes. - To view your changes on the website, you can either run lektor locally, or push to
develop
branch. - Once you are happy with your work, push your changes to
staging
branch and move toneeds-review
column on the Community Portal Project Board - Add a comment to the issue, tagging the reviewer, e.g
@steph
, with:- Location of page on lektor staging, e.g https://lektor-staging.torproject.org/community/staging/
- Contents file, on your branch, containing your changes, e.g https://dip.torproject.org/pili/community/blob/master/content/onion-services/contents.lr
- For the review workflow, please see
- Once the work has been reviewed and any necessary changes have been made, reviewer should move the issue to the
reviewed
column and add a comment to the issue with details of where the latest version can be found, e.g https://dip.torproject.org/{user}/community/blob/master/content/onion-services/contents.lr - Team members with write access to gitweb master will then push these changes to master, following the workflow outlined in How to use our git flow
- Merger should then move the the ticket to the
Closed
column
Volunteer Workflow
This is the workflow that external volunteers should use when making changes on the Community Portal:
We recommend that you use our github mirror to submit PRs and contributions to our Community repo. Once you have a PR ready you should:
- Ideally try to run it locally and check that nothing breaks and everything still behaves as before
- Make a PR and ping the team on #tor-www IRC channel to let us know there's a PR waiting for reviewx
At this point, one of us on the website team will aim to review your PR within 24h during the week (this may take longer on the weekends). Review will involve:
- Reading the text to make sure it's accurate and there are no spelling errors or grammar mistakes
- If there are any front end and/or template changes involved, the changes will be pushed to our development branch for functionality review
- If there are any fixes necessary, we will ask for changes to be made.
Once it all looks good and behaves correctly, we will merge your request to the master branch of the community portal canonical repo on gitweb master.