Skip to content

ProMan adalah sistem manajemen proyek modern dengan fitur kolaborasi tim, pelacakan tugas, dan komunikasi real-time. Dirancang dengan antarmuka yang responsif dan mudah digunakan, membantu tim mengatur proyek, mengelola anggota tim, dan memantau kemajuan proyek secara efektif

License

Notifications You must be signed in to change notification settings

IkuzaDev/ProMan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š ProMan - Project Management System

Node.js Express.js Tailwind CSS SQLite Pug Socket.io

ProMan adalah sistem manajemen proyek modern dengan fitur kolaborasi tim, pelacakan tugas, dan komunikasi real-time. Dirancang dengan antarmuka yang responsif dan mudah digunakan, membantu tim mengatur proyek, mengelola anggota tim, dan memantau kemajuan proyek secara efektif.

✨ Fitur Utama

πŸ“‹ Manajemen Proyek Buat, edit, dan pantau proyek dengan timeline dan milestone yang jelas
πŸ‘₯ Manajemen Tim Kelola anggota tim dan tetapkan peran untuk setiap proyek
βœ… Pelacakan Tugas Buat, tetapkan, dan pantau tugas dengan status dan prioritas
πŸ’¬ Komunikasi Real-time Diskusi dan notifikasi instan melalui integrasi Socket.io
πŸ“Š Dashboard Analitik Visualisasi data proyek dan kinerja tim

πŸ–ΌοΈ Preview Aplikasi

Preview dari #ProMan Project Management System

Dashboard ProMan Manajemen Proyek Manajemen Tugas Manajemen Tim

🧩 Teknologi yang Digunakan

  • Backend: Node.js + Express.js untuk server yang cepat dan efisien
  • View Engine: Pug templating untuk rendering HTML yang elegan
  • Styling: Tailwind CSS untuk desain yang modern dan responsif
  • Database: SQLite3 (file-based) untuk penyimpanan data yang ringan
  • Real-time: Socket.io untuk komunikasi dan notifikasi real-time
  • Authentication: bcrypt untuk enkripsi password dan manajemen sesi

πŸ‘₯ Role Pengguna

πŸ›‘οΈ Admin
  • Mengelola semua pengguna sistem
  • Membuat dan mengelola proyek
  • Menetapkan Project Manager untuk proyek
  • Melihat laporan dan analitik semua proyek
  • Mengatur konfigurasi sistem
πŸ‘¨β€πŸ’Ό Project Manager (PM)
  • Mengelola proyek yang ditugaskan
  • Menambah dan menghapus anggota tim proyek
  • Membuat dan menetapkan tugas kepada anggota tim
  • Memantau kemajuan proyek dan kinerja tim
  • Mengupdate status proyek dan milestone
πŸ‘¨β€πŸ’» Team Member
  • Melihat tugas yang ditugaskan
  • Mengupdate status dan progress tugas
  • Berkolaborasi dengan anggota tim lain
  • Menambahkan komentar pada tugas
  • Melihat timeline dan milestone proyek

πŸš€ Cara Instalasi

  1. Clone repository ini

    git clone https://github.com/IkuzaDev/proman.git
    cd proman
  2. Install dependencies

    npm install
  3. Inisialisasi database dengan data awal

    npm run seed
  4. Jalankan aplikasi

    npm start

    atau untuk development

    npm run dev
  5. Akses aplikasi melalui browser di http://localhost:3000

πŸ”‘ Default Login

Role Username Password
Admin admin password123
Project Manager manager password123
Team Member member password123

πŸ—ΊοΈ Routes & API Endpoints

πŸ” Authentication Routes
  • GET /auth/login - Menampilkan halaman login
  • POST /auth/login - Memproses login user
  • GET /auth/logout - Logout user dan menghapus sesi
  • GET /auth/register - Menampilkan halaman registrasi
  • POST /auth/register - Memproses registrasi user baru
🏠 Landing Routes
  • GET / - Halaman utama/landing page
πŸ›‘οΈ Admin Routes

Page Routes

  • GET /admin/dashboard - Dashboard admin
  • GET /admin/users - Manajemen pengguna
  • GET /admin/projects - Manajemen proyek
  • GET /admin/projects/create - Form pembuatan proyek baru
  • GET /admin/projects/:id - Detail proyek
  • GET /admin/projects/:id/edit - Form edit proyek
  • GET /admin/analytics - Analitik dan laporan

API Routes - Users

  • GET /admin/api/users - Mendapatkan semua data pengguna
  • POST /admin/api/users - Membuat pengguna baru
  • PUT /admin/api/users/:id - Mengubah data pengguna
  • DELETE /admin/api/users/:id - Menghapus pengguna

API Routes - Projects

  • GET /admin/api/projects - Mendapatkan semua data proyek
  • POST /admin/api/projects - Membuat proyek baru
  • PUT /admin/api/projects/:id - Mengubah data proyek
  • DELETE /admin/api/projects/:id - Menghapus proyek
  • POST /admin/api/projects/:id/assign-pm - Menetapkan Project Manager
