Quick Start
Get up and running with Lunogram using Docker Compose
Want to skip the setup?
Get started in minutes with Lunogram Cloud. No infrastructure to maintain.
Try Lunogram Cloud
This guide gets you from zero to a running self-hosted Lunogram instance in under 5 minutes.
Prerequisites: Make sure you have Docker installed and running on your machine.
Install & Run
git clone https://github.com/lunogram/platform.git
cd platform
docker compose up -dThat's it. Lunogram is now running at http://localhost:8080.
Log In
Use the default credentials to access the dashboard:
| Field | Value |
|---|---|
admin@localhost | |
| Password | admin |
Change these credentials before deploying to production.
What's Running
Docker Compose starts everything you need:
| Service | Purpose | Port |
|---|---|---|
| Lunogram | Main application | 8080 |
| PostgreSQL | Database | 5432 |
| Redis | Caching | 6379 |
| NATS | Event streaming | 4222 |
Your First Campaign
Once logged in, you'll go through a quick onboarding to create your first project. Then:
1. Add an Integration
Connect an email provider like Resend or Twilio for SMS.
2. Create a List
Define which users should receive your messages.
3. Build a Campaign
Design your message and send it.
4. Set Up a Journey
Automate messages based on user behavior.
Integrate Your App
Start tracking users and events:
npm install @lunogram/js-sdkimport { Lunogram } from "@lunogram/js-sdk";
const lunogram = new Lunogram(
"pk_your_public_key", // Get this from Project Settings > API Keys
"http://localhost:8080/api",
);
await lunogram.user.upsert({
identifier: [{ externalId: "user_123" }],
email: "user@example.com",
});
await lunogram.user.events.post([{ name: "user.signed_up" }]);