Coder Social home page Coder Social logo

italia / pianotriennale-ict.italia.it Goto Github PK

View Code? Open in Web Editor NEW
17.0 11.0 7.0 69.84 MB

Sito Piano Triennale ICT

Home Page: https://pianotriennale-ict.italia.it

License: MIT License

Ruby 0.69% HTML 48.88% CSS 15.26% JavaScript 23.50% SCSS 11.68%
pianotriennale website jekyll

pianotriennale-ict.italia.it's Introduction

PIANO TRIENNALE PER L’INFORMATICA NELLA PUBBLICA AMMINISTRAZIONE 2019 - 2021

CircleCI

Questo repository contiene il codice sorgente del sito tematico relativo al Piano Triennale per l'informatica nella pubblica amministrazione. Il sito è sviluppato con Jekyll.

Se vuoi contribuire allo sviluppo del sito, è sufficiente aprire una pull-request.

Sito tematico di presentazione del Piano Triennale

https://pianotriennale-ict.italia.it/

Forum di discussione sui temi del Piano Triennale

https://forum.italia.it/c/piano-triennale/

Testo integrale del Piano Triennale

https://docs.italia.it/italia/piano-triennale-ict/pianotriennale-ict-doc/

Generazione del sito e pubblicazione

Prerequisiti

È necessario installare ruby, ruby-dev, ruby-bundler e nodejs.

Linux (Ubuntu)

Per installare Ruby:

$ apt-get install ruby-bundler
$ apt-get install ruby-dev

Istruzioni per installare nodejs

macOS

Istruzioni per installare nodejs su macOS

Installazione delle dipendenze

Per configurare un ambiente di sviluppo è sufficiente eseguire i seguenti comandi nella directory principale del progetto:

$ bundle install
$ npm install

Come generare automaticamente il sito mentre si lavora sui contenuti o la struttura

Jekyll prevede la possibilità di generare automaticamente il sito ogni volta che viene fatta una modifica.

Questo può essere fatto tramite il comando serve:

$ bundle exec jekyll serve

Oltre a generare il sito, questo comando pubblica il sito in locale all'indirizzo web http://localhost:4000.

Come generare il sito per la pubblicazione

La generazione del sito per la pubblicazione richiede un po' più di tempo poiché comprende una serie di ottimizzazioni che rendono il sito più leggero ed efficiente.

In questo caso la generazione viene fatta tramite gulp:

$ gulp build

Il risultato della generazione di troverà nella directory _site.

Pubblicare il sito

Per pubblicare il sito è necessario creare un file .pianotriennale-ict_site.json nella propria home directory con questo formato:

{
  "production": {
    "server": "...",
    "path": "...",
    "port": ...
  },
}

Dove server è nel formato user@host, path è il percorso completo alla directory di pubblicazione e port è la porta SSH per accedere al server (la pubblicazione avviene tramite rsync via SSH).


THREE-YEAR PLAN FOR ICT IN PUBLIC ADMINISTRATION 2019 - 2021

This repository contains the source code for the descriptive website about the Three-Year Plan for ICT in Public Administration. This website is based on Jekyll.

If you want to contribute to the development, just go on and open a pull-request.

Descriptive website about the Three-Year Plan

https://pianotriennale-ict.italia.it/

Discussion forum

https://forum.italia.it/c/piano-triennale/

Full text of the Three-Year Plan

https://docs.italia.it/italia/piano-triennale-ict/pianotriennale-ict-doc/

Build and deployment

Prerequisites

Install ruby, ruby-dev, ruby-bundler and nodejs.

Linux (Ubuntu)

Install Ruby:

$ apt-get install ruby-bundler
$ apt-get install ruby-dev

Instructions about installation of nodejs

macOS

Instructions about installing nodejs on macOS

Dependencies

In order to set-up a development environment just run the following commands within the project root directory:

$ bundle install
$ npm install

Automatic rebuild

Jekyll allows to rebuild automatically while editing files. See documentation for the serve command:

$ bundle exec jekyll serve

In addition, serve will run a local webserver at http://localhost:4000.

Build for publishing

In order to build website for deployment a few additional optimizations are run for lightness and efficiency. For such purpose, use gulp:

$ gulp build

Results will be placed in the _site/ directory.

Deployment

In order to publish the website just create a file named .pianotriennale-ict_site.json under your home directory with the following format:

{
  "production": {
    "server": "...",
    "path": "...",
    "port": ...
  },
}

Where server has the format user@host, path is the full path to the deplyment directory and port is the SSH port to access the server (rsync over SSH will be used).

pianotriennale-ict.italia.it's People

Contributors

alranel avatar alterat avatar bfabio avatar claudioc avatar cloudify avatar dependabot[bot] avatar gvarisco avatar paolo-de-rosa avatar pdavide avatar spiunno avatar tassoman avatar vito80ba avatar westcoast avatar

Stargazers

 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

pianotriennale-ict.italia.it's Issues

Add sitemap.xml

  • Add 'jekyll-sitemap' gem to Gemfile
  • Add ' - jekyll-sitemap' to the list of gems in _config.yml
  • Remove unneeded HTML files
  • Generate sitemap.xml (JEKYLL_ENV=production bundle exec jekyll build) and make sure the hostname is correct
  • Copy the generated sitemap.xml file to the production environment

Json feed - linee d'azione

We shall provide a JSON feed that gets built periodically and reflects what is displayed on our website at the following link: https://pianotriennale-ict.italia.it/azioni/

Such page is generated from the following YAML file: https://github.com/italia/pianotriennale-ict.italia.it/blob/master/_data/linee_azione.yml

Ideas:

  • Similar to what's been built here, we can probably rely on Liquid without having to write any plugins and Ruby code.
  • Otherwise, if the data is an array or hash we can directly use the jsonify filter filter to convert it to JSON. I'd probably also rely on the smartify filter to sanitize it further.

The feed's permlink should be easy to remember, eg. /azioni/azioni.json

Additional references:

Adding og:image meta tag

The SEO section of the meta tags lacks an og:image

Also, in config.yml we currently have logo: /assets/images/logo-it.svg
but I think SVG is not good for open graph so we need to add an alternate format.

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.