---
layout: compress
---

<!doctype html>

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<html lang="en">
<head>
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-180663034-1"></script>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
        gtag('js', new Date());

        gtag('config', 'UA-180663034-1');
    </script>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta name="description" content="An open source API to convert natural language into actions.">
    <meta name="author" content="NLPCraft.">

    <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
    <link rel="manifest" href="/site.webmanifest">
    <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
    <meta name="msapplication-TileColor" content="#2d89ef">
    <meta name="theme-color" content="#ffffff">

    <title>Apache NLPCraft - Natural Language Interface</title>
    <!-- CSS only -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l" crossorigin="anonymous">

    <!-- JS, Popper.js, and jQuery -->
    <script src="//code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
    <script src="//cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns" crossorigin="anonymous"></script>

    <link href="//use.fontawesome.com/releases/v5.7.1/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" rel="stylesheet" crossorigin="anonymous">
    <link href="/ext/syntaxhighlighter/styles/shCoreNLPCraft.css" rel="stylesheet" type="text/css">
    <link href="/ext/syntaxhighlighter/styles/shThemeNLPCraft.css" rel="stylesheet" type="text/css">

    <!-- Google fonts. -->
    <link rel="preconnect" href="https://fonts.gstatic.com">
    <link href="//fonts.googleapis.com/css?family=Amatic+SC|Roboto+Mono|Baskervville" rel="stylesheet">
    <link href="//fonts.googleapis.com/css2?family=Libre+Baskerville:ital@1&display=swap" rel="stylesheet">

    <!-- Loading some init libs here. -->
    <script src="/ext/syntaxhighlighter/scripts/XRegExp.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shCore.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushXml.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushBash.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushPlain.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushJava.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushScala.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushIdl.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushPython.js" type="text/javascript"></script>
    <script src="/ext/syntaxhighlighter/scripts/shBrushJScript.js" type="text/javascript"></script>
    <script async defer src="https://buttons.github.io/buttons.js"></script>

    <!-- Main CSS. -->
    <link rel="stylesheet" type="text/css" href="/assets/css/style.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="//cdn.jsdelivr.net/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="//cdn.jsdelivr.net/respond/1.4.2/respond.src.js"></script>
    <![endif]-->
</head>
<body>
<!-- Fixed navbar -->
<nav class="navbar navbar-expand-lg navbar-light bg-light" id="top-header">
    <a class="navbar-brand mr-4" href="/index.html">
        <img src="/images/nlpcraft_logo_white-h24.png" alt="">
    </a>
    
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent">
        <span class="navbar-toggler-icon"></span>
    </button>

    <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav mr-auto">
            <li class="nav-item">
                <a class="nav-link" href="/docs.html">Docs</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/community.html">Community</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/use-cases.html">Use Cases</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/download.html">Downloads</a>
            </li>
        </ul>
        <ul class="navbar-nav ml-auto">
            <li class="nav-item mr-2">
                <a class="nav-link" href="/download.html">v.{{ site.latest_version}}</a>
            </li>
            <li class="nav-item">
                <a class="nav-link fork-link" target="github" href="https://github.com/apache/incubator-nlpcraft">GitHub <i class="fab fa-fw fa-github mr-2"></i></a>
            </li>
        </ul>
    </div>
</nav>

{{ content }}

<div id="footer">
    <div class="container">
        <div class="text-muted text-center">
            <span>Copyright &copy; 2021 Apache Software Foundation</span>
            <span>
                <a target=_new href="https://apache.org"><img alt="asf" src="/images/asf_logo-h24.png"></a>
            </span>
            <a target="asf" href="https://www.apache.org/events/current-event.html" class="btn btn-link ml-4">Events</a>
            <span class="sep">•</span>
            <a target="asf" href="https://apache.org/foundation/policies/privacy.html" class="btn btn-link">Privacy</a>
            <span class="sep">•</span>
            <a href="/index.html#news" class="btn btn-link">News</a>
            <span class="sep">•</span>
            <a href="/docs.html" class="btn btn-link">Docs</a>
            <span class="ml-4">release: <a href="/download.html"><code>{{ site.latest_version }}</code></a></span>
            <span class="ml-2">
                <a target="github" href="https://github.com/apache/incubator-nlpcraft/actions"><img alt="" src="https://github.com/apache/incubator-nlpcraft/workflows/build/badge.svg"></a>
                <a target=_ href="https://gitter.im/apache-nlpcraft/community"><img alt="Gitter" src="https://badges.gitter.im/apache-nlpcraft/community.svg"></a>
            </span>
            <span class="ml-2">
                Built in:<a target="scala" href="https://scala-lang.org/"><img style="margin-left: 5px" src="/images/scala-logo-h16.png" alt=""></a>
            </span>
        </div>
    </div>
</div>

<!-- 3rd party libraries. -->
<script src="//code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js" integrity="sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ" crossorigin="anonymous"></script>
<script src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js" integrity="sha384-uefMccjFJAIv6A+rW+L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js" type="text/javascript" ></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.12.0/moment.min.js" type="text/javascript" ></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.5/moment-timezone-with-data.min.js" type="text/javascript" ></script>

<!-- Syntax highlighter. -->
<script type="text/javascript">
    SyntaxHighlighter.defaults["auto-links"] = false;
    SyntaxHighlighter.defaults["tab-size"] = 2;

    SyntaxHighlighter.all();
</script>

</body>
</html>
