Skip to content

docs: add raw deployment guide (Render + Vercel) - #48

Merged
yash-pouranik merged 3 commits into
mainfrom
copilot/create-deployment-guide
Mar 17, 2026
Merged

docs: add raw deployment guide (Render + Vercel)#48
yash-pouranik merged 3 commits into
mainfrom
copilot/create-deployment-guide

Conversation

Copilot AI commented Mar 17, 2026

Copy link
Copy Markdown
Contributor

No self-hosting documentation existed for deploying urBackend outside of Docker. This adds a complete, platform-specific deployment guide targeting free-tier Render (backend) and Vercel (frontend).

DEPLOYMENT.md (new)

  • Prerequisites — MongoDB Atlas M0 free cluster + Redis Cloud (redis.io) setup with connection string retrieval
  • Render backend deploy — root dir backend, npm install / npm start, full env-var reference derived from .env.example including secrets generation tip:
    node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
  • MongoDB Atlas network access — instructions to add Render's specific static outbound IPs (found via service Info tab) instead of allowing all traffic
  • Redis Cloud setup — free database creation on redis.io with TLS rediss:// connection URL
  • Vercel frontend deploy — root dir frontend, Vite auto-detection, VITE_API_URL pointing to the Render service URL
  • CORS wiring — updating FRONTEND_URL on Render after the Vercel URL is known to unblock CORS
  • Troubleshooting table — maps common failure symptoms (network errors, 500s, CORS, email/upload failures) to root causes and fixes

README.md

  • Added 🏠 Self-Hosting section linking to DEPLOYMENT.md
Original prompt

This section details on the original issue you should resolve

<issue_title>Create a DEPLOYMENT.md Guide (Render/Railway + Vercel)</issue_title>
<issue_description># 🌟 [GFI] Create a DEPLOYMENT.md Guide (Render/Railway + Vercel)

Description

urBackend is an easy-to-use, Open-Source BaaS. Because it is open-source, many developers will want to self-host their own instances instead of using our managed cloud.
Right now, we don't have a clear, step-by-step guide explaining how a user can take our source code and deploy the Backend (Node.js + MongoDB + Redis) and Frontend (Vite/React) to popular free-tier platforms.

🎯 What needs to be done:

Create a new file named DEPLOYMENT.md in the root of the repository (or under the docs/ folder). This markdown file should walk a user through deploying urBackend from scratch.

The guide should cover two main sections:

  1. Deploying the Backend:
    • Explaining how to deploy the Node.js API to platforms like Render or Railway.app.
    • Mentioning how to set up the necessary environment variables (.env keys).
    • Explaining how to attach a free MongoDB Atlas cluster and a Redis instance (like Upstash).
  2. Deploying the Frontend:
    • Explaining how to deploy the React/Vite dashboard to Vercel or Render.
    • Explicitly stating how to link the frontend to the deployed backend URL (e.g., updating VITE_API_BASE_URL).

