> For the complete documentation index, see [llms.txt](https://docs.akinon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.akinon.com/technical-guides/project-zero/django/project-structure/environmental-file.md).

# Environmental File

The Environmental File (.env) is a structure where environment variables are stored and managed as key-value pairs. This file is used to store configuration values that are utilized when a project operates in different environments (such as Django or Node.js). The **.env** file is particularly useful for safeguarding sensitive information (e.g., API keys) and ensuring that the same code can be used in various environments.

The **.env** file is located at the project's root directory, containing an array of settings shared across both Django and Node.js environments.

When the project is initially set up, a **".env.example"** file is typically encountered instead. To be used, a new **".env"** file can simply be created by copying the ".env.example" using the following command:

```
cp .env.example .env
```

Here are the available configurations within the ".env" file:

```
# All values are default.

DEBUG=True
# A boolean that turns on/off debug mode.
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#debug

REQUESTS_DEBUG=False
# A boolean that turns on/off detailed information about requests sent within the project.

SESSION_COOKIE_SECURE=False
# Determines whether to use a secure cookie for session cookie.
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#session-cookie-secure

ALLOWED_HOSTS=*
# A list of strings specifying the host/domain names that this Django site can serve. In development, all domains are permitted.

DATABASE_URL=sqlite:///db.sqlite3
# The default database URL for the project.
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#databases

CACHE_URL=dummycache://127.0.0.1:6379/1
# URL for the default cache, see below.

LOCAL_CACHE_URL=dummycache://127.0.0.1:6379/2
# URL for local cache. The "dummycache" simulates caching without actually caching data.
# Reference: https://docs.djangoproject.com/en/2.2/topics/cache/#dummy-caching-for-development

STATIC_URL='/static_omnishop/'
# URL used for referring to static files located in the "STATIC_ROOT."
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#static-url

STATIC_ROOT='static_omnishop_prod'
# The absolute path to the directory where "collectstatic" will gather static files for deployment.
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#static-root

MEDIA_URL='/media/'
# URL responsible for serving media content from "MEDIA_ROOT."
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#media-url

MEDIA_ROOT='media'
# The absolute filesystem path to the directory designated for storing user-uploaded files.
# Reference: https://docs.djangoproject.com/en/2.2/ref/settings/#media-root

SERVICE_BACKEND_URL=https://pz-api.akinon.net/
# The URL used as a backend service, providing various functionalities for the project, including users, orders, widgets, and more. For instance, in a hypothetical project named "pz," this URL could serve as the backend service as above. Additionally, if desired, it's possible to establish connections with alternative projects, granting access to display their users, widgets, etc.

WEBPACK_DEV_PORT=5000
# The port used by Webpack with WebpackDevServer for auto-reloading the page upon changes. Modify this only if you encounter conflicts when running multiple projects concurrently. Note that this setting applies when using "yarn dev," not "yarn dev:pure."
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.akinon.com/technical-guides/project-zero/django/project-structure/environmental-file.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
