extend _components/base.pug

block pagetitle
    | Main Page 



block main
    - global.pageHref = ""
    - var user = {description: 'foo bar baz'}
    include ./_components/header.pug

    section.temppages.container.pt-5 
        h2.pt-5 Pages List
        ul.dashlist.pt-4.pb-5
            li 
                a(href="/index.html") Front Page 
            li 
                a(href="/community.html") Сommunity 
            li 
                a(href="/use-cases/") UseCases Root Page
            li 
                a(href="/features/") Features Root Page
            li 
                a(href="/arch/multi-tier-storage.html") Features: multi-tier-storage
            li 
                a(href="/arch/native-persistence.html") Features: native-persistence
            li 
                a(href="/use-cases/in-memory-cache.html") Use Cases: in-memory-cache
            li 
                a(href="/events.html") Events
            li 
                a(href="/use-cases/provenusecases.html") Use Cases: Powered By
            li
                a(href="/resources.html") Resources
            li
                a(href="/features/tooling.html") Tooling
            li 
                a(href="/features/acid-transactions.html") Features: ACID transactions
            li 
                a(href="/faq.html") FAQ
            li
                a(href="/features/compute-apis.html") Features: Compute APIs
            li
                a(href="/use-cases/high-performance-computing.html") Use Cases: High Performance Computing
            li
                a(href="/features/distributed-key-value-store.html") Features: Distributed Key-Value APIs
            li
                a(href="/features/multilanguage.html") Features: Multi-Language Support
            li
                a(href="/features/servicegrid.html") Features: Service APIs
            li
                a(href="/features/machinelearning.html") Features: Machine Learning APIs
            li
                a(href="/features/streaming.html") Features: Streaming
            li
                a(href="/features/sql.html") Features: Distributed ANSI SQL
            li
                a(href="/use-cases/digital-integration-hub.html") Use Cases: Digital Integration Hub
            li 
                a(href="/use-cases/in-memory-data-grid.html") Use Cases: In-Memory Data Grid
            li 
                a(href="/use-cases/in-memory-database.html") Use Cases: In-Memory Database
            li
                a(href="/arch/clustering.html") Features: Deployment Options
            li 
                a(href="/download.html") Downloads  
            li 
                a(href="/use-cases/hadoop-acceleration.html") Use Cases: Hadoop Acceleration
            li 
                a(href="/use-cases/spark-acceleration.html") Use Cases: Apache Spark
            li 
                a(href="/use-cases/key-value-store.html") Use Cases: Key-Value Store
                