🛠️ Requirements & Suggestions:

  • Ensure the formatting is clean, using Markdown headers (##), bold text for emphasis, and code blocks for .env examples.
  • Providing screenshots of the Render/Vercel dashboards is a massive bonus!

📍 Where to look:

  • Review our current README.md and .env.example files to understand what variables a user needs to configure during deployment.

💡 How to Contribute:

  1. Comment on this issue to get it assigned to you.
  2. Fork the repository and create a new branch (e.g., docs/deployment-guide).
  3. Write the DEPLOYMENT.md file. You can test your markdown formatting using a local markdown viewer or GitHub preview.
  4. Submit a Pull Request (PR) and mention this issue (e.g., Fixes #ISSUE_NUMBER).
  5. (Optional) Link this new file in the main README.md under a "Self-Hosting" section!
    If you need any help, feel free to ask in this thread or join our Discord! 🚀</issue_description>

<agent_instructions>document raw deployment for thsi project bcoz currently it is not reliable with docker
raw is - render(backend) and vercel(frontend)</agent_instructions>

Comments on the Issue (you are @copilot in this section)


💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.

@vercel

vercel Bot commented Mar 17, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
ur-backend Ready Ready Preview, Comment Mar 17, 2026 8:05pm

Co-authored-by: yash-pouranik <172860064+yash-pouranik@users.noreply.github.com>
Copilot AI changed the title [WIP] Add DEPLOYMENT.md guide for Render and Vercel docs: add raw deployment guide (Render + Vercel) Mar 17, 2026
Comment thread DEPLOYMENT.md Outdated

- A [GitHub](https://github.com) account with a fork of this repository.
- A [MongoDB Atlas](https://www.mongodb.com/atlas) account (free).
- An [Upstash](https://upstash.com) account (free).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i suggest using redis.io

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in af8edf7 — replaced Upstash with Redis Cloud (redis.io) throughout the prerequisites section, table, and further reading.

Comment thread DEPLOYMENT.md Outdated
- Username: `urbackend-user`
- Password: generate a strong password and **copy it**.
- Role: **"Read and write to any database"**.
6. Under **Security → Network Access**, click **"Add IP Address"** → select **"Allow Access from Anywhere"** (`0.0.0.0/0`).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
6. Under **Security → Network Access**, click **"Add IP Address"** → select **"Allow Access from Anywhere"** (`0.0.0.0/0`).
6. Under **Security → Network Access**, click **"Add IP Address"** → select **"add the IP(s) of your deployed instance in render"** (`0.0.0.0/0`).

render exposes 2-6 of its unique ips of the proj you deploy, so dont say allow from anywhere ok? @copilot

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated in af8edf7. The step now reads:

Under Security → Network Access, click "Add IP Address" and add the outbound IP addresses of your Render service.
To find these IPs: open your Render service → Info tab → Outbound IPs. Render exposes a set of static outbound IPs per service; add each one individually in Atlas.

Comment thread DEPLOYMENT.md Outdated
- Role: **"Read and write to any database"**.
6. Under **Security → Network Access**, click **"Add IP Address"** → select **"Allow Access from Anywhere"** (`0.0.0.0/0`).

> This is required because Render uses dynamic IP addresses.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should be removed then?? @copilot

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, removed in af8edf7. Since we're now directing users to add Render's specific outbound IPs, the "dynamic IPs" note is no longer accurate and has been deleted.

Comment thread DEPLOYMENT.md Outdated
Comment on lines +70 to +77
## 3. Set up Upstash Redis

1. Go to [console.upstash.com](https://console.upstash.com) and sign in.
2. Click **"Create Database"**.
3. Enter a name (e.g. `urbackend-redis`), choose the region closest to your Render region, and leave the type as **Regional**.
4. Click **"Create"**.
5. On the database details page, scroll to **"REST API"** or **"Connect"** and copy the **Redis URL**. It looks like:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

replace with redis.io setup

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replaced in af8edf7. Section 3 now covers Redis Cloud at redis.io/try-free, including steps to create a free database and construct the rediss:// TLS connection URL.

Comment thread DEPLOYMENT.md Outdated
## 📚 Further reading

- [MongoDB Atlas documentation](https://www.mongodb.com/docs/atlas/)
- [Upstash Redis documentation](https://upstash.com/docs/redis/overall/getstarted)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update to redis.io

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated in af8edf7 — further reading now links to the Redis Cloud documentation at redis.io/docs/latest/operate/rc/.

Co-authored-by: yash-pouranik <172860064+yash-pouranik@users.noreply.github.com>

@yash-pouranik yash-pouranik left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @copilot

@yash-pouranik
yash-pouranik marked this pull request as ready for review March 17, 2026 20:11
Copilot AI review requested due to automatic review settings March 17, 2026 20:11
@yash-pouranik
yash-pouranik merged commit 28e82da into main Mar 17, 2026
13 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds self-hosting documentation so developers can deploy urBackend without Docker, targeting a free-tier setup with Render (backend) and Vercel (frontend).

Changes:

  • Added a new DEPLOYMENT.md with end-to-end deployment steps (MongoDB Atlas + Redis Cloud + Render + Vercel) and troubleshooting.
  • Linked the new deployment guide from README.md under a “Self-Hosting” section.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
README.md Adds a Self-Hosting section linking to the deployment guide.
DEPLOYMENT.md Introduces a platform-specific deployment guide for Render (API) + Vercel (dashboard), including env vars and troubleshooting.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread DEPLOYMENT.md
Comment thread DEPLOYMENT.md
Comment thread DEPLOYMENT.md
Comment thread DEPLOYMENT.md
@yash-pouranik
yash-pouranik deleted the copilot/create-deployment-guide branch March 17, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a DEPLOYMENT.md Guide (Render/Railway + Vercel)

3 participants