πŸ‘¨β€πŸ’Ό Project Manager Routes

Page Routes

  • GET /pm/dashboard - Dashboard Project Manager
  • GET /pm/projects - Daftar proyek yang dikelola
  • GET /pm/projects/:id - Detail proyek
  • GET /pm/projects/:id/edit - Form edit proyek
  • GET /pm/projects/:id/members - Manajemen anggota tim proyek
  • GET /pm/projects/:id/tasks - Daftar tugas proyek
  • GET /pm/tasks/create - Form pembuatan tugas baru
  • GET /pm/tasks/:id/edit - Form edit tugas
  • GET /pm/tasks/:id - Detail tugas

API Routes - Project Management

  • PUT /pm/api/projects/:id - Mengupdate informasi proyek
  • POST /pm/api/projects/:id/members - Menambahkan anggota tim ke proyek
  • DELETE /pm/api/projects/:id/members/:userId - Menghapus anggota tim dari proyek

API Routes - Task Management

  • GET /pm/api/projects/:id/tasks - Mendapatkan semua tugas dalam proyek
  • POST /pm/api/tasks - Membuat tugas baru
  • PUT /pm/api/tasks/:id - Mengupdate tugas
  • DELETE /pm/api/tasks/:id - Menghapus tugas
  • POST /pm/api/tasks/:id/assign - Menetapkan tugas ke anggota tim
πŸ‘¨β€πŸ’» Team Member Routes

Page Routes

  • GET /member/dashboard - Dashboard anggota tim
  • GET /member/projects - Daftar proyek yang diikuti
  • GET /member/projects/:id - Detail proyek
  • GET /member/tasks - Daftar tugas yang ditugaskan
  • GET /member/tasks/:id - Detail tugas
  • GET /member/profile - Profil pengguna

API Routes - Task Management

  • GET /member/api/tasks - Mendapatkan semua tugas yang ditugaskan
  • PUT /member/api/tasks/:id/status - Mengupdate status tugas
  • PUT /member/api/tasks/:id/progress - Mengupdate progress tugas
  • POST /member/api/tasks/:id/comments - Menambahkan komentar pada tugas

πŸ“‚ Struktur Project

proman/
β”œβ”€β”€ app.js                # File utama aplikasi
β”œβ”€β”€ config/               # Konfigurasi database dan aplikasi
β”‚   └── seed.js           # Inisialisasi data awal
β”œβ”€β”€ controllers/          # Logic aplikasi
β”‚   β”œβ”€β”€ adminController.js
β”‚   β”œβ”€β”€ authController.js
β”‚   β”œβ”€β”€ landingController.js
β”‚   β”œβ”€β”€ memberController.js
β”‚   └── pmController.js
β”œβ”€β”€ db/                   # Database SQLite
β”‚   └── sessions.sqlite   # Database sesi
β”œβ”€β”€ middleware/           # Middleware Express
β”‚   └── auth.js           # Middleware autentikasi
β”œβ”€β”€ models/               # Model data
β”œβ”€β”€ public/               # Static assets (CSS, JS, gambar)
β”‚   β”œβ”€β”€ css/
β”‚   β”œβ”€β”€ js/
β”‚   └── images/
β”œβ”€β”€ routes/               # Route aplikasi
β”‚   β”œβ”€β”€ admin.js
β”‚   β”œβ”€β”€ auth.js
β”‚   β”œβ”€β”€ landing.js
β”‚   β”œβ”€β”€ project-manager.js
β”‚   └── team-member.js
β”œβ”€β”€ utils/                # Utility functions
β”‚   └── socket.js         # Konfigurasi Socket.io
└── views/                # Template Pug
    β”œβ”€β”€ admin/
    β”œβ”€β”€ auth/
    β”œβ”€β”€ layouts/
    β”œβ”€β”€ member/
    β”œβ”€β”€ pm/
    └── partials/

πŸ”„ Fitur yang Akan Datang

  • πŸ“± Aplikasi mobile untuk akses di perangkat Android dan iOS
  • πŸ“Š Dashboard analitik yang lebih komprehensif
  • πŸ“… Integrasi kalender untuk perencanaan proyek
  • πŸ“ Manajemen file dan dokumen proyek
  • 🌐 Integrasi dengan layanan pihak ketiga (GitHub, Slack, dll)

🀝 Kontribusi

Kontribusi selalu diterima! Silakan fork repositori ini, buat perubahan, dan kirimkan pull request.

πŸ“„ Lisensi

Proyek ini dilisensikan di bawah MIT License.

πŸ“§ Untuk kerja sama komersial: [email protected]

About

ProMan adalah sistem manajemen proyek modern dengan fitur kolaborasi tim, pelacakan tugas, dan komunikasi real-time. Dirancang dengan antarmuka yang responsif dan mudah digunakan, membantu tim mengatur proyek, mengelola anggota tim, dan memantau kemajuan proyek secara efektif

Topics

Resources

License

Stars

Watchers

Forks