id-auto-formalizer
Version:
Konversi teks Bahasa Indonesia dari kasual ke formal untuk surat, email, dan laporan resmi
201 lines (155 loc) ⢠4.2 kB
Markdown
# š Getting Started dengan Bahasa Indonesia Auto Formalizer
Selamat datang! Panduan ini akan membantu Anda memulai dengan cepat.
## š Prerequisites
- Node.js >= 14.0.0
- npm >= 6.0.0
- Git (opsional, untuk version control)
## š ļø Instalasi
### 1. Clone Repository
```bash
git clone https://github.com/codenamekii/id-auto-formalizer.git
cd id-auto-formalizer
```
### 2. Run Setup Script
```bash
chmod +x setup.sh
./setup.sh
```
Atau manual:
```bash
npm install
```
### 3. Verifikasi Instalasi
```bash
npm test
node src/cli.js --help
```
## šÆ Quick Start
### CLI Mode
```bash
node src/cli.js text "gue mau nanya dong"
node src/cli.js interactive
node src/cli.js file input.txt -o output.txt
node src/cli.js batch -d ./documents
```
### Programmatic Usage
```javascript
const { formalize } = require('./src/index');
console.log(formalize("thanks ya udh bantuin"));
const IndonesianFormalizer = require('./src/index');
const formalizer = new IndonesianFormalizer();
const result = formalizer.formalize("gue capek", {
autoCapitalize: true,
autoPunctuation: true
});
const analysis = formalizer.analyzeFormalityLevel("lo tau gak?");
const texts = ["gue mau", "thanks bgt", "sorry ya"];
const results = formalizer.formalizeBatch(texts);
```
## š Web Demo
```bash
python -m http.server 8000 --directory demo
# http://localhost:8000
docker-compose up formalizer-demo
# http://localhost:8080
```
## š³ Docker Usage
```bash
docker build -t id-auto-formalizer .
docker run -it id-auto-formalizer interactive
docker run id-auto-formalizer text "gue mau nanya"
docker run -v $(pwd)/data:/app/data id-auto-formalizer file /app/data/input.txt
docker-compose up
docker-compose run formalizer-cli interactive
```
## š§ Development
### Struktur Project
```
id-auto-formalizer/
āāā src/
āāā test/
āāā demo/
āāā api/
āāā examples/
āāā data/
āāā package.json
āāā README.md
```
### Tes & Lint
```bash
npm test
npm test -- --watch
npm test -- --coverage
npm run lint
npm run lint -- --fix
npm run format
```
## š Contoh Penggunaan
### Email Formalization
```javascript
const emailDraft = `
hai pak,
sorry gue telat kirim laporannya.
file nya udh gue attach di email ini.
thanks ya.
`;
const formalEmail = formalize(emailDraft);
```
### Chat Bot Integration
```javascript
client.on('message', message => {
if (message.channel.name === 'formal-only') {
const analysis = formalizer.analyzeFormalityLevel(message.content);
if (analysis.score < 70) {
const formal = formalizer.formalize(message.content);
message.reply(\`Gunakan bahasa formal: "\${formal}"\`);
}
}
});
```
### Custom Mappings
```javascript
formalizer.addMappings({
'ngoding': 'memprogram',
'deploy': 'meluncurkan aplikasi',
'bug': 'kesalahan program',
'commit': 'menyimpan perubahan'
});
```
## š Troubleshooting
```bash
# Module not found
rm -rf node_modules package-lock.json
npm install
# CLI permission
chmod +x src/cli.js
# Test gagal
npm test -- -u
```
## š¤ Kontribusi
Lihat [CONTRIBUTING.md](CONTRIBUTING.md) untuk panduan kontribusi.
```bash
git checkout -b feature/add-new-mapping
# edit src/formalizer.js dan test
git commit -m "feat: add mapping for technical terms"
```
## š Resources
- [API Documentation](docs/API.md)
- [Examples](examples/)
- [Contributing Guide](CONTRIBUTING.md)
- [License](LICENSE)
## š Links
- NPM: https://www.npmjs.com/package/id-auto-formalizer
- GitHub: https://github.com/codenamekii/id-auto-formalizer
- Issues: https://github.com/codenamekii/id-auto-formalizer/issues
## ā FAQ
**Q: Bagaimana cara menambah kata baru?**
A: Edit `src/formalizer.js` dan tambahkan di `informalToFormal`.
**Q: Bisa untuk bahasa daerah?**
A: Saat ini fokus Bahasa Indonesia. Dialek disambut.
**Q: Ada API?**
A: Belum ada publik. Bisa host `api/server.js`.
**Q: Integrasi VS Code?**
A: Dalam pengembangan. Gunakan CLI dulu.
---
Happy formalizing! š®š©āØ