A modern, high-performance Full-Stack Admin Dashboard and Content Management System (CMS) built with Next.js, Tailwind CSS, Prisma, and dynamic real-time integrations. This application serves as a multi-workspace platform to manage categories, products, orders, and real-time sales metrics across multiple store instances.
- Framework: Next.js (App Router, Server Actions)
- Styling: Tailwind CSS, Shadcn/ui
- Database & ORM: Prisma Client with PostgreSQL / SQLite support
- State & Form Management: React Hook Form, Zod Validation
- Real-Time Features: Pusher Channels integration for instantaneous order tracking
- Authentication: NextAuth.js (Credentials and Google OAuth connectivity)
- HTTP Client: Axios
- Multi-Store Workspace: Create, update, delete, and seamlessly switch between multiple independent stores via the main workspace navigation.
- Real-Time Orders Feed: Instantaneous notification system driven by Pusher Server when new orders are captured at checkout.
- Dynamic Charting: Interactive, screen-reader accessible bar charts powered by Recharts visualizing monthly revenue analytics.
- Profile & Account Management: Unified account settings profile form supporting both Google OAuth avatars and credential-based initials generator.
- Full E-Commerce Backend Pipeline: Robust API routes for cart management, inventory aggregation, secure CORS headers handling, and automated checkout item connections.
Before you begin, ensure you have met the following requirements:
- Node.js 20.0 or higher
- npm package manager
Create a .env file in the root directory and configure the required keys:
# Database Connections
DATABASE_URL="your-database-connection-url"
# Authentication Secrets
NEXTAUTH_SECRET="your-nextauth-session-secret"
AUTH_GOOGLE_ID="your-google-client-id"
AUTH_GOOGLE_SECRET="your-google-client-secret"
# Real-Time Gateway (Pusher)
PUSHER_APP_ID="your-pusher-app-id"
PUSHER_SECRET="your-pusher-secret"
NEXT_PUBLIC_PUSHER_KEY="your-pusher-public-key"
NEXT_PUBLIC_PUSHER_CLUSTER="your-pusher-cluster-region"- Clone the repository:
git clone https://github.com/athafaiq91/website-admin.git- Navigate to the project directory:
cd website-admin- Install dependencies:
npm install- Menjalankan server pengembangan lokal:
npm run dev- Membuat build produksi aplikasi:
npm run build- Menjalankan server produksi setelah proses build selesai:
npm run start- Menjalankan linter untuk memeriksa kualitas kode:
npm run lintPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License - see the LICENSE file for details.
- Atha Faiq Abdurrochman - Initial work - athafaiq91
Special thanks to all contributors and open source projects that made this possible.