footer.footer
    .container.footer__top
        section.footer1 
            a(href="/features/").footer__title Features
            ul.footer__menu 
                li
                    a(href="/arch/multi-tier-storage.html") Multi-Tier Storage
                li
                    a(href="/arch/native-persistence.html") Native Persistence
                li
                    a(href="/features/sql.html") Distributed SQL
                li
                    a(href="/features/acid-transactions.html") ACID Transactions
                li
                    a(href="/features/distributed-key-value-store.html") Key Value APIs
                li
                    a(href="/features/compute-apis.html") Compute APIs
                li
                    a(href="/features/machinelearning.html") Machine Learning
                li
                    a(href="/features/servicegrid.html") Services
                li
                    a(href="/features/streaming.html") Streaming
                li
                    a(href="https://ignite.apache.org/docs/latest/key-value-api/continuous-queries") Continuous Queries
                li
                    a(href="https://ignite.apache.org/docs/latest/messaging") Messaging
        section.footer2
            a(href="/use-cases/").footer__title Use-Cases
            ul.footer__menu 
                li
                    a(href="/use-cases/in-memory-cache.html") In-Memory Cache
                li
                    a(href="/use-cases/in-memory-data-grid.html") In-Memory Data Grid
                li
                    a(href="/use-cases/in-memory-database.html") In-Memory Database
                li
                    a(href="/use-cases/high-performance-computing.html") High-Performance Computing
                li
                    a(href="/use-cases/digital-integration-hub.html") Digital Integration Hub
                li
                    a(href="/use-cases/key-value-store.html") Key-Value Store
                li
                    a(href="/use-cases/spark-acceleration.html") Apache Spark Acceleration
                li
                    a(href="/use-cases/hadoop-acceleration.html") Apache Hadoop Acceleration
        section.footer3
            a(href="/community.html").footer__title Community
            a(href="/resources.html").footer__title Resources
            a(href="/events.html").footer__title Events

        section.footer4
            .footer4__item Join Our <a href="mailto:dev@ignite.apache.org">Dev Mailing List</a>
            .footer4__item.pt-2 Or write your question
            .footer4__item.pt-1 user@ignite.apache.org
            .footer4__item.pt-5 Follow Us:
            .footer4__socwrap.flexi.pt-2
                a.footer4__soc(href="https://github.com/apache/ignite", taget="_blank")
                    img(src="/public/img/icon-github.svg", alt="") 
                a.footer4__soc(href="https://www.linkedin.com/showcase/apache-ignite/", taget="_blank")
                    img(src="/public/img/icon-linkedin.svg", alt="") 
                a.footer4__soc(href="https://twitter.com/apacheignite", taget="_blank")
                    img(src="/public/img/icon-twitter.svg", alt="")
            a.footer4__button(href="https://ignite.apache.org/docs/latest/index").button Start using Apache Ignite 
    .container.footer__bot
        p © 2015 - 2021 <a href="http://www.apache.org/">The Apache Software Foundation.</a>
        p.pt-1x Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation
        p.pt-1x
            a(href="http://apache.org/foundation/policies/privacy.html") Privacy Policy