Skip to content

Revise README for deployment and development clarity#160

Merged
robinroy03 merged 1 commit intomainfrom
robinroy03-patch-1
Jan 18, 2026
Merged

Revise README for deployment and development clarity#160
robinroy03 merged 1 commit intomainfrom
robinroy03-patch-1

Conversation

@robinroy03
Copy link
Copy Markdown
Member

Summary

Changes

  • What changed at a high level?
  • Any notable design/architecture decisions?

Testing

Screenshots / Recordings (if UI)

Related Issues

Closes #
Refs #

Breaking Changes

Deployment Notes

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @robinroy03, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request aims to enhance the clarity and conciseness of the project's README.md file. It reorganizes the documentation to provide distinct and simplified instructions for both project deployment and local development, making it easier for new contributors and users to get started. The changes also remove verbose configuration details and introduce a forward-looking "TODO" section.

Highlights

  • README Structure Refinement: The README.md has been significantly restructured to improve readability and separate deployment instructions from local development setup.
  • Simplified Deployment Instructions: The "Deployment" section now provides a concise git clone and docker compose up command for quick setup.
  • Clear Local Development Guide: A new "Development" section outlines the steps for local setup using pnpm, tsx, and uv run, including a note on the isProduction flag.
  • Removed Redundant Sections: Detailed "Production" and "Environment Configuration" sections, including environment variable explanations, have been removed to streamline the document.
  • Added Project Roadmap: A new "TODO" section has been introduced, outlining future plans for Remotion API integration and providing a Discord server invite.
  • License Clarification: The "License" section has been simplified to explicitly state the MIT License, while still acknowledging the Remotion license.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@robinroy03 robinroy03 merged commit ca0af08 into main Jan 18, 2026
5 of 7 checks passed
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request attempts to simplify the README for deployment and development. While the goal of simplification is good, these changes remove a significant amount of critical information, making it very difficult for new users to set up and run the project. Specifically, the entire section on environment variables has been deleted, leaving users with no guidance on how to configure the database, authentication, or AI features. Additionally, the new instructions recommend manual code changes for development, which is an anti-pattern. There is also a new and serious inconsistency in the project's licensing information. I've left detailed comments on these issues.

Comment thread README.md
Comment on lines +59 to 75
## 🐋Deployment

<strong> 🐳 <ins>Docker</ins> <code>Recommended</code> </strong>

**Quick Start:**

```bash
docker compose -f docker-compose.yml \
-f docker-compose.dev.yml up -d
```

**Ports:**

<samp>

- Frontend: `5173`
- Backend : `8000`
- FastAPI : `3000`

</samp>
<br>

<strong> 🛠️ <ins>Local Development</ins></strong>

<samp>For local development without Docker:</samp>

```bash
# Install dependencies
pnpm install

# Start services
pnpm run dev # Frontend (port 5173)
pnpm dlx tsx app/videorender/videorender.ts # Backend (port 8000)
uv run backend/main.py # FastAPI (port 3000)

# Note: You'll need GEMINI_API_KEY for AI features
```

`Requirements`

<samp>

- Node.js 20+
- Python 3.9+
- PostgreSQL
- pnpm

</samp>
</details>

## 🚀 Production

**Quick Start:**

```bash
docker compose up -d
git clone https://github.com/robinroy03/videoeditor.git
cd videoeditor
docker compose up
```

**With Custom Domain:**
## 🧑‍💻Development

```bash
PROD_DOMAIN=yourdomain.com docker compose up -d
```

or alternatively edit `docker-compose.yml`

**Ports:**

- HTTP: `80`
- HTTPS: `443`

## ⚙️ Environment Configuration

Create a `.env` file for custom settings:

```env
# Domain Configuration
PROD_DOMAIN=yourdomain.com

# Database
DATABASE_URL=postgresql://user:pass@localhost:5432/videoeditor

# Authentication (Google OAuth)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

# AI Features (Optional -> /backend)
GEMINI_API_KEY=your_gemini_api_key

# Supabase (Optional)
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_key
pnpm i
pnpm run dev (frontend)
pnpm dlx tsx app/videorender/videorender.ts (backend)
uv run backend/main.py
flip `isProduction` to `false` in `/app/utils/api.ts`
```
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.

critical

These new sections for deployment and development are missing the most critical piece of information for setting up the project: environment variables. The previous version had a ⚙️ Environment Configuration section that explained necessary variables like DATABASE_URL, GOOGLE_CLIENT_ID, GEMINI_API_KEY, etc. Without this information, it's impossible for a user to configure and run the application.

Furthermore, the new development instruction flip 'isProduction' to 'false' in /app/utils/api.ts (line 74) is a poor practice. Manually editing source code for different environments is error-prone and should be avoided. This should be controlled by an environment variable like NODE_ENV, which was the standard approach before.

Please restore the detailed documentation for all required environment variables.

Comment thread README.md
## 📜License

