Backend/frontend architecture, roles & notifications, and the mobile companion app's current build phase.
Neo CRM is a lead and pipeline management CRM: search and filtering over leads, configurable pipelines and stages, follow-up scheduling, notes, and a full activity timeline for every change made to a lead. The backend is a Laravel API; the web app is a Vue 3 + TypeScript + Vite single-page app talking to it over a versioned /api/v1 HTTP API.
This documentation describes the product's own development environment and architecture. Neo CRM is in active development and not yet publicly available — see the product page for status.
| Layer | Technology |
|---|---|
| Backend | Laravel API |
| Web frontend | Vue 3, TypeScript, Vite |
| Mobile app | React Native (Expo, managed workflow), TypeScript |
| API | Versioned /api/v1 HTTP API |
| Local dev | Docker for both backend and frontend |
Backend static analysis and formatting run via Composer scripts (composer analyse, ./vendor/bin/pint --test); the frontend lints with ESLint and checks formatting with Prettier. Both apps' tests, static analysis and lint/format checks run automatically in CI on every push/PR.
Access is role-scoped across five roles:
Notifications go out across in-app, email and push channels, with a per-event-type × per-channel preferences grid so a user can turn off, say, email notifications for one event type without affecting others.
The mobile companion (leadflow-mobile) is a React Native / Expo app implemented spec-by-spec against the same backend. As of this snapshot:
Crash reporting is wired up via Sentry, gated on a DSN being configured (none is provisioned in this snapshot, so it no-ops safely). No usage-analytics SDK is included by design — the mobile spec deliberately limits telemetry to crash visibility given the PII a CRM handles.
Backend (served at http://localhost:8094, health check at /up):
cp .env.example .env
docker compose up -d --build
docker compose exec laravel.test php artisan migrate
Web frontend:
docker compose run --rm node npm install
docker compose run --rm node npm run dev
Mobile app:
cp .env.example .env
npm install
npx expo start
No local PHP/Composer/Node/MySQL/Redis installation is required for the backend or web frontend — everything runs in Docker. The mobile app needs Node ≥ 20 and, for a real device build, Xcode (iOS) or Android Studio (Android); Expo Go works for most flows without either.
The web app's foundational CRM workflow (leads, pipelines, follow-ups, notifications) is built and under active development. The mobile app has completed its foundation, auth, dashboard, and full lead-management phases, with follow-ups, notifications and offline support also built. Remaining mobile work includes app-store release preparation (EAS build configuration, real push-notification project IDs, and privacy-policy updates). Neither the web app nor the mobile app is publicly launched yet — see the product page, or contact us to be notified at launch.
Reach out and we'll answer directly, or update this page.