commit 567b6698c6e3de6a5c603140a37d4aac9d7ffc9d
Author: juancarmore <juancar_more2@hotmail.com>
Date: Tue Sep 23 13:50:37 2025 +0200
backend: clean up GCS configuration and improve format in storage provider and service
commit a1b04b9d8a3d143b040eda5afc24e99e90599cc7
Author: Piwccle <sergiosergi11@hotmail.com>
Date: Mon Sep 22 15:38:10 2025 +0200
backend: add Google Cloud Storage (GCS) support
- Updated package.json to include @google-cloud/storage dependency.
- Enhanced dependency injector to support GCS as a storage option.
- Modified environment configuration to include GCS settings.
- Implemented GCSStorageProvider for basic storage operations (get, put, delete, list).
- Created GCSService to handle interactions with Google Cloud Storage.
- Added health check and metadata retrieval methods for GCS.
- Updated logging to accommodate GCS operations.
OpenVidu Meet
Table of Contents
Architecture Overview
The OpenVidu Meet application is composed of two main parts (frontend and backend) that interact with each other to provide the video conferencing service. The following diagram illustrates the architecture of the application:
-
Frontend: The frontend is a web application built with Angular that provides the user interface for the video conferencing service. This project contains the shared-meet-components subproject, which is a library of shared components that share administration and preference components.
Also, the frontend project installs external dependencies on the following libraries:
- openvidu-components-angular: A library of Angular components that provide the core functionality of the video conferencing service.
- typings: Common types used by the frontend and backend.
-
Backend: The backend is a Node.js application.
- typings: Common types used by the frontend and backend.
Development
For development purposes, you can run the application locally by following the instructions below.
1. Clone the OpenVidu Meet repository:
git clone https://github.com/OpenVidu/openvidu-meet.git
2. Prepare the project
For building types and install dependencies, run the following command:
cd openvidu-meet
./prepare.sh
3. Start the Backend
Note
For development purposes, the backend application uses the
backend/.env.developmentfile to load environment variables. You can customize the values in this file to suit your local development environment.
cd backend && \
npm run start:dev
Note
The types under
typingsare shared between the frontend and backend projects. If you need to update the comon types, remember doing it in thetypingsproject.Every time you make changes to the types, the backend process will automatically invoke the syncing task to update the types in the frontend and backend projects. So, you don't need to worry about updating the types manually.
4. Start the Frontend
Opening a new tab, under root directory:
cd frontend && \
npm run build:dev
This command will build the frontend application and move the files to the backend project. It will also listen for changes in the frontend application and rebuild the application when changes are detected.
After running these commands, you can access the frontend application at http://localhost:6080.
Testing
This repository offers a testing application that allows you to test the OpenVidu Meet.
Pre-requisites
To run the testing application, you need to have the following pre-requisites installed:
- Node.js (version 22 or higher)
- LiveKit CLI installed and configured.
curl -sSL https://get.livekit.io/cli | bash
To run the testing application, follow these steps under the root directory:
- Install the dependencies:
cd testapp && \
npm install
- Start the testing application:
npm run start
After running these commands, you can access the testing application at http://localhost:5080.
Build (with docker)
Build the backend image
cd docker
./create_image.sh openvidu-meet-ce
Run the backend container
Once the image is created, you can run the container with the following command:
docker run \
-e LIVEKIT_URL=<your-livekit-url> \
-e LIVEKIT_API_KEY=<your-livekit-api-key> \
-e LIVEKIT_API_SECRET=<your-livekit-api-secret> \
-p 6080:6080 \
openvidu-meet-ce
You can check all the available environment variables in the environment file.