<samp> This project is licensed under a dual-license. Refer to [LICENSE](LICENSE.md) for details. The [Remotion license](https://github.com/remotion-dev/remotion/blob/main/LICENSE.md) also applies to the relevant parts of the project. </samp>
This project is licensed under the MIT License. The [Remotion license](https://github.com/remotion-dev/remotion/blob/main/LICENSE.md) also applies to the relevant parts of the project.
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.

high

This line states the project is licensed under the MIT License. However, this contradicts other files in the repository:

  • LICENSE.md describes a dual AGPL/Commercial license.
  • CONTRIBUTING.md requires contributors to agree to the AGPL and a commercial license.
  • package.json states "license": "SEE LICENSE IN LICENSE.md".

This inconsistency creates significant legal confusion. The README.md must accurately reflect the project's actual license as defined in the LICENSE.md file. Please correct this to match the dual-license model or update all other files if the license has indeed changed to MIT.

Suggested change
This project is licensed under the MIT License. The [Remotion license](https://github.com/remotion-dev/remotion/blob/main/LICENSE.md) also applies to the relevant parts of the project.
This project is licensed under a dual-license. Refer to [LICENSE](LICENSE.md) for details. The [Remotion license](https://github.com/remotion-dev/remotion/blob/main/LICENSE.md) also applies to the relevant parts of the project.

Comment thread README.md
Comment on lines 61 to 65
```

**Ports:**

<samp>

- Frontend: `5173`
- Backend : `8000`
- FastAPI : `3000`

</samp>
<br>

<strong> 🛠️ <ins>Local Development</ins></strong>

<samp>For local development without Docker:</samp>

```bash
# Install dependencies
pnpm install

# Start services
pnpm run dev # Frontend (port 5173)
pnpm dlx tsx app/videorender/videorender.ts # Backend (port 8000)
uv run backend/main.py # FastAPI (port 3000)

# Note: You'll need GEMINI_API_KEY for AI features
```

`Requirements`

<samp>

- Node.js 20+
- Python 3.9+
- PostgreSQL
- pnpm

</samp>
</details>

## 🚀 Production

**Quick Start:**

```bash
docker compose up -d
git clone https://github.com/robinroy03/videoeditor.git
cd videoeditor
docker compose up
```
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.

medium

The deployment instructions could be improved for clarity and user experience.

  1. The commands are in a generic code block. Specifying the language as bash would enable syntax highlighting.
  2. docker compose up runs in the foreground, blocking the user's terminal. The previous version used docker compose up -d to run in detached mode, which is generally more convenient.

Also, the previous distinction between a development Docker setup and a production setup has been lost, which might be confusing.

Suggested change
```
**Ports:**
<samp>
- Frontend: `5173`
- Backend : `8000`
- FastAPI : `3000`
</samp>
<br>
<strong> 🛠️ <ins>Local Development</ins></strong>
<samp>For local development without Docker:</samp>
```bash
# Install dependencies
pnpm install
# Start services
pnpm run dev # Frontend (port 5173)
pnpm dlx tsx app/videorender/videorender.ts # Backend (port 8000)
uv run backend/main.py # FastAPI (port 3000)
# Note: You'll need GEMINI_API_KEY for AI features
```
`Requirements`
<samp>
- Node.js 20+
- Python 3.9+
- PostgreSQL
- pnpm
</samp>
</details>
## 🚀 Production
**Quick Start:**
```bash
docker compose up -d
git clone https://github.com/robinroy03/videoeditor.git
cd videoeditor
docker compose up
```
git clone https://github.com/robinroy03/videoeditor.git
cd videoeditor
docker compose up -d

Comment thread README.md
Comment on lines 69 to 75
```

or alternatively edit `docker-compose.yml`

**Ports:**

- HTTP: `80`
- HTTPS: `443`

## ⚙️ Environment Configuration

Create a `.env` file for custom settings:

```env
# Domain Configuration
PROD_DOMAIN=yourdomain.com

# Database
DATABASE_URL=postgresql://user:pass@localhost:5432/videoeditor

# Authentication (Google OAuth)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

# AI Features (Optional -> /backend)
GEMINI_API_KEY=your_gemini_api_key

# Supabase (Optional)
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_key
pnpm i
pnpm run dev (frontend)
pnpm dlx tsx app/videorender/videorender.ts (backend)
uv run backend/main.py
flip `isProduction` to `false` in `/app/utils/api.ts`
```
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.

medium

The local development commands are not very descriptive. The previous version included comments explaining what each command does and which port it uses. This context is very helpful for new developers. Using a bash code block would also improve readability.

Suggested change
```
or alternatively edit `docker-compose.yml`
**Ports:**
- HTTP: `80`
- HTTPS: `443`
## ⚙️ Environment Configuration
Create a `.env` file for custom settings:
```env
# Domain Configuration
PROD_DOMAIN=yourdomain.com
# Database
DATABASE_URL=postgresql://user:pass@localhost:5432/videoeditor
# Authentication (Google OAuth)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
# AI Features (Optional -> /backend)
GEMINI_API_KEY=your_gemini_api_key
# Supabase (Optional)
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_key
pnpm i
pnpm run dev (frontend)
pnpm dlx tsx app/videorender/videorender.ts (backend)
uv run backend/main.py
flip `isProduction` to `false` in `/app/utils/api.ts`
```
# Install dependencies
pnpm i
# Run services in separate terminals
pnpm run dev # Frontend (port 5173)
pnpm dlx tsx app/videorender/videorender.ts # Backend (port 8000)
uv run backend/main.py # FastAPI (port 3000)
# NOTE: You will need to set isProduction=false in /app/utils/api.ts

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.

1 participant