# Redash

The application is a forked and upgraded version based on the Redash framework. It's built using Python (3) and Javascript / Typescript. To fully run our application, you will also need PostgreSQL (version 9.6 or newer) and Redis (version 3 or newer). While it’s not needed in production, for development you will need a recent version of Node.js (latest LTS version is recommended).

On the backend, we use Flask, RQ and SQLALchemy (along with many other packages) and on the frontend we use ES6, React and Webpack for bundling.

Please note that the links below will take you to Redash's resources, which are applicable for our application as well.

{% hint style="info" %}
For Windows users: while it should be possible to run our application on a Windows machine, we don’t know anyone who did this and lived to tell. We recommend using some sort of a virtual machine or Docker in such a case.
{% endhint %}

### Setup

* [Docker Based Developer Installation Guide](https://redash.io/help/open-source/dev-guide/docker) (recommended for beginners)
* [Debugging a Redash Server on Docker Using Visual Studio Code](https://redash.io/help/open-source/dev-guide/debugging)
* [Developer Installation Guide](https://redash.io/help/open-source/dev-guide/setup) (recommended for experienced developers)
* [Using a remote server and installing locally only the frontend dependencies](https://redash.io/help/open-source/dev-guide/remote-server)
* [Frontend End-to-End Tests](https://redash.io/help/open-source/dev-guide/end-to-end-tests)

### Additional Resources

* [How to create a new visualization](https://discuss.redash.io/t/how-to-create-new-visualization-types-in-redash/86)
* [How to create a new query runner](https://redash.io/help/open-source/dev-guide/write-a-query-runner)

### Getting Help <a href="#getting-help" id="getting-help"></a>

* [Discussion Forum](https://github.com/getredash/redash/discussions/categories/q-a)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.inverse.watch/admin-and-dev-guide/redash.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
