<!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="description" content="">
    <meta name="author" content="">

    <title>Apache Amaterasu (incubating)</title>

    <!-- Bootstrap Core CSS -->
    <link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">

    <!-- Custom Fonts -->
    <link href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Merriweather:400,300,300italic,400italic,700,700italic,900,900italic' rel='stylesheet' type='text/css'>
    <link rel="stylesheet" href="font-awesome/css/font-awesome.min.css" type="text/css">

    <!-- Plugin CSS -->
    <link rel="stylesheet" href="css/animate.min.css" type="text/css">

    <!-- Custom CSS -->
    <link rel="stylesheet" href="css/main.css" type="text/css">

    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
        <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
        <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
    <!-- Global Site Tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-84742341-2"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments)};
      gtag('js', new Date());

      gtag('config', 'UA-84742341-2');
    </script>

</head>


<body id="page-top">
  <nav id="mainNav" class="navbar navbar-default navbar-fixed-top">
    <div class="container-fluid">
        <!-- Brand and toggle get grouped for better mobile display -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-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>
            </button>
            <a class="navbar-brand page-scroll" href="#page-top">Apache Amaterasu</a>
            <!-- <img src="img/amaterasu_logo.jpg" /> -->
        </div>

        <!-- Collect the nav links, forms, and other content for toggling -->
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
                <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/#about">About</a>
                </li>
                <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/#features">Features</a>
                </li>
                <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/downloads.html">Downloads</a>
                </li>
                <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/#samples">Samples</a>
                </li>
                  <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/#docs">Docs (coming soon)</a>
                </li>
                <li>
                    <a class="page-scroll" href="http://amaterasu.incubator.apache.org/#contact">Contact</a>
                </li>
            </ul>
        </div>
        <!-- /.navbar-collapse -->
    </div>
    <!-- /.container-fluid -->
</nav>

  <header>
    <div class="header-content">
        <div class="header-content-inner">
        <div>
        	 <!-- <img src="img/amaterasu_logo_big.jpg" class="logo-image"/> -->
        	 <img src="img/amaterasu_logo_small.png"/>
        	 <!-- <img src="img/amaterasu_logo.jpg" class="logo-image"/> -->
        </div> 
        <hr>	       
            <p>Apache Amaterasu (Incubating) is an open source, configuration managment and deployment framework for data pipelines</p>
            <a href="#about" class="btn btn-primary btn-xl page-scroll">Find Out More</a>
        </div>
    </div>
</header>

  <section class="bg-primary" id="about">
    <div class="container">
        <div class="row">
            <div class="col-lg-8 col-lg-offset-2 text-center">
                <h2 class="section-heading">A new approach</h2>
                <hr class="light">
                <p class="text-faded">Amaterasu is a simple and powerful framework to build, configure and dispense data processing pipelines. It aims to help data engineers and data scientists to compose, configure, test, package, deploy and execute data pipelines written using multiple tools, languages and frameworks</p>
                <a href="http://shinto.io/amaterasu/bigdata/devops/2016/09/22/introducing-materasu-continuously-deployed-big-data-pipelines.html" class="btn btn-default btn-xl">Get Started!</a>
            </div>
        </div>
    </div>
</section>

  <section id="features">
    <div class="container">
        <div class="row">
            <div class="col-lg-12 text-center">
                <h2 class="section-heading">Features:</h2>
                <hr class="primary">
            </div>
        </div>
    </div>
    <div class="container">
        <div class="row">
            <div class="col-lg-3 col-md-6 text-center">
                <div class="service-box">
                    <i class="fa fa-4x fa-pencil-square-o wow bounceIn text-primary"></i>
                    <h3>Simple to code</h3>
                    <p class="text-muted">Code your data apps using the languages and frameworks of your choice.</p>
                </div>
            </div>

            <div class="col-lg-3 col-md-6 text-center">
                <div class="service-box">
                    <i class="fa fa-4x fa-code wow bounceIn text-primary" data-wow-delay=".1s"></i>
                    <h3>Configuration managment</h3>
                    <p class="text-muted">Configure your apps and frameworks using a powerful YAML DSL for multiple environments.</p>
                </div>
            </div>
            <div class="col-lg-3 col-md-6 text-center">
                <div class="service-box">
                    <i class="fa fa-4x fa-paper-plane wow bounceIn text-primary" data-wow-delay=".2s"></i>
                    <h3>Ship your code</h3>
                    <p class="text-muted">Amaterasu uses Git for applications and configurations repositories</p>
                </div>
            </div>
            <div class="col-lg-3 col-md-6 text-center">
                <div class="service-box">
                    <i class="fa fa-4x fa-terminal wow bounceIn text-primary" data-wow-delay=".3s"></i>
                    <h3>Easy to deploy</h3>
                    <p class="text-muted">Deploy and run in a single line!</p>
                </div>
            </div>
            
        </div>
    </div>
