diff --git a/404.html b/404.html
index bd7e6e9..f1506f2 100644
--- a/404.html
+++ b/404.html
@@ -197,10 +197,18 @@
   <p>Maybe you want one of these?</p>
   
   <ul>
+    <li><a href="https://polarsys.org/time4sys/news/version_1.0.0/">Time4Sys 1.0.0</a><span class="lead">(Fri, Dec 21, 2018)</span></li>
+  </ul>
+  
+  <ul>
     <li><a href="https://polarsys.org/time4sys/">Polarsys Time4Sys</a><span class="lead">(Wed, Nov 28, 2018)</span></li>
   </ul>
   
   <ul>
+    <li><a href="https://polarsys.org/time4sys/news/version_0.8.0/">Time4Sys 0.8.0</a><span class="lead">(Sun, Jun 24, 2018)</span></li>
+  </ul>
+  
+  <ul>
     <li><a href="https://polarsys.org/time4sys/about/">About</a><span class="lead">(Fri, Nov 17, 2017)</span></li>
   </ul>
   
@@ -233,7 +241,7 @@
   </ul>
   
   <ul>
-    <li><a href="https://polarsys.org/time4sys/news/">News</a><span class="lead">(Fri, Nov 17, 2017)</span></li>
+    <li><a href="https://polarsys.org/time4sys/news/">News</a><span class="lead">(Fri, Dec 21, 2018)</span></li>
   </ul>
   
   <ul>
@@ -241,7 +249,7 @@
   </ul>
   
   <ul>
-    <li><a href="https://polarsys.org/time4sys/">Time4Sys</a><span class="lead">(Wed, Nov 28, 2018)</span></li>
+    <li><a href="https://polarsys.org/time4sys/">Time4Sys</a><span class="lead">(Fri, Dec 21, 2018)</span></li>
   </ul>
   
 </div>
diff --git a/downloads/index.html b/downloads/index.html
index be44a01..cc3cd13 100644
--- a/downloads/index.html
+++ b/downloads/index.html
@@ -203,32 +203,26 @@
 
 <hr />
 
-<h3 id="current-release-version-2018-01-25">Current Release (version - 2018-01-25)</h3>
+<h2 id="nightly-version-1-0-0">Nightly Version 1.0.0</h2>
 
-<p>Version 1.0.0</p>
+<h4 id="products">Products</h4>
 
-<h5 id="products">Products</h5>
+<p><a href="https://download.polarsys.org/time4sys/nightly/v1.0.0/products/?d">https://download.polarsys.org/time4sys/nightly/v1.0.0/products/?d</a></p>
+
+<h4 id="update-site">Update Site</h4>
+
+<p><a href="https://download.polarsys.org/time4sys/nightly/v1.0.0/updateSite/">https://download.polarsys.org/time4sys/nightly/v1.0.0/updateSite/</a></p>
+
+<h2 id="official-release-0-8-0">Official Release 0.8.0</h2>
+
+<h4 id="products-1">Products</h4>
 
 <p><a href="https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d">https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d</a></p>
 
-<h5 id="update-site">Update Site</h5>
+<h4 id="update-site-1">Update Site</h4>
 
 <p><a href="https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/">https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/</a></p>
 
