Giter Club home page Giter Club logo

docs-italia-theme's Introduction

Join the #design channel Get invited

Docs Italia theme

This is the official theme for any piece of documentation hosted on the upcoming Docs Italia.

How to use Sphinx Italia on your documentation

  • Add the following line to your documentation requirements.txt file:

    $ pip install git+https://github.com/italia/docs-italia-theme.git
    
  • In your conf.py file, you'll need to specify the theme as follows:

    # Add this line at the top of the file within the "import" section
    docs_italia_theme = __import__("docs-italia-theme")
    
    # Add the Sphinx extension 'docs-italia-theme' in the extensions list
    extensions = [
      ...,
      'docs-italia-theme'
    ]
    
    # Edit these lines
    html_theme = "docs-italia-theme"
    html_theme_path = [docs_italia_theme.get_html_theme_path()]
    

Advanced Configuration

The theme's project-wide options are defined in the docs-italia-theme/theme.conf file of this repository, and can be defined in your project's conf.py via html_theme_options.

This theme has three different layouts included:

  • (default) documentation page layout, for documentation
  • home page layout, for the docs.italia.it homepage
  • landing page layout, for the docs.italia.it project homepages

Home page and landing page don't display any documentation content, and instead only relies on a special data syntax from Read the Docs to populate.

html_theme_options = {
    # To enable the landing page template, instead of the default documentation template
    'layout': 'landing',
}

Contributing or modifying the theme

  • Clone the repository:

    git clone git+https://github.com/italia/docs-italia-theme.git
    
  • If needed, install Sphinx into a virtual environment:

    pip install sphinx
    
  • If needed, install SASS:

    gem install sass
    
  1. Install node.js and grunt:

    // Install node on OS X
    brew install node
    
    // Install grunt
    npm install -g grunt-cli
    
    // Now that everything is installed, let's install the theme dependecies.
    npm install
    
  2. Run the main script to load a sample docs with the Sphinx Italia theme applied:

    npm start
    

This will compile static assets and watch files required for the theme to reload at runtime.

TODO: building a release, handling versioning system to enable automatic update on Docs Italia platform

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.