UNPKG

minangscript

Version:

Modern programming language with Minangkabau philosophy. Features native arrays (kumpulan), objects (benda), web development support, and comprehensive algorithm examples. Ready for web applications, data structures, and algorithmic programming.

516 lines (386 loc) โ€ข 12.6 kB
# MinangPaket - Package Manager untuk MinangScript MinangPaket adalah package manager resmi untuk MinangScript yang dirancang dengan filosofi Minangkabau untuk pengelolaan paket yang kolaboratif, etis, dan berkelanjutan. ## ๐ŸŒ International Support / Dukungan Internasional **MinangPaket now fully supports both English and Indonesian interfaces**, making it accessible for developers worldwide while preserving Minangkabau cultural values. **MinangPaket sekarang sepenuhnya mendukung antarmuka bahasa Inggris dan Indonesia**, membuatnya dapat diakses oleh pengembang di seluruh dunia sambil tetap mempertahankan nilai-nilai budaya Minangkabau. ### Language Switching / Pergantian Bahasa ```bash # Switch to English minang lang en # Beralih ke Bahasa Indonesia minang lang id # Get help in your preferred language minang help # Shows bilingual help ``` ### Command Aliases / Alias Perintah All commands support both English and Indonesian versions: | English | Indonesian | Description | |---------|------------|-------------| | `init` | `inisialkan` | Initialize new project | | `install` | `pasang` | Install package | | `uninstall` | `lepas` | Remove package | | `search` | `cari` | Search packages | | `list` | `daftar` | List installed packages | | `update` | `perbarui` | Update packages | | `publish` | `terbitkan` | Publish package | ### Examples for International Users ```bash # For English speakers minang init my-project --author "John Doe" minang install ui-components minang search mathematical-tools minang list # For Indonesian speakers minang inisialkan proyek-saya --author "Budi Santoso" minang pasang komponen-ui minang cari alat-matematika minang daftar ``` ## ๐Ÿ”๏ธ Filosofi Minangkabau dalam Package Management ### ๐Ÿค Gotong Royong - Kerja Sama Komunitas - **Shared Dependencies**: Paket berbagi dependencies secara efisien - **Community Contributions**: Setiap orang bisa berkontribusi ke ekosistem - **Collaborative Development**: Pengembangan bersama untuk kemajuan bersama ### ๐Ÿ—ฃ๏ธ Musyawarah Mufakat - Pengambilan Keputusan Bersama - **Version Resolution**: Resolusi versi melalui konsensus dependency - **Community Governance**: Keputusan paket melalui diskusi komunitas - **Conflict Resolution**: Penyelesaian konflik dependency secara demokratis ### ๐ŸŒฟ Alam Takambang Jadi Guru - Belajar dari Ekosistem - **Adaptive Caching**: Cache yang beradaptasi dengan usage pattern - **Learning from Usage**: Rekomendasi paket berdasarkan pola penggunaan - **Organic Growth**: Ekosistem yang tumbuh secara natural ### โš–๏ธ Adat Basandi Syarak - Praktik Etis - **Ethical Validation**: Validasi paket berdasarkan prinsip etika - **Secure Distribution**: Distribusi paket yang aman dan terpercaya - **Responsible Versioning**: Versioning yang bertanggung jawab ## ๐Ÿš€ Instalasi & Setup MinangPaket sudah terintegrasi dengan MinangScript. Untuk menggunakan: ```bash # Global installation MinangScript (sudah termasuk MinangPaket) npm install -g minangscript # Verify installation minang paket --version ``` ## ๐Ÿ“š Penggunaan Dasar ### Inisialisasi Proyek ```bash # Inisialisasi proyek baru minang paket init myproject # Dengan opsi tambahan minang paket init myproject --author "Nama Anda" --description "Deskripsi proyek" ``` Struktur proyek yang dibuat: ``` myproject/ โ”œโ”€โ”€ paket.minang # Konfigurasi paket โ”œโ”€โ”€ main.minang # File utama โ”œโ”€โ”€ src/ # Source code โ”œโ”€โ”€ test/ # Test files โ”œโ”€โ”€ docs/ # Dokumentasi โ”œโ”€โ”€ examples/ # Contoh penggunaan โ””โ”€โ”€ .gitignore # Git ignore file ``` ### Instalasi Paket ```bash # Install paket minang paket pasang minang-ui # Install versi spesifik minang paket pasang minang-math@1.2.0 # Install sebagai development dependency minang paket pasang minang-test --dev ``` ### Pencarian Paket ```bash # Cari paket minang paket cari ui # Cari dengan filter filosofi minang paket cari --philosophy gotong-royong # Cari paket terpopuler minang paket cari --sort popularity ``` ### Mengelola Paket ```bash # List paket terpasang minang paket daftar # Update paket minang paket perbarui minang-ui # Update semua paket minang paket perbarui # Uninstall paket minang paket lepas minang-ui ``` ### Publishing Paket ```bash # Validasi paket sebelum publish minang paket validate # Publish ke registry minang paket terbitkan # Publish dengan tag minang paket terbitkan --tag beta ``` ## ๐Ÿ“„ Konfigurasi Paket (paket.minang) ```json { "nama": "nagari-system", "versi": "1.0.0", "deskripsi": "Sistem manajemen nagari digital", "pengarang": "Tim Nagari Digital", "lisensi": "MIT", "filosofi": [ "gotong-royong", "musyawarah-mufakat", "alam-takambang-jadi-guru", "adat-basandi-syarak" ], "keywords": [ "nagari", "management", "digital", "village" ], "dependencies": { "minang-ui": "^1.0.0", "minang-database": "^2.1.0" }, "devDependencies": { "minang-test": "^1.0.0" }, "scripts": { "main": "src/main.minang", "test": "test/*.minang", "build": "build/", "start": "minang run src/main.minang" }, "files": [ "src/", "README.md", "LICENSE", "examples/" ], "engine": { "minangscript": ">=1.1.0" }, "repository": { "type": "git", "url": "https://github.com/minangscript/nagari-system" } } ``` ## ๐Ÿ” Registry & Pencarian ### Registry Hierarchy 1. **Local Registry** (`~/.minangscript/local-registry/`) - Paket yang dikembangkan lokal - Cache paket yang sering digunakan 2. **Community Registry** (`community.minangscript.org`) - Paket dari komunitas - Kurasi berdasarkan filosofi Minangkabau 3. **Official Registry** (`registry.minangscript.org`) - Paket resmi MinangScript - Quality assurance tinggi ### Search & Discovery ```bash # Pencarian semantik minang paket cari "user interface components" # Filter berdasarkan filosofi minang paket cari --philosophy gotong-royong # Filter berdasarkan kategori minang paket cari --category ui # Sortir hasil minang paket cari ui --sort downloads --order desc ``` ## ๐Ÿงช Validasi & Quality Assurance ### Validasi Otomatis MinangPaket melakukan validasi otomatis pada: 1. **Struktur Paket** - File wajib: `paket.minang`, `main.minang` - File rekomendasi: `README.md`, `LICENSE`, `CHANGELOG.md` - Struktur direktori yang proper 2. **Kode MinangScript** - Syntax validation - Cultural principles integration - Best practices compliance 3. **Filosofi Budaya** - Penggunaan cultural functions - Dokumentasi filosofi - Implementasi nilai-nilai Minangkabau ### Manual Validation ```bash # Validasi paket minang paket validate # Validasi dengan detail report minang paket validate --detailed # Validasi filosofi budaya minang paket validate --cultural ``` ## ๐Ÿ”ง Advanced Features ### Custom Scripts Dalam `paket.minang`, Anda bisa mendefinisikan custom scripts: ```json { "scripts": { "dev": "minang run src/dev.minang", "test": "minang run test/all-tests.minang", "build": "minang build src/main.minang build/app.js", "deploy": "minang run scripts/deploy.minang", "gotong-royong": "minang run scripts/collaboration.minang" } } ``` Jalankan dengan: ```bash minang paket run dev minang paket run test minang paket run gotong-royong ``` ### Lock File (paket.lock) Lock file memastikan reproduktible builds: ```json { "version": "1.0.0", "generated": "2025-06-23T10:00:00.000Z", "philosophy": "Musyawarah Mufakat dalam dependency management", "packages": { "minang-ui": { "version": "1.0.0", "resolved": "https://registry.minangscript.org/minang-ui/-/minang-ui-1.0.0.tgz", "integrity": "sha256-...", "dependencies": { "minang-core": "^1.1.0" } } } } ``` ### Environment Variables ```bash # Set registry URL export MINANG_REGISTRY=https://custom-registry.example.com # Set cache directory export MINANG_CACHE_DIR=/path/to/cache # Enable verbose logging export MINANG_VERBOSE=true # Set philosophy preference export MINANG_PHILOSOPHY=gotong-royong ``` ## ๐ŸŒ Community & Ecosystem ### Contributing to Packages 1. **Fork** paket yang ingin dikontribusi 2. **Clone** dan setup development environment 3. **Implement** fitur atau fix dengan filosofi Minangkabau 4. **Test** dengan `minang paket validate` 5. **Submit** pull request dengan dokumentasi filosofi ### Creating Quality Packages **Cultural Integration:** ```minang // Contoh penggunaan filosofi dalam kode karojo processData(data) { // Gotong royong dalam data processing gotongRoyong("validation", "transformation", "output") // Musyawarah untuk decision making ambiak strategy = musyawarah("processing-strategy", data.requirements) // Alam takambang jadi guru - adaptive processing alamTakambang("data flows like water, adapt accordingly") // Adat basandi syarak - ethical data handling adatBasandi("respect user privacy and data integrity") jadi processedData } ``` **Documentation Standards:** - README in Indonesian and English - Philosophy explanation - Cultural examples - Community guidelines ### Registry Governance Registry mengikuti prinsip **Musyawarah Mufakat**: 1. **Community Review**: Setiap paket direview komunitas 2. **Consensus Decision**: Keputusan publish berdasarkan konsensus 3. **Cultural Validation**: Validasi implementasi filosofi 4. **Quality Assurance**: QA berdasarkan standar komunitas ## ๐Ÿ› ๏ธ Troubleshooting ### Common Issues **Package not found:** ```bash # Clear cache minang paket cache clear # Update registry index minang paket registry update # Check registry status minang paket registry status ``` **Installation failures:** ```bash # Verbose mode minang paket pasang package-name --verbose # Force reinstall minang paket pasang package-name --force # Check dependencies minang paket check dependencies ``` **Validation errors:** ```bash # Detailed validation minang paket validate --detailed # Fix cultural issues minang paket cultural-audit # Generate template fixes minang paket fix-template ``` ### Debug Mode ```bash # Enable debug mode export MINANG_DEBUG=true # Run command with debugging minang paket pasang minang-ui --debug # Check debug logs minang paket logs ``` ## ๐Ÿ“Š Statistics & Analytics ```bash # Package statistics minang paket stats # Registry health minang paket registry health # Community metrics minang paket community stats # Cultural compliance report minang paket cultural report ``` ## ๐ŸŽฏ Roadmap ### v1.1 (Q3 2025) - [ ] Official registry launch - [ ] Advanced caching strategies - [ ] Cultural AI validation - [ ] Package signing & verification ### v1.2 (Q4 2025) - [ ] Distributed registry network - [ ] Smart dependency resolution - [ ] Community governance platform - [ ] Cultural metrics dashboard ### v2.0 (2026) - [ ] Blockchain-based package verification - [ ] AI-powered package recommendations - [ ] Global Minangkabau developer network - [ ] Cultural preservation initiatives ## ๐Ÿค Kontribusi MinangPaket dikembangkan dengan semangat **Gotong Royong**. Kontribusi sangat diterima: 1. **Code Contributions**: Pull requests dengan implementasi filosofi 2. **Documentation**: Perbaikan dan penambahan dokumentasi 3. **Package Creation**: Buat paket berkualitas untuk komunitas 4. **Testing**: Bantu testing dan QA 5. **Cultural Consulting**: Saran implementasi filosofi Minangkabau ### Panduan Kontribusi - Follow coding standards MinangScript - Implementasikan minimal 2 prinsip filosofi Minangkabau - Tulis tests yang comprehensive - Dokumentasi dalam bahasa Indonesia dan Inggris - Respect nilai-nilai komunitas ## ๐Ÿ“ž Dukungan - **GitHub Issues**: https://github.com/DityaPerdana/minangScript/issues - **Community Forum**: https://community.minangscript.org - **Discord**: https://discord.gg/minangscript - **Email**: support@minangscript.org --- ## ๐Ÿ”๏ธ Filosofi Akhir *"Alam Takambang Jadi Guru"* - Seperti alam yang mengajarkan keseimbangan, MinangPaket menciptakan ekosistem package management yang seimbang antara teknologi modern dan nilai-nilai tradisional Minangkabau. Dengan **Gotong Royong**, kita membangun bersama. Dengan **Musyawarah Mufakat**, kita memutuskan bersama. Dengan **Alam Takambang Jadi Guru**, kita belajar bersama. Dengan **Adat Basandi Syarak**, kita bertindak dengan etis. **MinangPaket - Package Manager dengan Hati Minangkabau** ๐Ÿ”๏ธ