Coder Social home page Coder Social logo

docs.carpentries.org's Introduction

Why was this handbook created?

Historically, information and resources related to The Carpentries have been spread across various websites, Google docs, GitHub repos, and more. The handbook is a one-stop shop that consolidates information on running a workshop, developing or maintaining lessons, participating in an instructor training event, and more!

Many community members have contributed to this handbook, and we welcome feedback on this Handbook. Feel free to submit issues or pull requests to this GitHub repo to improve this community resource.

Building this site

This site is built using the Sphinx documentation generator (a Python tool) and the Read the Docs theme for the style. (Not to be confused with readthedocs.io - the site is not hosted at readthedocs.io!)

For more information about using Sphinx, see the Getting Started guide (sphinx-doc.org) or the Quick Start (readthedocs.io) for an explanation of how to use Sphinx.

Required dependencies

To install the required dependencies (Sphinx and the ReadTheDocs Sphinx theme), execute the following command from the repository directory to install all Python dependencies:

pip install -r requirements.txt 

After installing the dependencies, you can build the site locally by executing the following command from the repository:

$ make html

Open the file _build/html/index.html to preview the site locally. Python offers a quick way to run a web server to serve local files. Run the following:

$ cd _build/html

# Python 2: (Deprecated; not recommended)
$ python2 -m SimpleHTTPServer

# Python 3:
$ python3 -m http.server

In both cases, a local web server will be run on port 8000, so navigate to http://localhost:8000 in your browser to view the site locally.

