Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
Translation pending
CRM, M-Pesa automation, WhatsApp and automatic follow-ups in one dashboard. Built for Kenyan SMEs.
BusinessHTML · JavaScriptGitHub @jacksonlumumba2026-webOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
A working multi-tenant SaaS platform for Kenyan SMEs: CRM, M-Pesa payment automation, SMS/WhatsApp customer touchpoints, and automatic Day 1/3/7 follow-ups — all in one dashboard.Read the full README ↗A working multi-tenant SaaS platform for Kenyan SMEs: CRM, M-Pesa payment automation, SMS/WhatsApp customer touchpoints, and automatic Day 1/3/7 follow-ups — all in one dashboard.
public/ — the frontend (static HTML/CSS/JS, no build step)
index.html — marketing/landing pageadmin.html — your super-admin panel (add clients, see revenue, configure integrations)dashboard.html — what each client sees (their CRM, transactions, follow-ups)portal.html — the public payment page clients share with their own customersjs/api.js — shared helper that talks to the backendserver/ — the Node.js/Express backend (JSON-file database, no separate DB server needed)
routes/ — API endpoints (auth, clients, transactions, contacts, followups, settings)lib/ — M-Pesa Daraja, Africa's Talking SMS, JWT auth, JSON storagecron/followups.js — background job that sends due follow-up SMS every 15 minutesdata/db.json — the database file (created automatically, not committed to git)Everything in this repo except:
node_modules/ (already gitignored — installed fresh on the server).env (already gitignored — your real secrets live only on the server)server/data/db.json (already gitignored — this is your live business data, not source code)In short: just commit and push normally. The .gitignore already keeps secrets and data out.
Truehost (cPanel) hosting needs three things this repo doesn't include by default:
git clone your repo directly on the server (if Truehost gives you SSH/git access), or zip the repo and upload via cPanel File Manager, then extract it into your app's folder.node_modules/ — run npm install on the server after upload (don't upload your local node_modules, it's gitignored and platform-specific anyway)..env file — create this directly on the server (cPanel File Manager → create file .env in the project root, or via SSH). Never commit this file. Use .env.example as the template.automate-ke (a folder under your account)server/index.js.env file — Truehost's panel lets you add them directly, or you can create a real .env file in the app folder if your setup doesn't expose this panel):
PORT=<the port Truehost assigns — leave default if shown>
JWT_SECRET=<a long random string — generate one, don't reuse the example>
ADMIN_PASSWORD=<your real admin password>
APP_URL=https://yourdomain.co.ke
MPESA_ENV=production
MPESA_CONSUMER_KEY=<from developer.safaricom.co.ke>
MPESA_CONSUMER_SECRET=<from developer.safaricom.co.ke>
MPESA_SHORTCODE=<your Paybill/Till number>
MPESA_PASSKEY=<from Safaricom Daraja portal>
MPESA_CALLBACK_URL=https://yourdomain.co.ke/api/transactions/mpesa/callback
AT_ENV=production
AT_API_KEY=<from africastalking.com>
AT_USERNAME=<your AT username>
AT_SENDER_ID=AutomateKE
You can leave the MPESA_* and AT_* variables empty at first — the app runs fine without them (payments are recorded as "simulated" and SMS sending is silently skipped) so you can demo the platform before signing up for real credentials.npm install inside the app's virtual environment)./admin.html and log in with the ADMIN_PASSWORD you set.npm install
cp .env.example .env # then fill in JWT_SECRET and ADMIN_PASSWORD at minimum
npm run dev
Visit http://localhost:4000. Default admin password (until you change it via the Settings page) is whatever you set as ADMIN_PASSWORD in .env.
/admin.html and add a client business — this creates their dashboard login and a unique payment-portal link./dashboard.html) and login, plus their portal link (/portal.html?key=...) to share with their own customers.server/cron/followups.js.wa.me click-to-chat links (one tap opens WhatsApp with a pre-filled message). A fully automated WhatsApp bot requires Meta Business verification for the WhatsApp Cloud API — a future upgrade, not implemented here.