Welcome to the NexWrite - Medium-style blogging platform VPS Installation Guide. This step-by-step tutorial is designed to help you install and configure the script on a VPS or dedicated server.

This guide is for users with VPS or dedicated servers. If you are using a shared host or local environment, check the relevant installation guides.

Prerequisites

Ensure your server meets the server requirements. You will need:

  • A clean VPS or dedicated server (Ubuntu 20.04+ recommended)
  • Root or sudo access
  • A domain name pointed to your server’s IP
  • Node.js (v18+), MongoDB (or MongoDB Atlas), and Nginx (recommended)

Step 1: Prepare Your Server

  1. Connect via SSH:
ssh root@your-server-ip
  1. Install Node.js:
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
sudo apt install -y nodejs
  1. Install MongoDB (optional if using Atlas):
sudo apt install -y mongodb
  1. Install PM2 process manager:
npm install -g pm2
  1. Install Nginx (optional, for HTTPS and proxying):
sudo apt install nginx

Step 2: Upload, Extract & Install Dependencies

  1. Upload your script files via SFTP or SCP:
scp nexwrite-server-files.zip root@your-server-ip:/var/www/medium-clone
  1. Extract the archive:
cd /var/www/medium-clone
unzip nexwrite-server-files.zip
  1. Install backend dependencies:
npm install
  1. Ensure the public files are accessible via domain:
sudo nano /etc/nginx/sites-available/yourdomain.com

Point root to:

root /var/www/medium-clone/public;

Restart Nginx after editing:

sudo systemctl restart nginx

Step 3: Installation via Web Wizard

Once files are uploaded and dependencies are installed, open your browser:

https://yourdomain.com/install
1

License Activation

  • Enter your license key.
  • If you don’t know it, go to https://pay.jooj.us/ and log in with your purchase email.
2

Database Configuration

  • Enter your MongoDB connection URI. You can use either:

A. MongoDB Atlas (cloud database)

Example:

mongodb+srv://<username>:<password>@<cluster>.mongodb.net/<database>?retryWrites=true&w=majority

(Replace <username>, <password>, <cluster>, and <database> with your actual values.)

If you are using MongoDB Atlas, you can find your connection string in your Atlas dashboard under Database > Connect > Drivers.

B. Self-hosted MongoDB on VPS (local MongoDB)

Example:

mongodb://<username>:<password>@<your-server-ip>:27017/<database>

(Replace <your-server-ip> with your VPS IP address and <database> with your database name.)

You will also be asked to enter a JWT secret key. You can either paste your own or click Generate to auto-generate one securely.

3

Create Admin

  • Set your full name, email, username, and password for the administrator account.
  • Once saved, the server will restart automatically.

Step 4: Running the Script

  1. Ensure you’re in the project directory:
cd /var/www/medium-clone
  1. Start the server using PM2:
pm2 start server.js --name="medium-clone"
  1. Enable auto-start on reboot:
pm2 startup
pm2 save

Your project is now running in the background.

We suggest the following VPS providers for stable hosting:

  • DigitalOcean — Easy setup and $200 in free credits
  • Vultr — Great for small deployments
  • Hetzner — Budget-friendly, powerful servers
  • Contabo — Affordable and large storage
  • AWS EC2 — Enterprise-grade flexibility

For best results, choose a VPS with at least 2GB RAM and 1 vCPU.

After Installation

  • Your admin dashboard will be available at:
https://yourdomain.com
  • You can now log in using the admin credentials created during the installation.

Make sure your SSL certificate is active. You can use Let’s Encrypt or purchase one from your domain provider.


If you encounter issues, refer to the Troubleshooting Guide or contact support@jooj.us.

Welcome to the NexWrite - Medium-style blogging platform VPS Installation Guide. This step-by-step tutorial is designed to help you install and configure the script on a VPS or dedicated server.

This guide is for users with VPS or dedicated servers. If you are using a shared host or local environment, check the relevant installation guides.

Prerequisites

Ensure your server meets the server requirements. You will need:

  • A clean VPS or dedicated server (Ubuntu 20.04+ recommended)
  • Root or sudo access
  • A domain name pointed to your server’s IP
  • Node.js (v18+), MongoDB (or MongoDB Atlas), and Nginx (recommended)

Step 1: Prepare Your Server

  1. Connect via SSH:
ssh root@your-server-ip
  1. Install Node.js:
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
sudo apt install -y nodejs
  1. Install MongoDB (optional if using Atlas):
sudo apt install -y mongodb
  1. Install PM2 process manager:
npm install -g pm2
  1. Install Nginx (optional, for HTTPS and proxying):
sudo apt install nginx

Step 2: Upload, Extract & Install Dependencies

  1. Upload your script files via SFTP or SCP:
scp nexwrite-server-files.zip root@your-server-ip:/var/www/medium-clone
  1. Extract the archive:
cd /var/www/medium-clone
unzip nexwrite-server-files.zip
  1. Install backend dependencies:
npm install
  1. Ensure the public files are accessible via domain:
sudo nano /etc/nginx/sites-available/yourdomain.com

Point root to:

root /var/www/medium-clone/public;

Restart Nginx after editing:

sudo systemctl restart nginx

Step 3: Installation via Web Wizard

Once files are uploaded and dependencies are installed, open your browser:

https://yourdomain.com/install
1

License Activation

  • Enter your license key.
  • If you don’t know it, go to https://pay.jooj.us/ and log in with your purchase email.
2

Database Configuration

  • Enter your MongoDB connection URI. You can use either:

A. MongoDB Atlas (cloud database)

Example:

mongodb+srv://<username>:<password>@<cluster>.mongodb.net/<database>?retryWrites=true&w=majority

(Replace <username>, <password>, <cluster>, and <database> with your actual values.)

If you are using MongoDB Atlas, you can find your connection string in your Atlas dashboard under Database > Connect > Drivers.

B. Self-hosted MongoDB on VPS (local MongoDB)

Example:

mongodb://<username>:<password>@<your-server-ip>:27017/<database>

(Replace <your-server-ip> with your VPS IP address and <database> with your database name.)

You will also be asked to enter a JWT secret key. You can either paste your own or click Generate to auto-generate one securely.

3

Create Admin

  • Set your full name, email, username, and password for the administrator account.
  • Once saved, the server will restart automatically.

Step 4: Running the Script

  1. Ensure you’re in the project directory:
cd /var/www/medium-clone
  1. Start the server using PM2:
pm2 start server.js --name="medium-clone"
  1. Enable auto-start on reboot:
pm2 startup
pm2 save

Your project is now running in the background.

We suggest the following VPS providers for stable hosting:

  • DigitalOcean — Easy setup and $200 in free credits
  • Vultr — Great for small deployments
  • Hetzner — Budget-friendly, powerful servers
  • Contabo — Affordable and large storage
  • AWS EC2 — Enterprise-grade flexibility

For best results, choose a VPS with at least 2GB RAM and 1 vCPU.

After Installation

  • Your admin dashboard will be available at:
https://yourdomain.com
  • You can now log in using the admin credentials created during the installation.

Make sure your SSL certificate is active. You can use Let’s Encrypt or purchase one from your domain provider.


If you encounter issues, refer to the Troubleshooting Guide or contact support@jooj.us.