</section>

  <section class="no-padding-bottom" id="samples">
    <div class="container">
        <div class="row">
            <div class="col-lg-12 text-center">
                <h2 class="section-heading">Samples:</h2>
            </div>
        </div>
    </div>
    <div class="container-fluid">
        <div class="row no-gutter">
            <div class="col-lg-4 col-sm-6 thin-border">
                <a href="https://github.com/shintoio/amaterasu-demo-machine" class="portfolio-box">
                    <img src="img/samples/vm-get.png" class="img-responsive" alt="">
                    <div class="portfolio-box-caption">
                        <div class="portfolio-box-caption-content">
                            <!-- <div class="project-category text-faded">
                                Category
                            </div> -->
                            <div class="project-name">
                                Get a demo cluster
                            </div>
                        </div>
                    </div>
                </a>
            </div>
            <div class="col-lg-4 col-sm-6 thin-border">
                <a href="https://github.com/shintoio/amaterasu-job-sample" class="portfolio-box">
                    <img src="img/samples/spark-scala-logos.png" class="img-responsive" alt="">
                    <div class="portfolio-box-caption">
                        <div class="portfolio-box-caption-content">
                            <div class="project-name">
                                Spark Scala Sample
                            </div>
                        </div>
                    </div>
                </a>
            </div>
            <div class="col-lg-4 col-sm-6 thin-border">
                <a href="https://github.com/shintoio/amaterasu-job-py-sample" class="portfolio-box">
                    <img src="img/samples/spark-python-logos.png" class="img-responsive" alt="">
                    <div class="portfolio-box-caption">
                        <div class="portfolio-box-caption-content">
                            <div class="project-name">
                                PySpark Sample
                            </div>
                        </div>
                    </div>
                </a>
            </div>
        </div>
    </div>
</section>

  <!--    <aside class="bg-dark">
      <div class="container text-center">
          <div class="call-to-action">
              <h2>Download version 0.2.0-incubating preview build</h2>
              <a href="https://s3-ap-southeast-2.amazonaws.com/amaterasu/apache-amaterasu-0.2.0-incubating.tar" class="btn btn-default btn-xl wow tada">Download Now!</a>
          </div>
      </div>
  </aside>
 -->
  <section id="contact">
    <div class="container">
        <div class="row">
            <div class="col-lg-8 col-lg-offset-2 text-center">
                <h2 class="section-heading">Get In Touch!</h2>
                <hr class="primary">
                <p>Join the Apache Amaterasu community</p>
            </div>
        <div class="col-lg-2 col-lg-offset-media text-center">
            <a href="https://twitter.com/ApacheAmaterasu">
                <i class="fa fa-twitter fa-3x wow bounceIn" data-wow-delay=".1s"></i>
                <p>ApacheAmaterasu</p>
            </a>
        </div>
        <div class="col-lg-4 col-lg-offset-1 text-center">
            <a href="mailto:dev-subscribe@amaterasu.incubator.apache.org">
            <i class="fa fa-envelope-o fa-3x wow bounceIn" data-wow-delay=".1s"></i>
                <p>dev-subscribe@amaterasu.incubator.apache.org</p>
            </a>
        </div>
        <div class="col-lg-2 col-lg-offset-media text-center">
            <a href="https://github.com/apache/incubator-amaterasu">
            <i class="fa fa-github fa-3x wow bounceIn" data-wow-delay=".1s"></i>
                <p>apache/incubator-amaterasu</p>
            </a>
        </div>
        <div class="col-lg-2 col-lg-offset-1 text-center">
            <a href="https://apacheamaterasu.slack.com/">
            <i class="fa fa-slack fa-3x wow bounceIn" data-wow-delay=".1s"></i>
                <p>apacheamaterasu.slack.com</p>
            </a>
        </div>
    </div>
</section>

  <section id="disclaimer">
  <hr>
  <div class="container">
    <img src="img/incubator_feather_egg_logo.png" height="60">
    <br>
    <br>
    <p style="font-size: 12px; line-height: 1.5em;">
    Apache Amaterasu is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
    </p>
    <p style="font-size: 12px; line-height: 1.5em; margin-top: 2em; margin-bottom: 2em;">
            Copyright © 2017 <a href="http://www.apache.org/" target="_blank">The Apache Software Foundation</a>
    <br>
    Apache, Apache Amaterasu (incubating), the Apache feather and the Gobblin logo are trademarks of The Apache Software Foundation
    </p>
  </div>
</section>

  <!-- jQuery -->
<script src="js/jquery.js"></script>

<!-- Bootstrap Core JavaScript -->
<script src="js/bootstrap.min.js"></script>

<!-- Plugin JavaScript -->
<script src="js/jquery.easing.min.js"></script>
<script src="js/jquery.fittext.js"></script>
<script src="js/wow.min.js"></script>

<!-- Custom Theme JavaScript -->
<script src="js/creative.js"></script>

</body>

</html>
