Something went wrong. Try again.
Tour the Atmosphere. Switch clients, share universal links, browse any PDS. forked from atpota.to/aturi
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102#!/usr/bin/env node
/** * Setup script for forking aturi.to * * This interactive script helps you configure your fork by: * - Creating a .env.local file with your settings * - Updating key configuration values * - Providing next steps for deployment * * Usage: node scripts/setup-fork.js */
const fs = require('fs');const path = require('path');const readline = require('readline');
const rl = readline.createInterface({ input: process.stdin, output: process.stdout,});
function question(prompt) { return new Promise((resolve) => { rl.question(prompt, resolve); });}
async function main() { console.log('\n🌟 Welcome to aturi.to fork setup!\n'); console.log('This script will help you configure your custom instance.\n');
// Get configuration from user const domain = await question('What is your custom domain? (e.g., myshare.app): '); const siteName = await question(`Site name [${domain}]: `) || domain; const description = await question('Site description [Fast travel across the Atmosphere]: ') || 'Fast travel across the Atmosphere'; const authorName = await question('Your name: '); const authorUrl = await question('Your website/profile URL (optional): '); const repoUrl = await question('Your repository URL: ');
console.log('\n📝 Creating .env.local file...\n');
// Create .env.local content const envContent = `# aturi.to Fork Configuration# Generated by setup-fork.js
# Your custom domainNEXT_PUBLIC_DOMAIN=${domain}
# Site brandingNEXT_PUBLIC_SITE_NAME=${siteName}NEXT_PUBLIC_SITE_DESCRIPTION=${description}
# Author/Creator infoNEXT_PUBLIC_AUTHOR_NAME=${authorName}${authorUrl ? `NEXT_PUBLIC_AUTHOR_URL=${authorUrl}` : '# NEXT_PUBLIC_AUTHOR_URL='}
# Source code repository URLNEXT_PUBLIC_REPO_URL=${repoUrl}
# Analytics (optional)# NEXT_PUBLIC_ANALYTICS_ENABLED=true
# Feature flagsNEXT_PUBLIC_SHOW_INTEGRATION_PROMO=true`;
// Write .env.local const envPath = path.join(process.cwd(), '.env.local'); fs.writeFileSync(envPath, envContent);
console.log('✅ Created .env.local\n');
// Update config.ts with defaults console.log('💡 Your configuration is ready!\n'); console.log('Next steps:\n'); console.log('1. Review src/lib/config.ts if you need more customization'); console.log('2. Customize waypoints in src/utils/waypoints.tsx'); console.log('3. Update branding (logo, colors) in src/app/globals.css'); console.log('4. Test locally: npm run dev'); console.log('5. Deploy to Vercel and configure your domain\n');
console.log('📚 See FORKING.md for detailed instructions.\n'); console.log('⚖️ Remember: Keep your fork open source under GPL v3!\n'); console.log('🎉 Setup complete! Happy forking!\n');
rl.close();}
main().catch((error) => { console.error('Error:', error); process.exit(1);});