lapeh 2.2.2 → 2.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lapeh",
3
- "version": "2.2.2",
3
+ "version": "2.2.3",
4
4
  "description": "Framework API Express yang siap pakai (Standardized)",
5
5
  "main": "index.js",
6
6
  "bin": {
package/readme.md CHANGED
@@ -17,11 +17,43 @@ Cocok untuk developer yang mencari **Express boilerplate** dengan fitur lengkap:
17
17
  - **High Performance**: Mendukung Fast-Serialization (Fastify-style) untuk response JSON super cepat.
18
18
  - **Scalable**: Siap untuk deployment Cluster/Load Balancer dengan Redis Store.
19
19
 
20
+ ## 🔮 Roadmap (Rencana Masa Depan)
21
+
22
+ Lapeh Framework akan terus berkembang menjadi solusi Enterprise yang lengkap. Kami memiliki rencana besar untuk fitur-fitur seperti **Job Queues**, **Storage Abstraction (S3)**, **Mailer**, dan **OpenAPI Generator**.
23
+
24
+ Lihat detail rencana pengembangan di **[ROADMAP.md](doc/ROADMAP.md)**.
25
+
26
+ ## 🤝 Berkontribusi (Open Source)
27
+
28
+ Lapeh adalah proyek Open Source dan kami sangat terbuka untuk kontribusi dari komunitas! Baik itu perbaikan bug, penambahan fitur, atau perbaikan dokumentasi.
29
+
30
+ Ingin ikut berkontribusi? Silakan baca **[Panduan Kontribusi (CONTRIBUTING.md)](doc/CONTRIBUTING.md)** untuk memulai.
31
+
20
32
  ## 📚 Dokumentasi Lengkap
21
33
 
22
- - [Panduan Instalasi & CLI](doc/CLI.md) (Coming Soon)
23
- - [Panduan Performa & Scaling](doc/PERFORMANCE.md) ⚡ _(Baru)_
24
- - [Changelog](doc/CHANGELOG.md)
34
+ Kami menyusun "Learning Path" agar Anda bisa memahami framework ini dari nol hingga mahir.
35
+
36
+ ### 🐣 Level 1: Pemula (Wajib Baca)
37
+
38
+ - **[Pengenalan Framework](doc/INTRODUCTION.md)**: Mengapa framework ini ada? Apa bedanya dengan yang lain?
39
+ - **[Getting Started](doc/GETTING_STARTED.md)**: Instalasi dan setup awal.
40
+ - **[Bedah Struktur Folder](doc/STRUCTURE.md)**: Pahami fungsi setiap file dan direktori.
41
+ - **[Referensi Package](doc/PACKAGES.md)**: Penjelasan kegunaan setiap library yang terinstall.
42
+ - **[Cheatsheet (Contekan)](doc/CHEATSHEET.md)**: Daftar perintah & kode cepat.
43
+
44
+ ### 🔨 Level 2: Membangun Aplikasi
45
+
46
+ - **[CLI Tools](doc/CLI.md)**: Percepat kerja dengan generator kode (`make:module`, dll).
47
+ - **[Tutorial Studi Kasus](doc/TUTORIAL.md)**: Bikin API "Perpustakaan" dari nol sampai jadi.
48
+ - **[Fitur & Konsep Inti](doc/FEATURES.md)**: Validasi, Auth, RBAC, dan Serializer.
49
+
50
+ ### 🚀 Level 3: Mahir & Production
51
+
52
+ - **[Performance Guide](doc/PERFORMANCE.md)**: Tips optimasi high-scale app.
53
+ - **[Security Best Practices](doc/SECURITY.md)**: Panduan mengamankan aplikasi.
54
+ - **[Deployment Guide](doc/DEPLOYMENT.md)**: Cara deploy ke VPS, Docker, atau Cloud.
55
+ - **[FAQ & Troubleshooting](doc/FAQ.md)**: Solusi masalah umum.
56
+ - **[Changelog](doc/CHANGELOG.md)**: Riwayat versi.
25
57
 
26
58
  ## 📦 Instalasi & Penggunaan
27
59
 
package/document.md DELETED
@@ -1,205 +0,0 @@
1
- # Lapeh Framework For Website Documentation
2
-
3
- Jika Anda ingin membangun website dokumentasi sekelas **NestJS** atau **Next.js** di `https://lapeh.web.id`, berikut adalah **Blueprint Lengkap** (Rancang Bangun) yang perlu Anda siapkan.
4
-
5
- Tujuannya adalah membuat pengguna baru merasa _terbimbing_ dari nol hingga mahir, serta memberikan referensi cepat bagi pengguna lama.
6
-
7
- ---
8
-
9
- ## 1. Rekomendasi Teknologi (Tech Stack)
10
-
11
- Untuk membuat dokumentasi yang modern, cepat, dan mudah dikelola, jangan membuatnya dari nol (HTML manual). Gunakan _Documentation Framework_:
12
-
13
- - **Pilihan Utama (React/Next.js ecosystem):** [Nextra](https://nextra.site/) atau [Docusaurus](https://docusaurus.io/).
14
- - _Alasan:_ Mendukung Markdown/MDX, SEO friendly, pencarian cepat, dan tampilan yang sangat mirip dengan Next.js/Vercel docs.
15
- - **Alternatif (Vue ecosystem):** [VitePress](https://vitepress.dev/).
16
-
17
- ---
18
-
19
- ## 2. Struktur Menu Utama (Top Navigation)
20
-
21
- Menu di bagian atas (Header) harus sederhana namun mencakup akses ke area vital:
22
-
23
- 1. **Docs** (Dokumentasi utama)
24
- 2. **API Reference** (Kamus kode: daftar lengkap class, function, interface)
25
- 3. **Blog** (Berita rilis versi baru, tutorial kasus nyata)
26
- 4. **Community** (Link ke Discord, GitHub Discussions)
27
- 5. **GitHub Icon** (Link ke repository)
28
- 6. **Search Bar** (Pencarian global - _Wajib ada_)
29
- 7. **Version Dropdown** (Jika nanti ada v2.0, v3.0, user bisa ganti versi)
30
-
31
- ---
32
-
33
- ## 3. Struktur Konten (Sidebar Menu)
34
-
35
- Ini adalah "Jantung" dari dokumentasi Anda. Urutannya harus logis: dari pengenalan -> dasar -> teknik lanjut -> deploy.
36
-
37
- ### A. Introduction (Pengenalan)
38
-
39
- - **Overview**: Apa itu Lapeh? Kenapa menggunakan ini? (Filosofi: Struktur Laravel di Node.js).
40
- - **Installation**: Cara install via `npx lapeh@latest`.
41
- - **First Steps**: "Hello World" pertama, menjalankan `npm run dev`, struktur folder awal.
42
- - **CLI Commands**: Penjelasan perintah `lapeh`, `npm run make:module`, dll.
43
-
44
- ### B. Fundamentals (Dasar-Dasar)
45
-
46
- - **Directory Structure**: Penjelasan detail folder `src/`, `prisma/`, `bin/`.
47
- - **Routing**: Cara membuat route baru di `src/routes/`.
48
- - **Controllers**: Cara membuat controller, menangani Request/Response.
49
- - **Services**: Business logic layer (pemisahan logic dari controller).
50
- - **Middleware**: Cara kerja middleware, error handling global, validation.
51
- - **DTO & Validation**: Validasi request menggunakan **Zod**.
52
-
53
- ### C. Database (Prisma ORM)
54
-
55
- - **Prisma Basics**: Konfigurasi `.env`, `prisma/base.prisma`.
56
- - **Models**: Cara membuat model baru di `src/models/*.prisma`.
57
- - **Migrations**: Workflow `npm run prisma:migrate` vs `prisma:deploy`.
58
- - **Seeding**: Cara mengisi data awal (`npm run db:seed`).
59
- - **Studio**: Mengelola data via GUI (`npm run db:studio`).
60
-
61
- ### D. Security (Keamanan)
62
-
63
- - **Authentication**: Login, Register, JWT Strategy.
64
- - **Authorization (RBAC)**: Role-based access control (Admin vs User).
65
- - **Encryption**: Hashing password (Bcrypt).
66
- - **Protection**: Helmet, CORS, Rate Limiting (sudah built-in di Lapeh).
67
-
68
- ### E. Techniques (Teknik Lanjut)
69
-
70
- - **File Upload**: Upload gambar/file (Multer).
71
- - **Realtime**: Integrasi Socket.io (karena sudah ada di `src/realtime.ts`).
72
- - **Caching**: Redis integration.
73
- - **Logging**: Cara logging error dan activity.
74
- - **Unit Testing**: (Jika ada fitur testing).
75
-
76
- ### F. Deployment (Rilis)
77
-
78
- - **Environment Variables**: Persiapan `.env` untuk production.
79
- - **Process Manager**: Menggunakan PM2.
80
- - **Docker**: Cara containerize aplikasi Lapeh.
81
- - **Cloud Platforms**: Panduan deploy ke VPS (Ubuntu), Railway, atau Vercel.
82
-
83
- ---
84
-
85
- ## 4. Fitur Wajib di Website Dokumentasi
86
-
87
- Agar website dokumentasi Anda terasa "Profesional" dan "Developer Friendly":
88
-
89
- 1. **Code Highlighting & Copy Button**:
90
- Setiap blok kode harus punya warna syntax (highlighting) dan tombol "Copy" di pojok kanan atas.
91
-
92
- ```typescript
93
- // Contoh tombol copy harus ada di sini
94
- const app = lapeh();
95
- ```
96
-
97
- 2. **Dark Mode**:
98
- Developer suka mode gelap. Pastikan website mendukung toggle Light/Dark mode.
99
-
100
- 3. **Algolia Search (Pencarian Cepat)**:
101
- User tidak suka klik menu satu per satu. Mereka ingin ketik "JWT" dan langsung ketemu halamannya.
102
-
103
- 4. **Prev/Next Pagination**:
104
- Di bawah setiap artikel, ada tombol untuk lanjut ke bab berikutnya.
105
-
106
- - _< Sebelumnya: Installation_ | _Selanjutnya: First Steps >_
107
-
108
- 5. **"Edit this page on GitHub"**:
109
- Tombol di setiap halaman agar komunitas bisa bantu koreksi typo atau update dokumentasi (Open Source contribution).
110
-
111
- 6. **Interactive Tabs**:
112
- Jika ada pilihan (misal: NPM vs Yarn vs PNPM), gunakan tab.
113
- ```
114
- [NPM] [Yarn] [PNPM]
115
- npm install lapeh
116
- ```
117
-
118
- ---
119
-
120
- ## 5. Contoh Konten Halaman Utama (Landing Page)
121
-
122
- Halaman depan `https://lapeh.web.id` jangan langsung masuk ke dokumentasi teknis. Buat _Selling Point_:
123
-
124
- - **Hero Section**:
125
- - Judul Besar: "The Standardized Node.js Framework".
126
- - Sub-judul: "Build scalable APIs with ease. Inspired by Laravel, powered by Express & Prisma."
127
- - Tombol: [Get Started] [GitHub].
128
- - **Features Grid**:
129
- - 📦 **Modular**: Terstruktur rapi per fitur.
130
- - 🛡️ **Type-Safe**: Full TypeScript & Zod.
131
- - ⚡ **Prisma Power**: Database ORM modern.
132
- - 🚀 **CLI Tools**: Generate code dalam detik.
133
-
134
- ---
135
-
136
- ## 6. Langkah Kerja (Action Plan)
137
-
138
- 1. **Setup Repo**: Buat repo baru `lapeh-docs`.
139
- 2. **Init Project**: `npx create-nextra-app` (paling cepat) atau `npx create-docusaurus@latest`.
140
- 3. **Isi Konten**: Pindahkan isi `readme.md` dan `framework.md` ke dalam struktur bab di atas.
141
- 4. **Deploy**: Push ke GitHub, connect ke **Vercel** (gratis untuk open source).
142
- 5. **Domain**: Beli/set `lapeh.web.id` arahkan ke Vercel.
143
-
144
- ---
145
-
146
- ## 7. Struktur Folder Proyek Dokumentasi (Nextra/Docusaurus)
147
-
148
- Berikut adalah gambaran struktur folder jika Anda menggunakan **Nextra** (berbasis Next.js) untuk website dokumentasi `lapeh.web.id`:
149
-
150
- ```
151
- lapeh-docs/
152
- ├── pages/
153
- │ ├── index.mdx # Halaman Landing Page (Home)
154
- │ ├── _meta.json # Konfigurasi Menu Sidebar & Top Nav
155
- │ ├── docs/ # Folder Utama Dokumentasi
156
- │ │ ├── _meta.json # Urutan menu sidebar
157
- │ │ ├── introduction/
158
- │ │ │ ├── _meta.json
159
- │ │ │ ├── overview.mdx # Apa itu Lapeh?
160
- │ │ │ ├── installation.mdx
161
- │ │ │ ├── first-steps.mdx
162
- │ │ │ └── cli.mdx
163
- │ │ ├── fundamentals/
164
- │ │ │ ├── _meta.json
165
- │ │ │ ├── directory-structure.mdx
166
- │ │ │ ├── routing.mdx
167
- │ │ │ ├── controllers.mdx
168
- │ │ │ └── ...
169
- │ │ ├── database/
170
- │ │ │ ├── _meta.json
171
- │ │ │ ├── prisma-basics.mdx
172
- │ │ │ ├── models.mdx
173
- │ │ │ └── ...
174
- │ │ ├── security/
175
- │ │ │ ├── _meta.json
176
- │ │ │ └── ...
177
- │ │ ├── techniques/
178
- │ │ │ ├── _meta.json
179
- │ │ │ └── ...
180
- │ │ └── deployment/
181
- │ │ ├── _meta.json
182
- │ │ └── ...
183
- │ ├── blog/ # Folder Blog
184
- │ │ ├── _meta.json
185
- │ │ ├── release-v1-0-0.mdx
186
- │ │ └── tutorial-auth.mdx
187
- │ └── about.mdx # Halaman About/Team
188
- ├── public/ # Aset statis (Logo, Gambar)
189
- │ ├── logo.png
190
- │ ├── favicon.ico
191
- │ └── images/
192
- │ └── architecture-diagram.png
193
- ├── theme.config.jsx # Konfigurasi Tema (Logo, Footer, Social Links)
194
- ├── next.config.js # Config Next.js
195
- ├── package.json
196
- └── tsconfig.json
197
- ```
198
-
199
- ### Penjelasan File Penting:
200
-
201
- - **`pages/`**: Semua konten Markdown/MDX ada di sini.
202
- - **`_meta.json`**: File json kecil di setiap folder untuk mengatur urutan menu sidebar dan judul yang tampil.
203
- - **`theme.config.jsx`**: Di sini Anda mengatur logo `Lapeh`, link GitHub, dan konfigurasi SEO.
204
-
205
- Dengan struktur ini, framework Anda akan terlihat sangat matang dan profesional, meningkatkan kepercayaan developer untuk menggunakannya.