Setup
Ghostwriter is easiest to start with Docker. The current project already ships a local-first setup path, so the website should reflect the real flow instead of inventing a hosted onboarding story.
Prerequisites
- Docker and Docker Compose
- An API key for OpenAI or Gemini
1. Configure the environment
cd ghostwriter
cp .env.example .env
Set your provider and credentials in .env:
AI_PROVIDER=openai
OPENAI_API_KEY=sk-...
You can also choose gemini. Adjust timezone and schedule values while you are there.
2. Start Ghostwriter
docker compose up -d
Verify the service:
curl http://localhost:8080/health
Then open http://localhost:8080.
3. First-run setup
On the first run:
- Create the first user account. That account becomes the admin.
- Open Settings → API Tokens.
- Create API tokens for the mobile clients you want to connect.
What to do next
- Add your feeds in the web UI
- Trigger a digest manually to verify the pipeline
- Connect any clients you want to use with API tokens
- Experiment with podcast generation in Settings if you want audio output