-<p>Version 0.8.0</p>
-
-<h5 id="products-1">Products</h5>
-
-<p><a href="https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d">https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d</a></p>
-
-<h5 id="update-site-1">Update Site</h5>
-
-<p><a href="https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/">https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/</a></p>
-
-<ul>
-<li>Time4Sys - version for <strong>Windows (64 Bit)</strong> - [[Zip-archive]()(317.7 MB)</li>
-</ul>
-
 
 
 
diff --git a/index.html b/index.html
index 8cee4e5..5bf79cc 100644
--- a/index.html
+++ b/index.html
@@ -352,6 +352,28 @@
 		<h1>News</h1>
 		  
 				<div class="news_item">
+					<div class="news_item_date"><strong>Fri, Dec 21, 2018</strong></div>
+					<div class="news_item_title">
+						<h3><a href="https://polarsys.org/time4sys/news/version_1.0.0/">Time4Sys 1.0.0</a></h3>
+					</div>
+					<div class="news_item_description">
+	          Article by Aurelien DIDIER
+Time4Sys version 1.0.0 is available for download.
+	        </div>
+				</div>
+		  
+				<div class="news_item">
+					<div class="news_item_date"><strong>Sun, Jun 24, 2018</strong></div>
+					<div class="news_item_title">
+						<h3><a href="https://polarsys.org/time4sys/news/version_0.8.0/">Time4Sys 0.8.0</a></h3>
+					</div>
+					<div class="news_item_description">
+	          Article by Aurelien DIDIER
+Time4Sys version 0.8.0 is available for download.
+	        </div>
+				</div>
+		  
+				<div class="news_item">
 					<div class="news_item_date"><strong>Fri, Nov 17, 2017</strong></div>
 					<div class="news_item_title">
 						<h3><a href="https://polarsys.org/time4sys/news/hello-world/">Building the website</a></h3>
diff --git a/index.xml b/index.xml
index f8f276a..0f80cbd 100644
--- a/index.xml
+++ b/index.xml
@@ -6,12 +6,22 @@
     <description>Recent content on Time4Sys</description>
     <generator>Hugo -- gohugo.io</generator>
     <language>en-us</language>
-    <lastBuildDate>Wed, 28 Nov 2018 00:00:00 +0000</lastBuildDate>
+    <lastBuildDate>Fri, 21 Dec 2018 00:00:00 +0000</lastBuildDate>
     
 	<atom:link href="https://polarsys.org/time4sys/index.xml" rel="self" type="application/rss+xml" />
     
     
     <item>
+      <title>Time4Sys 1.0.0</title>
+      <link>https://polarsys.org/time4sys/news/version_1.0.0/</link>
+      <pubDate>Fri, 21 Dec 2018 00:00:00 +0000</pubDate>
+      
+      <guid>https://polarsys.org/time4sys/news/version_1.0.0/</guid>
+      <description>Article by Aurelien DIDIER
+Time4Sys version 1.0.0 is available for download.</description>
+    </item>
+    
+    <item>
       <title>Polarsys Time4Sys</title>
       <link>https://polarsys.org/time4sys/</link>
       <pubDate>Wed, 28 Nov 2018 00:00:00 +0000</pubDate>
@@ -21,6 +31,16 @@
     </item>
     
     <item>
+      <title>Time4Sys 0.8.0</title>
+      <link>https://polarsys.org/time4sys/news/version_0.8.0/</link>
+      <pubDate>Sun, 24 Jun 2018 00:00:00 +0000</pubDate>
+      
+      <guid>https://polarsys.org/time4sys/news/version_0.8.0/</guid>
+      <description>Article by Aurelien DIDIER
+Time4Sys version 0.8.0 is available for download.</description>
+    </item>
+    
+    <item>
       <title>About</title>
       <link>https://polarsys.org/time4sys/about/</link>
       <pubDate>Fri, 17 Nov 2017 00:00:00 +0000</pubDate>
@@ -61,13 +81,10 @@
       <pubDate>Fri, 17 Nov 2017 00:00:00 +0000</pubDate>
       
       <guid>https://polarsys.org/time4sys/downloads/</guid>
-      <description> Current Release (version - 2018-01-25) Version 1.0.0
-Products https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d
-Update Site https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/
-Version 0.8.0
-Products https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d
-Update Site https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/
- Time4Sys - version for Windows (64 Bit) - [[Zip-archive]()(317.7 MB)  </description>
+      <description>Nightly Version 1.0.0 Products https://download.polarsys.org/time4sys/nightly/v1.0.0/products/?d
+Update Site https://download.polarsys.org/time4sys/nightly/v1.0.0/updateSite/
+Official Release 0.8.0 Products https://download.polarsys.org/time4sys/stable/v0.8.0/products/?d
+Update Site https://download.polarsys.org/time4sys/stable/v0.8.0/updateSite/</description>
     </item>
     
     <item>
diff --git a/news/index.html b/news/index.html
index fa0b5d8..026243f 100644
--- a/news/index.html
+++ b/news/index.html
@@ -203,6 +203,28 @@
   <div class="col-md-17">
     
     <div class="news_item">
+      <div class="news_item_date"><strong>Fri, Dec 21, 2018</strong></div>
+      <div class="news_item_title">
+        <h3><a href="https://polarsys.org/time4sys/news/version_1.0.0/">Time4Sys 1.0.0</a></h3>
+      </div>
+      <div class="news_item_description">
+        Article by Aurelien DIDIER
+Time4Sys version 1.0.0 is available for download.
+      </div>
+    </div>
+    
+    <div class="news_item">
+      <div class="news_item_date"><strong>Sun, Jun 24, 2018</strong></div>
+      <div class="news_item_title">
+        <h3><a href="https://polarsys.org/time4sys/news/version_0.8.0/">Time4Sys 0.8.0</a></h3>
+      </div>
+      <div class="news_item_description">
+        Article by Aurelien DIDIER
+Time4Sys version 0.8.0 is available for download.
+      </div>
+    </div>
+    
+    <div class="news_item">
       <div class="news_item_date"><strong>Fri, Nov 17, 2017</strong></div>
       <div class="news_item_title">
         <h3><a href="https://polarsys.org/time4sys/news/hello-world/">Building the website</a></h3>
diff --git a/news/index.xml b/news/index.xml
index b46bf65..8e0c095 100644
--- a/news/index.xml
+++ b/news/index.xml
@@ -6,12 +6,32 @@
     <description>Recent content in News on Time4Sys</description>
     <generator>Hugo -- gohugo.io</generator>
     <language>en-us</language>
-    <lastBuildDate>Fri, 17 Nov 2017 00:00:00 +0000</lastBuildDate>
+    <lastBuildDate>Fri, 21 Dec 2018 00:00:00 +0000</lastBuildDate>
     
 	<atom:link href="https://polarsys.org/time4sys/news/index.xml" rel="self" type="application/rss+xml" />
     
     
     <item>
+      <title>Time4Sys 1.0.0</title>
+      <link>https://polarsys.org/time4sys/news/version_1.0.0/</link>
+      <pubDate>Fri, 21 Dec 2018 00:00:00 +0000</pubDate>
+      
+      <guid>https://polarsys.org/time4sys/news/version_1.0.0/</guid>
+      <description>Article by Aurelien DIDIER
+Time4Sys version 1.0.0 is available for download.</description>
+    </item>
+    
+    <item>
+      <title>Time4Sys 0.8.0</title>
+      <link>https://polarsys.org/time4sys/news/version_0.8.0/</link>
+      <pubDate>Sun, 24 Jun 2018 00:00:00 +0000</pubDate>
+      
+      <guid>https://polarsys.org/time4sys/news/version_0.8.0/</guid>
+      <description>Article by Aurelien DIDIER
+Time4Sys version 0.8.0 is available for download.</description>
+    </item>
+    
+    <item>
       <title>Building the website</title>
       <link>https://polarsys.org/time4sys/news/hello-world/</link>
       <pubDate>Fri, 17 Nov 2017 00:00:00 +0000</pubDate>
diff --git a/news/version_0.8.0/index.html b/news/version_0.8.0/index.html
new file mode 100644
index 0000000..edd317b
--- /dev/null
+++ b/news/version_0.8.0/index.html
@@ -0,0 +1,295 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    
+    <meta name="author" content="Aurelien Didier for Artal Technologies">
+    
+    <meta name="keywords" content="" />
+    <meta name="generator" content="Hugo 0.30.2" />
+    <link href="//fonts.googleapis.com/css?family=Open+Sans:400,700,300,600,100" rel="stylesheet" type="text/css">
+    <link rel="shortcut icon" href="https://polarsys.org/time4sys/public/images/favicon.ico"/>
+    <title>Time4Sys</title>
+    <meta property="og:title" content="" />
+    <meta property="og:description" content="The Time4Sys project" />
+    <meta property="og:image" content="https://polarsys.org/time4sys/images/logo.png" />
+    <link rel="stylesheet" href="https://polarsys.org/time4sys/public/css/solstice.css">
+    
+    
+    
+  </head>
+  <body class="" id="body_solstice">
+    <a class="sr-only" href="#content">Skip to main content</a>
+    <header role="banner">
+      <div class="container">
+        <div id="row-logo-search">
+          <div id="header-left" class="col-sm-14 col-md-16 col-lg-19">
+            <div class="row">
+              <div class="hidden-xs">
+                <a href="https://polarsys.org/time4sys/"><img src="https://polarsys.org/time4sys/images/logo.png" class="logo-eclipse-default"/></a>
+              </div>
+              <div id="main-menu" class="navbar row yamm">
+                <div id="navbar-collapse-1" class="navbar-collapse collapse">
+                  <ul class="nav navbar-nav">
+                    
+
+
+<li>
+  <a class="" href="/time4sys/">
+  
+  Home
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/documentation/">
+  
+  Documentation
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/community/">
+  
+  Community
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/videos/">
+  
+  Videos
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/about/">
+  
+  About
+  </a>
+  
+</li>
+
+<li class="dropdown">
+  <a data-toggle="dropdown" class="dropdown-toggle">More @ Eclipse<b class="caret"></b></a>
+  <ul class="dropdown-menu">
+    <li>
+      
+      <div class="yamm-content">
+        <div class="row">
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Community</strong></p>
+            </li>
+            <li><a href="http://marketplace.eclipse.org">Marketplace</a></li>
+            <li><a href="http://events.eclipse.org">Events</a></li>
+            <li><a href="http://www.planeteclipse.org/">Planet Eclipse</a></li>
+            <li><a href="https://eclipse.org/community/eclipse_newsletter/">Newsletter</a></li>
+            <li><a href="https://www.youtube.com/user/EclipseFdn">Videos</a></li>
+          </ul>
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Participate</strong></p>
+            </li>
+            <li><a href="https://bugs.eclipse.org/bugs/">Report a Bug</a></li>
+            <li><a href="https://eclipse.org/forums/">Forums</a></li>
+            <li><a href="https://eclipse.org/mail/">Mailing Lists</a></li>
+            <li><a href="https://wiki.eclipse.org/">Wiki</a></li>
+            <li><a href="https://wiki.eclipse.org/IRC">IRC</a></li>
+            <li><a href="https://eclipse.org/contribute/">How to Contribute</a></li>
+          </ul>
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Working Groups</strong></p>
+            </li>
+            <li><a href="http://wiki.eclipse.org/Auto_IWG">Automotive</a></li>
+            <li><a href="http://iot.eclipse.org">Internet of Things</a></li>
+            <li><a href="http://locationtech.org">LocationTech</a></li>
+            <li><a href="http://lts.eclipse.org">Long-Term Support</a></li>
+            <li><a href="http://polarsys.org">PolarSys</a></li>
+            <li><a href="http://science.eclipse.org">Science</a></li>
+            <li><a href="http://www.openmdm.org">OpenMDM</a></li>
+          </ul>
+        </div>
+      </div>
+    </li>
+  </ul>
+</li>
+
+
+                  </ul>
+                </div>
+                <div class="navbar-header">
+                  <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse-1">
+                  <span class="sr-only">Toggle navigation</span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  </button>
+                  <a href="https://polarsys.org/time4sys/" class="navbar-brand visible-xs"><img src="https://polarsys.org/time4sys/public/images/logo/APP4MCLogo.png" alt="APP4MC logo" width="174" class="logo-eclipse-default"/></a>
+                </div>
+              </div>
+            </div>
+          </div>
+          <div id="header-right" class="form-inline col-sm-10 col-md-8 col-lg-5 hidden-print hidden-xs">
+            <div id="header-right-container">
+              <div id="custom-search-form" class="reset-box-sizing">
+  <script>
+    (function() {
+      var cx = '011805775785170369411:15ipmpflp-0';
+      var gcse = document.createElement('script');
+      gcse.type = 'text/javascript';
+      gcse.async = true;
+      gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
+          '//cse.google.com/cse.js?cx=' + cx;
+      var s = document.getElementsByTagName('script')[0];
+      s.parentNode.insertBefore(gcse, s);
+    })();
+  </script>
+  <gcse:searchbox-only></gcse:searchbox-only>
+</div>
+
+              
+              <a id="btn-call-for-action" href="https://polarsys.org/time4sys//downloads" class="btn btn-huge btn-warning"><i class="fa fa-download"></i> Download</a>
+            </div>
+          </div>
+        </div>
+      </div>
+    </header>
+    <section id="breadcrumb" class="defaut-breadcrumbs hidden-print">
+  <div class="container">
+    <h3 class="sr-only">Breadcrumbs</h3>
+    <div class="col-xs-24">
+      
+      
+      <ol class="breadcrumb">
+        <li><a href="/">home</a></li>
+        <li><a href="https://polarsys.org/time4sys/">Time4Sys</a></li>
+        
+        
+        
+        <li><a href='https://polarsys.org/time4sys/news'>news</a></li>
+        
+        
+        
+        
+        
+        <li><a href='https://polarsys.org/time4sys/news/version_0.8.0'>version_0.8.0</a></li>
+        
+        
+        
+        
+        
+        
+      </ol>
+    </div>
+  </div>
+</section>
+
+    <main role="main" class=" no-promo">
+    <div class="container background-image-none" id="novaContent">
+    
+
+
+
+<h1>Time4Sys 0.8.0</h1>
+
+<p>Article by <strong>Aurelien DIDIER</strong></p>
+
+<p>Time4Sys version 0.8.0 is available for download.</p>
+
+
+
+
+</div>
+</main>
+
+<p id="back-to-top">
+  <a class="visible-xs" href="#top">Back to the top</a>
+</p>
+<footer role="contentinfo" id="solstice-footer">
+  <div class="container">
+    <div class="row">
+      <section id="footer-eclipse-foundation" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Eclipse Foundation</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/org/">About us</a></li>
+          <li><a href="https://eclipse.org/org/foundation/contact.php">Contact Us</a></li>
+          <li><a href="https://eclipse.org/donate">Donate</a></li>
+          <li><a href="https://eclipse.org/org/documents/">Governance</a></li>
+          <li><a href="https://eclipse.org/artwork/">Logo and Artwork</a></li>
+          <li><a href="https://eclipse.org/org/foundation/directors.php">Board of Directors</a></li>
+        </ul>
+      </section>
+      <section id="footer-legal" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print ">
+        <h2 class="section-title">Legal</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/legal/privacy.php">Privacy Policy</a></li>
+          <li><a href="https://eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
+          <li><a href="https://eclipse.org/legal/copyright.php">Copyright Agent</a></li>
+          <li><a href="https://eclipse.org/org/documents/epl-v10.php">Eclipse Public License </a></li>
+          <li><a href="https://eclipse.org/legal/">Legal Resources </a></li>
+        </ul>
+      </section>
+      <section id="footer-useful-links" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Useful Links</h2>
+        <ul class="nav">
+          <li><a href="https://bugs.eclipse.org/bugs/">Report a Bug</a></li>
+          <li><a href="//help.eclipse.org/">Documentation</a></li>
+          <li><a href="https://eclipse.org/contribute/">How to Contribute</a></li>
+          <li><a href="https://eclipse.org/mail/">Mailing Lists</a></li>
+          <li><a href="https://eclipse.org/forums/">Forums</a></li>
+          <li><a href="//marketplace.eclipse.org">Marketplace</a></li>
+        </ul>
+      </section>
+      <section id="footer-other" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Other</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/ide/">IDE and Tools</a></li>
+          <li><a href="https://eclipse.org/projects">Community of Projects</a></li>
+          <li><a href="https://eclipse.org/org/workinggroups/">Working Groups</a></li>
+        </ul>
+        <ul class="list-inline social-media">
+          <li><a href="https://twitter.com/EclipseFdn"><i class="fa fa-twitter-square"></i></a></li>
+          <li><a href="https://plus.google.com/+Eclipse"><i class="fa fa-google-plus-square"></i></a></li>
+          <li><a href="https://www.facebook.com/eclipse.org"><i class="fa fa-facebook-square"></i> </a></li>
+          <li><a href="https://www.youtube.com/user/EclipseFdn"><i class="fa fa-youtube-square"></i></a></li>
+        </ul>
+      </section>
+      <div id="copyright"  class="col-xs-offset-1 col-sm-14 col-md-24 col-md-offset-0">
+        <div>
+          <span class="hidden-print"><img src="https://polarsys.org/time4sys/public/images/logo/eclipse-logo-bw-800x188.png" alt="Eclipse.org black and white logo" width="166" height="39" id="logo-eclipse-white"/></span>
+          <p id="copyright-text">Copyright &copy; 2015 The Eclipse Foundation. All Rights Reserved.</p>
+        </div>
+      </div>
+      <a href="#" class="scrollup">Back to the top</a>
+    </div>
+  </div>
+</footer>
+
+<script src="https://polarsys.org/time4sys/public/js/solstice.js"></script>
+<script type="text/javascript">
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-910670-2']);
+  _gaq.push(['_trackPageview']);
+  
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+  
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/news/version_1.0.0/index.html b/news/version_1.0.0/index.html
new file mode 100644
index 0000000..1b6b81c
--- /dev/null
+++ b/news/version_1.0.0/index.html
@@ -0,0 +1,295 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    
+    <meta name="author" content="Aurelien Didier for Artal Technologies">
+    
+    <meta name="keywords" content="" />
+    <meta name="generator" content="Hugo 0.30.2" />
+    <link href="//fonts.googleapis.com/css?family=Open+Sans:400,700,300,600,100" rel="stylesheet" type="text/css">
+    <link rel="shortcut icon" href="https://polarsys.org/time4sys/public/images/favicon.ico"/>
+    <title>Time4Sys</title>
+    <meta property="og:title" content="" />
+    <meta property="og:description" content="The Time4Sys project" />
+    <meta property="og:image" content="https://polarsys.org/time4sys/images/logo.png" />
+    <link rel="stylesheet" href="https://polarsys.org/time4sys/public/css/solstice.css">
+    
+    
+    
+  </head>
+  <body class="" id="body_solstice">
+    <a class="sr-only" href="#content">Skip to main content</a>
+    <header role="banner">
+      <div class="container">
+        <div id="row-logo-search">
+          <div id="header-left" class="col-sm-14 col-md-16 col-lg-19">
+            <div class="row">
+              <div class="hidden-xs">
+                <a href="https://polarsys.org/time4sys/"><img src="https://polarsys.org/time4sys/images/logo.png" class="logo-eclipse-default"/></a>
+              </div>
+              <div id="main-menu" class="navbar row yamm">
+                <div id="navbar-collapse-1" class="navbar-collapse collapse">
+                  <ul class="nav navbar-nav">
+                    
+
+
+<li>
+  <a class="" href="/time4sys/">
+  
+  Home
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/documentation/">
+  
+  Documentation
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/community/">
+  
+  Community
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/videos/">
+  
+  Videos
+  </a>
+  
+</li>
+
+
+<li>
+  <a class="" href="/time4sys/about/">
+  
+  About
+  </a>
+  
+</li>
+
+<li class="dropdown">
+  <a data-toggle="dropdown" class="dropdown-toggle">More @ Eclipse<b class="caret"></b></a>
+  <ul class="dropdown-menu">
+    <li>
+      
+      <div class="yamm-content">
+        <div class="row">
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Community</strong></p>
+            </li>
+            <li><a href="http://marketplace.eclipse.org">Marketplace</a></li>
+            <li><a href="http://events.eclipse.org">Events</a></li>
+            <li><a href="http://www.planeteclipse.org/">Planet Eclipse</a></li>
+            <li><a href="https://eclipse.org/community/eclipse_newsletter/">Newsletter</a></li>
+            <li><a href="https://www.youtube.com/user/EclipseFdn">Videos</a></li>
+          </ul>
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Participate</strong></p>
+            </li>
+            <li><a href="https://bugs.eclipse.org/bugs/">Report a Bug</a></li>
+            <li><a href="https://eclipse.org/forums/">Forums</a></li>
+            <li><a href="https://eclipse.org/mail/">Mailing Lists</a></li>
+            <li><a href="https://wiki.eclipse.org/">Wiki</a></li>
+            <li><a href="https://wiki.eclipse.org/IRC">IRC</a></li>
+            <li><a href="https://eclipse.org/contribute/">How to Contribute</a></li>
+          </ul>
+          <ul class="col-sm-8 list-unstyled">
+            <li>
+              <p><strong>Working Groups</strong></p>
+            </li>
+            <li><a href="http://wiki.eclipse.org/Auto_IWG">Automotive</a></li>
+            <li><a href="http://iot.eclipse.org">Internet of Things</a></li>
+            <li><a href="http://locationtech.org">LocationTech</a></li>
+            <li><a href="http://lts.eclipse.org">Long-Term Support</a></li>
+            <li><a href="http://polarsys.org">PolarSys</a></li>
+            <li><a href="http://science.eclipse.org">Science</a></li>
+            <li><a href="http://www.openmdm.org">OpenMDM</a></li>
+          </ul>
+        </div>
+      </div>
+    </li>
+  </ul>
+</li>
+
+
+                  </ul>
+                </div>
+                <div class="navbar-header">
+                  <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse-1">
+                  <span class="sr-only">Toggle navigation</span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  <span class="icon-bar"></span>
+                  </button>
+                  <a href="https://polarsys.org/time4sys/" class="navbar-brand visible-xs"><img src="https://polarsys.org/time4sys/public/images/logo/APP4MCLogo.png" alt="APP4MC logo" width="174" class="logo-eclipse-default"/></a>
+                </div>
+              </div>
+            </div>
+          </div>
+          <div id="header-right" class="form-inline col-sm-10 col-md-8 col-lg-5 hidden-print hidden-xs">
+            <div id="header-right-container">
+              <div id="custom-search-form" class="reset-box-sizing">
+  <script>
+    (function() {
+      var cx = '011805775785170369411:15ipmpflp-0';
+      var gcse = document.createElement('script');
+      gcse.type = 'text/javascript';
+      gcse.async = true;
+      gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
+          '//cse.google.com/cse.js?cx=' + cx;
+      var s = document.getElementsByTagName('script')[0];
+      s.parentNode.insertBefore(gcse, s);
+    })();
+  </script>
+  <gcse:searchbox-only></gcse:searchbox-only>
+</div>
+
+              
+              <a id="btn-call-for-action" href="https://polarsys.org/time4sys//downloads" class="btn btn-huge btn-warning"><i class="fa fa-download"></i> Download</a>
+            </div>
+          </div>
+        </div>
+      </div>
+    </header>
+    <section id="breadcrumb" class="defaut-breadcrumbs hidden-print">
+  <div class="container">
+    <h3 class="sr-only">Breadcrumbs</h3>
+    <div class="col-xs-24">
+      
+      
+      <ol class="breadcrumb">
+        <li><a href="/">home</a></li>
+        <li><a href="https://polarsys.org/time4sys/">Time4Sys</a></li>
+        
+        
+        
+        <li><a href='https://polarsys.org/time4sys/news'>news</a></li>
+        
+        
+        
+        
+        
+        <li><a href='https://polarsys.org/time4sys/news/version_1.0.0'>version_1.0.0</a></li>
+        
+        
+        
+        
+        
+        
+      </ol>
+    </div>
+  </div>
+</section>
+
+    <main role="main" class=" no-promo">
+    <div class="container background-image-none" id="novaContent">
+    
+
+
+
+<h1>Time4Sys 1.0.0</h1>
+
+<p>Article by <strong>Aurelien DIDIER</strong></p>
+
+<p>Time4Sys version 1.0.0 is available for download.</p>
+
+
+
+
+</div>
+</main>
+
+<p id="back-to-top">
+  <a class="visible-xs" href="#top">Back to the top</a>
+</p>
+<footer role="contentinfo" id="solstice-footer">
+  <div class="container">
+    <div class="row">
+      <section id="footer-eclipse-foundation" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Eclipse Foundation</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/org/">About us</a></li>
+          <li><a href="https://eclipse.org/org/foundation/contact.php">Contact Us</a></li>
+          <li><a href="https://eclipse.org/donate">Donate</a></li>
+          <li><a href="https://eclipse.org/org/documents/">Governance</a></li>
+          <li><a href="https://eclipse.org/artwork/">Logo and Artwork</a></li>
+          <li><a href="https://eclipse.org/org/foundation/directors.php">Board of Directors</a></li>
+        </ul>
+      </section>
+      <section id="footer-legal" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print ">
+        <h2 class="section-title">Legal</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/legal/privacy.php">Privacy Policy</a></li>
+          <li><a href="https://eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
+          <li><a href="https://eclipse.org/legal/copyright.php">Copyright Agent</a></li>
+          <li><a href="https://eclipse.org/org/documents/epl-v10.php">Eclipse Public License </a></li>
+          <li><a href="https://eclipse.org/legal/">Legal Resources </a></li>
+        </ul>
+      </section>
+      <section id="footer-useful-links" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Useful Links</h2>
+        <ul class="nav">
+          <li><a href="https://bugs.eclipse.org/bugs/">Report a Bug</a></li>
+          <li><a href="//help.eclipse.org/">Documentation</a></li>
+          <li><a href="https://eclipse.org/contribute/">How to Contribute</a></li>
+          <li><a href="https://eclipse.org/mail/">Mailing Lists</a></li>
+          <li><a href="https://eclipse.org/forums/">Forums</a></li>
+          <li><a href="//marketplace.eclipse.org">Marketplace</a></li>
+        </ul>
+      </section>
+      <section id="footer-other" class="col-xs-offset-1 col-xs-11 col-sm-7 col-md-6 col-md-offset-0 hidden-print">
+        <h2 class="section-title">Other</h2>
+        <ul class="nav">
+          <li><a href="https://eclipse.org/ide/">IDE and Tools</a></li>
+          <li><a href="https://eclipse.org/projects">Community of Projects</a></li>
+          <li><a href="https://eclipse.org/org/workinggroups/">Working Groups</a></li>
+        </ul>
+        <ul class="list-inline social-media">
+          <li><a href="https://twitter.com/EclipseFdn"><i class="fa fa-twitter-square"></i></a></li>
+          <li><a href="https://plus.google.com/+Eclipse"><i class="fa fa-google-plus-square"></i></a></li>
+          <li><a href="https://www.facebook.com/eclipse.org"><i class="fa fa-facebook-square"></i> </a></li>
+          <li><a href="https://www.youtube.com/user/EclipseFdn"><i class="fa fa-youtube-square"></i></a></li>
+        </ul>
+      </section>
+      <div id="copyright"  class="col-xs-offset-1 col-sm-14 col-md-24 col-md-offset-0">
+        <div>
+          <span class="hidden-print"><img src="https://polarsys.org/time4sys/public/images/logo/eclipse-logo-bw-800x188.png" alt="Eclipse.org black and white logo" width="166" height="39" id="logo-eclipse-white"/></span>
+          <p id="copyright-text">Copyright &copy; 2015 The Eclipse Foundation. All Rights Reserved.</p>
+        </div>
+      </div>
+      <a href="#" class="scrollup">Back to the top</a>
+    </div>
+  </div>
+</footer>
+
+<script src="https://polarsys.org/time4sys/public/js/solstice.js"></script>
+<script type="text/javascript">
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-910670-2']);
+  _gaq.push(['_trackPageview']);
+  
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+  
+</script>
+</body>
+</html>
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index 720d9dd..d07cd99 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -3,11 +3,21 @@
   xmlns:xhtml="http://www.w3.org/1999/xhtml">
   
   <url>
+    <loc>https://polarsys.org/time4sys/news/version_1.0.0/</loc>
+    <lastmod>2018-12-21T00:00:00+00:00</lastmod>
+  </url>
+  
+  <url>
     <loc>https://polarsys.org/time4sys/</loc>
     <lastmod>2018-11-28T00:00:00+00:00</lastmod>
   </url>
   
   <url>
+    <loc>https://polarsys.org/time4sys/news/version_0.8.0/</loc>
+    <lastmod>2018-06-24T00:00:00+00:00</lastmod>
+  </url>
+  
+  <url>
     <loc>https://polarsys.org/time4sys/about/</loc>
     <lastmod>2017-11-17T00:00:00+00:00</lastmod>
   </url>
@@ -49,7 +59,7 @@
   
   <url>
     <loc>https://polarsys.org/time4sys/news/</loc>
-    <lastmod>2017-11-17T00:00:00+00:00</lastmod>
+    <lastmod>2018-12-21T00:00:00+00:00</lastmod>
     <priority>0</priority>
   </url>
   
@@ -60,7 +70,7 @@
   
   <url>
     <loc>https://polarsys.org/time4sys/</loc>
-    <lastmod>2018-11-28T00:00:00+00:00</lastmod>
+    <lastmod>2018-12-21T00:00:00+00:00</lastmod>
     <priority>0</priority>
   </url>
   
