File size: 2,606 Bytes
de07704
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/usr/bin/env node
// ==========================================
// MEEZAN - ู…ูŠุฒุงู† Setup Script
// ==========================================

const fs = require('fs');
const path = require('path');
const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

function ask(question) {
  return new Promise(resolve => rl.question(question, resolve));
}

async function setup() {
  console.log(`
โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘     ู…ูŠุฒุงู† MEEZAN - ุฅุนุฏุงุฏ ุงู„ู†ุธุงู…       โ•‘
โ•‘        Setup Wizard                   โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
`);

  console.log('Welcome! Let\'s configure your Meezan assistant.\n');

  const apiKey = await ask('1. Anthropic API Key (from console.anthropic.com): ');
  const telegramToken = await ask('2. Telegram Bot Token (from @BotFather, or press Enter to skip): ');
  const city = await ask('3. Your city (default: Kuwait City): ') || 'Kuwait City';
  const country = await ask('4. Your country (default: Kuwait): ') || 'Kuwait';
  const language = await ask('5. Default language ar/en/ur/ms (default: ar): ') || 'ar';
  const madhab = await ask('6. Madhab hanafi/maliki/shafii/hanbali (default: shafii): ') || 'shafii';

  const envContent = `# MEEZAN - ู…ูŠุฒุงู† Configuration
# Generated by setup wizard on ${new Date().toISOString()}

ANTHROPIC_API_KEY=${apiKey}
TELEGRAM_BOT_TOKEN=${telegramToken || 'your_telegram_bot_token_here'}

PORT=3000
NODE_ENV=development

DEFAULT_CITY=${city}
DEFAULT_COUNTRY=${country}
DEFAULT_LATITUDE=29.3759
DEFAULT_LONGITUDE=47.9774
DEFAULT_LANGUAGE=${language}
DEFAULT_MADHAB=${madhab}

DB_PATH=./data/memory.json
ASSISTANT_NAME=ู…ูŠุฒุงู†
ASSISTANT_NAME_EN=Meezan
LOG_LEVEL=info
`;

  fs.writeFileSync(path.join(__dirname, '..', '.env'), envContent);
  
  // Create data directory
  const dataDir = path.join(__dirname, '..', 'data');
  if (!fs.existsSync(dataDir)) {
    fs.mkdirSync(dataDir, { recursive: true });
  }

  console.log(`
โœ… Configuration saved to .env

Next steps:
  1. Run: npm install
  2. Run: npm run dev
  3. Open: http://localhost:3000
  
${telegramToken ? '๐Ÿค– Telegram bot configured! Your bot will be live after starting.' : '๐Ÿ“ฑ To add Telegram: Get a token from @BotFather and add to .env'}

ุฌุฒุงูƒ ุงู„ู„ู‡ ุฎูŠุฑุงู‹! ุจุงุฑูƒ ุงู„ู„ู‡ ููŠ ู…ุดุฑูˆุนูƒ ๐Ÿคฒ
`);

  rl.close();
}

setup().catch(console.error);