Ajaxtreon Backend adalah sistem ERP modular berbasis Node.js dan Firebase yang mendukung proses bisnis seperti manajemen inventaris, pembelian, penjualan, pelanggan, supplier, laporan operasional, serta modul CRM untuk pengelolaan relasi pelanggan.
- Node.js + Express – Framework backend
- TypeScript – Bahasa utama
- Firebase Firestore – Basis data NoSQL
- Firebase Authentication – Autentikasi pengguna
- Cloudinary – Penyimpanan media (gambar)
- Midtrans API (Sandbox) – Integrasi pembayaran
- Modular Service Architecture – Service terpisah per fitur untuk skalabilitas
- Jest – (opsional) Testing
- Registrasi & login pengguna
- Firebase Authentication
- Token berbasis cookie
- CRUD pengguna sistem
- Role-based authorization (Admin/User)
- Produk
- Kategori produk
- Stok & histori perubahan stok
- Manajemen penjualan (sales order)
- Riwayat status order
- Integrasi Midtrans (mode sandbox)
- Proses pembayaran dan callback
- Manajemen pembelian dari supplier
- CRUD data supplier
- CRUD data customer/pelanggan
- CRUD data penjual
- Manajemen profil penjual
- Integrasi dengan produk & order
- Kirim notifikasi ke user (email, push, atau in-app)
- Manajemen template notifikasi
- Tracking status pengiriman
purchasereport– Laporan pembelianrevenuereport– Laporan pendapatansalesreport– Laporan penjualanstockreport– Laporan stok & mutasicustomerreport– Laporan pelanggansupplierreport– Laporan supplierinventoryturnover– Perputaran persediaan
- Lead Service – CRUD prospek, update status lead
- Contact Service – CRUD kontak, relasi dengan lead
- Opportunity Service – CRUD peluang bisnis, relasi dengan lead/contact
- Activity Service – CRUD aktivitas (meeting, call, email, task), filter berdasarkan entitas terkait
src/
├── controllers/ # Handler request
├── routes/ # Routing per service
├── services/ # Business logic per modul
├── middlewares/ # Middleware autentikasi & otorisasi
├── dtos/ # Data Transfer Objects
├── utils/ # Helper functions
└── config/ # Konfigurasi Firebase, Cloudinary, Midtrans
git clone https://github.com/Ajax-Z01/ajaxtreon-backend
cd ajaxtreon-backendnpm installcp .env.example .envIsi variabel:
PORT=5000
FIREBASE_PROJECT_ID=...
FIREBASE_PRIVATE_KEY=...
FIREBASE_CLIENT_EMAIL=...
CLOUDINARY_CLOUD_NAME=...
CLOUDINARY_API_KEY=...
CLOUDINARY_API_SECRET=...
MIDTRANS_SERVER_KEY=...
MIDTRANS_CLIENT_KEY=...
npm run devnpm run build
npm startnpm run dev– Development servernpm run build– Compile TypeScriptnpm start– Run production buildnpm run lint– Linting kode
MIT License