You can make changes to the contents of the repository, and re-run make html, to update the website contents. If you are having problems with the site not refreshing, you can delete the contents of the _build directory (which are automatically generated) with rm -fr _build/*.

If new files or folders are added to the Handbook, index.rst will need to be updated for those to be included in the final site by Sphinx.

Site structure

The root level index.rst generates the main categories and the sidebar navigation. Each sub-section is a folder in the topic_folders directory. Each folder within the topic_folders directory has its own index.rst file. These then expand into the subcategories in each directory.

Within each folder's index.rst file, the section heading is defined by a string of = beneath it. Subheadings can be defined using ### in each markdown file or by a heading with - under it in the index.rst file.

Formatting Hyperlinks

In markdown documents, links can be formatted in standard markdown, with the text in square brackets and the hyperlink in parentheses:

[text](hyperlink)

For the index.rst files, links must be formatted as follows. Note the text is followed by the hyperlink in pointy brackets, everything is wrapped in backticks, and then followed by an underscore.

`text<hyperlink>`_

Links to external markdown documents

Something in this template causes .md extensions to get stripped, breaking links to things like markdown documents in a GitHub repo. This can be fixed by adding an anchor tag (#) to the end of the url. For example, https://github.com/carpentries/docs.carpentries.org/blob/topic_folders/file.md would become https://github.com/carpentries/docs.carpentries.org/blob/topic_folders/file.md#.

Additional information

This site is built from the main branch of this repo (carpentries/docs.carpentries.org). Changes can be previewed live here: http://docs-src.carpentries.org/. Changes to the actual site https://docs.carpentries.org/ can take up to a day to go live once changes have been pushed to GitHub, since the contents of the site are behind a CDN (Content Distribution Network) that caches content.

If you are making experimental changes to content please be sure to do so in a non-main, non-live branch. When your changes are complete and ready to be pushed to the live site, open a pull request in carpentries/docs.carpentries.org.

Draft content can be added to the drafts folder of the carpentries/userguides repo (in the main branch) without breaking anything. Draft content is not built to the live site and these files may contain inaccurate or out of date information.

docs.carpentries.org's People

Contributors

acrall avatar anenadic avatar angela-li avatar annajiat avatar binxiepeterson avatar brownsarahm avatar danielle06 avatar elizabethwilliams8 avatar elletjies avatar erinbecker avatar fmichonneau avatar froggleston avatar jduckles avatar k8hertweck avatar karenword avatar kariljordan avatar katrinleinweber avatar klbarnes20 avatar kmomar avatar lexnederbragt avatar malvikasharan avatar maneesha avatar orchid00 avatar serahkiburu avatar sheraaronhurt avatar talishask avatar tobyhodges avatar tracykteal avatar weaverbel avatar zkamvar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs.carpentries.org's Issues

Maintainers section seems incomplete

From one of the maintainers:

I don't find all the information I expect in the maintainer section such as:

  • MAINTAINERS
    * Step for Maintainer Onboarding process
    * Template emails
    * Maintainer Onboarding lesson (https://carpentries.github.io/maintainer-onboarding/index.html)
    * Maintainer operation i.e. day to day work with information such as:
    - How to deal with issues (most information is available in the Maintainer Onboarding lesson)
    + How to label issues
    + How to get help (slack, help-wanted label, etc.)
    - How to update the lesson template style (something I have never done so I don't know anything about it)
    - How to be kept informed (slack, maintainer meetings, lesson development)

     * Step for scheduling a Bonanza/bug BBQ 
    

I also miss information on the role of maintainers in the life cycle of a lesson. For instance I was not a maintainer when SWC moved from python 2 to python 3 but in general such evolution can happen and I don't really know how they are handled by the Carpentries. In addition, some lessons (such as Data Carpentry Geospatial) are not "mature" yet and still under development. It has an impact on the maintainer (both in terms on involvment and type of work).

Finally I miss a section for CONTRIBUTORS: I mean guidance for whoever wants to contribute to lessons (and submit issues or answer to existing issues), become an instructor, run workshops, become an instructor of instructors, etc.

What order should sidebar categories go in?

For no particular reason right now it goes:
General -> Maintainers, Communication, Workshop Admin, Instructor Training, Policies.
Staff -> Memberships, Finance

Is there any logical order that would serve us better?

rename repo

Please rename repo to "handbook" for consistency with how the documentation is titled here.

"Pygments" error?

In building the page with blog posting instructions, it throws this error:

WARNING: Pygments lexer name '' is not known

The pages appear to look OK. Need to troubleshoot.

What copyright/license should this have?

The default footer line looks like:
© Copyright 2018, The Carpentries.

Should we have a different license like cc?
Can we attribute it just to Carpentries or does CI need to be acknowledged?

I hand installed the userguide to docs.carpentries.org

@maneesha I hand installed this on our static webserver (where software-carpentry.org) is hosted.

http://docs.carpentries.org/toc.html

Steps

  1. Add DNS A Record pointing to docs.carpentries.org
  2. Configure nginx (webserver) to Virtual Host for docs.carpentries.org (see below)
  3. git clone the repo and run make html, then copy to webroot for docs.carpentries.org
pip install Sphinx sphinx_rtd_theme recommonmark
git clone https://github.com/carpentries/usersguides/
cd userguides
make html 
cp _site/html/* /home/data/docs.carpentries.org

nginx config:

server {
	listen 80;
	listen [::]:80;

	keepalive_timeout 70;

	root /home/data/docs.carpentries.org/;

	server_name docs.carpentries.org;

	location / {
		# First attempt to serve request as file, then
		# as directory, then fall back to displaying a 404.
		try_files $uri $uri/ =404;
	}
}

update about section - how index.rst works

The collapsible sections are enabled by each section having its own index.rst.
This needs to be documented in the about section which currently refers to only the root level index.rst.

Scheduling open training events

This section needs to be filled in with the process for open training events - reviewing applications, people sign up, share videoconferencing info, etc.

More intro needed for discussion sessions

I'm not sure about the target audience for these docs, but I would like to see some content in the section on discussion sessions that encourages people to host the sessions. It currently says that a host is a member of the mentoring subcommittee. That's not strictly true: a few of our lovely hosts seldom/never attend a subcommittee meeting, which is how we define membership.

More importantly, we currently lack a clear statement that new hosts (and members of the subcommittee) are warmly welcomed. I'd like to add a short blurb at the beginning of the section (or somewhere else if more appropriate), encouraging people to sign up to host and/or observe a session hosted by someone else, and to come along to a mentoring subcommittee meeting (open to all!) if they have any questions.

Happy to submit a PR for this, if you approve.

submitting blog post instructions

Thanks @weaverbel for instructions on submitting SWC blog post

Will the SWC specific blog remain once we have the Carpetries website live? What is the timeline for the new Carpentries website? If the SWC blog will be deprecated soon I'd like to hold off on this and include instructions for just the new website.

If the SWC blog will remain I'll add this document in. Also in that case, are there similar instructions for Data Carpentry's blog?

Consistency in formatting email templates

Email templates are not formatted consistently across sections. For example:

Across sections some email templates have a bold heading, some are same as regular text.
Some have subject lines defined, some don't.
Variables are identified in different ways as referenced in #12
Some have horizontal lines in between.

consistency in variable names for email templates

Email templates include variables referring to things like dates, site names, instructor names, etc.
Some templates identify variables with square brackets, some by percent signs, some possibly other ways.

What's the preferred way to identify variables?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.