Checking installation status...
ā Installation Already Complete
AppitNow has already been installed on this server.
If you need to reinstall, please delete the .install-complete file and refresh this page.
Choose Installation Target
Select where you want to install AppitNow. The installer will automatically configure database settings for your chosen environment.
macOS Localhost
Install locally using MAMP Pro SQL on macOS. Database runs on port 8889 with default credentials.
MAMP ProCloudPanel
Install on a CloudPanel server. Create your database in CloudPanel first, then enter credentials.
CloudPanelStep 1: Database Configuration
Connect to your MySQL database. The form is pre-filled for your selected installation target.
- MAMP Pro: Default is host
127.0.0.1, port8889, userroot, passwordroot - CloudPanel: Create the database in CloudPanel first, then enter those credentials here
- If connection fails, make sure MySQL is running (green light in MAMP Pro, or
systemctl status mysqlon Linux)
Step 2: Application Settings
Configure basic application settings.
- Localhost testing: Use
http://localhost:3000 - Production: Use your real domain like
https://yourdomain.com - If this doesn't match, checkout payment redirects will go to the wrong host after payment
- The JWT Secret is auto-generated and secure ā no need to change it unless you want to
Step 3: Payment Gateway Configuration
Configure payment gateways. Paddle is the primary gateway, others are optional fallbacks.
š How to get Stripe keys:
- Go to: https://dashboard.stripe.com/apikeys
- Copy your Secret key (starts with sk_live_ or sk_test_)
- Webhook secret will be configured after deployment
- ā
Real test key (
sk_test_...): Free from Stripe Dashboard. Checkout works with test card4242 4242 4242 4242 - ā
Real live key (
sk_live_...): For production with real payments - ā Placeholder key: Lets you finish the installer, but checkout will show "Stripe is not configured" until you replace it in
.env - š” No Stripe at all? Skip this step. Paddle is the primary gateway, and you can test it in Sandbox mode.
Step 4: Paddle Configuration (Primary Gateway)
Configure Paddle - the primary payment gateway for cards, PayPal, and international payments.
š How to get Paddle keys:
- Go to: Paddle Dashboard
- Create an API Key under "API Keys"
- Create a Client Token under "Client-side Tokens"
- ā
For localhost: Use sandbox keys (
pdl_sdbx_...) from Paddle Sandbox Dashboard - ā Don't use live keys (
pdl_live_...) on localhost ā they will fail with "Paddle API Error" - ā
After sandbox payment: Paddle must redirect back to
/checkout/success. That success route verifies the transaction and creates the AppitNow payment record and license. - š” No Paddle key at all? Leave empty. However, you must configure at least one gateway (Paddle, Stripe, etc.) for live checkout to function.
- Check "Use Sandbox Mode" if you're using sandbox keys
Step 5: SSLCommerz Configuration
Configure SSLCommerz for Bangladesh payments (optional).
š How to get SSLCommerz credentials:
- Go to: https://sslcommerz.com/
- Sign up for a merchant account
- Get Store ID and Store Password from dashboard
- You need a merchant account at sslcommerz.com
- Use sandbox credentials for testing ā check "Use Sandbox Mode"
- If you're not targeting Bangladesh customers, you can skip this step entirely
Step 6: Email Configuration
Configure Resend for sending license keys to customers. You can leave this blank and add it later.
š Recommended: Resend
- Sign up at: https://resend.com
- Verify your sending domain
- Create an API key
- Email is used to send license keys to customers after purchase
- Skip for now? Leave both fields blank or use placeholder. You can add real keys to
.envlater - If you provide an API key, you must also provide a From email address (and vice versa)
- The From email must be from a domain you've verified in Resend
Step 7: Create Admin User
Create the initial superadmin account.
- This creates the SUPERADMIN account ā full control over the entire system
- Use a strong password (8+ characters, mix of letters, numbers, symbols)
- Remember these credentials ā you'll need them to log in after installation
- You can create additional admin users later from the admin panel
Step 8: Review & Install
Review your configuration and start the installation.
Preparing installation...
- Review the summary above ā you can click Back to change any setting
- The installer will create
.envfiles, run database migrations, and create your admin account - If installation fails, check the error message ā you can fix the issue and retry without losing progress
- Any placeholder/dummy keys can be replaced in
.envafter installation
š Installation Complete!
AppitNow has been successfully installed and configured.
š Next Steps:
- Build the application:
npm run build - Start the server:
npm start - Configure webhook secrets after deployment
- Set up SSL/HTTPS before going live
- Review security settings in DEPLOYMENT_GUIDE.md
- Localhost? Make sure
NEXT_PUBLIC_APP_URL=http://localhost:3000in your.env - Test checkout: Use Paddle Sandbox keys to test checkout safely before going live. A successful payment should leave the Paddle overlay and reach
/checkout/success; otherwise the AppitNow transaction/license will not be recorded. - Replace placeholders: Update any dummy keys in
.envwith real ones before going live - Stripe: Needs a real
sk_test_key for checkout to work (free from Stripe Dashboard) - Paddle: Use sandbox keys (
pdl_sdbx_) for testing, save live keys for production