Skip to main content

MStore Dashboard - Nuxt 4 Application

MStore Dashboard adalah aplikasi backoffice modern yang dibangun dengan Nuxt 4 dan Vue 3 menggunakan Domain-Driven Design (DDD) dan Clean Architecture.

Key Features

12 Domain Modules

Arsitektur modular dengan 12 domain bisnis terpisah (01_core - 12_global)

Spreadsheet Integration

Handsontable untuk editing data seperti Excel dengan validasi server-side

Secure Authentication

JWT dengan access token di memory dan refresh token HttpOnly cookie

Multi-Language

Dukungan 3 bahasa: English, Bahasa Indonesia, dan Japanese

Architecture

Tech Stack

Core Technologies

State Management

UI & Styling

Internationalization

Data & Storage

Development

Architecture Diagram

Design Principles

Domain-Driven Design (DDD)

  • Bounded Contexts: Setiap domain (inventory, sales, finance) terpisah dan independen
  • Ubiquitous Language: Terminologi bisnis konsisten di seluruh codebase
  • Aggregate Roots: Entitas utama per domain mengelola state-nya sendiri

Clean Architecture

  • Separation of Concerns: UI, business logic, dan data access terpisah
  • Dependency Inversion: High-level modules tidak bergantung pada low-level modules
  • Testability: Setiap layer dapat di-test secara independen
  • Maintainability: Perubahan di satu layer tidak mempengaruhi layer lain

Offline-First (Partial)

  • IndexedDB Cache: Data geografis (countries, states, cities) di-cache lokal
  • Optimistic UI: UI update sebelum konfirmasi server
  • Background Sync: Sinkronisasi data di background

Security Features

  • JWT token-based authentication
  • Access token disimpan di memory (tidak di localStorage)
  • Refresh token sebagai HttpOnly cookie
  • Auto token refresh saat 401
  • Role-based access control (RBAC)
  • Permission checking per feature
  • Route guards untuk protected pages
  • HTTPS-only communication
  • No sensitive data in localStorage
  • Credentials included for cookie auth

Quick Start

1

Clone Repository

2

Install Dependencies

3

Setup Environment

4

Run Development Server

Dashboard akan berjalan di http://localhost:4001

Next Steps

Installation Guide

Panduan instalasi lengkap

Configuration

Konfigurasi environment dan Nuxt

Architecture Deep Dive

Memahami arsitektur DDD

Authentication

Implementasi autentikasi