Skip to main content
Using the desktop app? You don’t need any of this: set your AI provider in the app under Settings → AI.
When you run AppBlips in a browser, from source or with Docker, you can configure it with a .env file in the AppBlips folder. Everything here is optional. The simplest setup is no .env at all: pick your provider, key and model in the app under Settings → AI. To create the file:
  1. In the AppBlips folder, copy .env.example and name the copy .env.
  2. Open .env in any text editor and fill in only the lines you need.
  3. Restart AppBlips: press Ctrl+C and run npm start again, or run docker compose up -d for Docker.
When it starts, AppBlips prints which AI provider it found. It never prints your key.

AI provider for the server

These give the server its own provider. It’s used whenever Settings → AI has no provider saved; a provider saved in the app always wins.
These settings only work with DeepSeek or a service that speaks the OpenAI chat-completions API (such as OpenRouter or Ollama). An Anthropic key doesn’t work here. To use Anthropic, the default provider, leave these blank and enter your key in the app under Settings → AI.
string
Your API key. With OPENAI_BASE_URL blank, this is a DeepSeek key.
string
The model, written exactly as your provider names it, for example deepseek-v4-pro.
string
The address of any service that speaks the OpenAI chat-completions API, such as OpenRouter, Ollama, vLLM, LM Studio, LiteLLM or Groq. Blank means DeepSeek.
string
A model for requests with an attached image, on the same service and key. Use it when your main model can’t read images. Blank uses OPENAI_LLM_MODEL.
number
Sampling temperature for the builder. Defaults to 0.2.
A key in .env can be used by anyone who can open AppBlips. Keep AppBlips on your own computer (the default), and set a spend limit with your provider.

Server

number
default:"3000"
The port npm start listens on. Docker ignores it: use APPBLIPS_PORT.
number
default:"3000"
Docker only: the port on your computer to open AppBlips at.
string
default:"127.0.0.1"
npm start only: the network address to listen on. The default lets only your own computer connect. Change it only if you put your own sign-in in front of AppBlips.
string
AppBlips only answers when you open it as localhost or 127.0.0.1, which stops other websites from reaching it through tricks with their own domain name. To open it under another name, such as a reverse proxy’s domain, list the names here, comma-separated, without http:// or a port (for example appblips.home.example).
string
AppBlips refuses AI requests from any page other than its own. If a reverse proxy changes the Host header, builds may fail with “Requests from other sites are not allowed.” List the exact address you open AppBlips at (comma-separated, for example https://appblips.home.example).
string
The folder where the server saves the API key you enter under Settings → AI (in a file only you can read). Defaults to .appblips in your home folder. The Docker image uses /data, which docker-compose.yml keeps in the appblips-data volume.
string
Where LM Studio and Ollama run, when that isn’t the same machine as the server. docker-compose.yml sets it to host.docker.internal, so a container can reach your computer; you rarely need to change it.

Example .env files

AppBlips sends requests in DeepSeek’s format, including its reasoning setting. If another service rejects builds, set Reasoning to Off in Settings → AI.