Skip to content
Merged

Dev #31

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
e28fcb5
fix: remove dotenv dependency and use Bun.env for environment variables
zbejas Aug 21, 2025
5173609
chore: update dependencies to latest versions
zbejas Dec 28, 2025
9c339a3
feat: enhance IPTV data handling with XMLTV and playlist integration,…
zbejas Dec 28, 2025
090d290
fix: enhance isProgrammeDataStale function to check for empty data an…
zbejas Dec 29, 2025
fd5fc0e
feat: enhance logging for XMLTV and playlist channel synchronization,…
zbejas Dec 29, 2025
d7ae73a
fix: update handleProgrammeCommand to use ChatInputCommandInteraction…
zbejas Dec 29, 2025
e1a281d
chore: update dependencies to latest versions for improved stability …
zbejas Dec 29, 2025
332fae5
fix: downgrade @dank074/discord-video-stream dependency to version 5.…
zbejas Dec 29, 2025
ca4a507
fix: update @dank074/discord-video-stream dependency to version 5.0.2…
zbejas Dec 29, 2025
9d1d183
fix: remove optionalDependencies section from package.json
zbejas Dec 29, 2025
2ee384a
fix: update Dockerfile to use oven-sh/bun base image and install ffmpeg
zbejas Dec 29, 2025
2712f0f
fix: update Dockerfile to use correct oven/bun base image
zbejas Dec 29, 2025
45c4a48
fix: update @dank074/discord-video-stream dependency to version 5.0.2…
zbejas Dec 29, 2025
a16abfc
fix: downgrade @dank074/discord-video-stream dependency to version 5.0.1
zbejas Dec 29, 2025
a8a56cb
fix: update @dank074/discord-video-stream dependency to version 5.0.2…
zbejas Dec 29, 2025
7aac00f
fix: update Dockerfile to use node:22-alpine, install dependencies wi…
zbejas Dec 29, 2025
92829b1
fix: update Dockerfile to use node:lts-alpine3.23 and optimize apk pa…
zbejas Dec 29, 2025
e5549b9
fix: update command interactions to use ChatInputCommandInteraction a…
zbejas Dec 29, 2025
7a767eb
refactor: update project configuration and dependencies
zbejas Dec 29, 2025
9a32b24
fix: optimize Dockerfile by separating build and runtime stages and r…
zbejas Dec 29, 2025
b2ff79e
fix: update syncPlaylistChannels to use tvg_name as the unique key to…
zbejas Dec 29, 2025
fc1be52
fix: enhance alternative format parsing to extract attributes flexibl…
zbejas Dec 29, 2025
5ed26b5
fix: add season and episode information to programme embeds for impro…
zbejas Dec 29, 2025
6cee178
fix: enhance stream embed to include season and episode information f…
zbejas Dec 29, 2025
fb61fb6
fix: update version to 1.2.0 in package.json
zbejas Dec 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
22
42 changes: 23 additions & 19 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,21 @@
# Use the official Alpine base image
FROM alpine:3.21
# Build stage
FROM node:lts-alpine3.23 AS builder

RUN apk update && \
apk add --no-cache python3 make g++

WORKDIR /app
COPY package.json ./
RUN npm install

COPY tsconfig.json ./
COPY src ./src
RUN npm run build

# Runtime stage
FROM node:lts-alpine3.23 AS runtime
# Had to switch from bun to node due to zeromq not being supported in bun yet.

# Add labels
LABEL maintainer="Zbejas <info@zbejas.io>"
LABEL description="A Discord IPTV streaming bot."
LABEL org.opencontainers.image.source="https://github.com/zbejas/orbiscast"
Expand All @@ -10,24 +24,14 @@ LABEL org.opencontainers.image.authors="Zbejas"
LABEL org.opencontainers.image.licenses="GPL-3.0"
LABEL org.opencontainers.image.title="Orbiscast"

# Install dependencies
RUN apk update && \
apk add --no-cache curl git unzip ffmpeg bash

# Install Bun
RUN curl -fsSL https://bun.sh/install | bash
apk add --no-cache ffmpeg python3 make g++

# Add Bun to PATH
ENV PATH="/root/.bun/bin:$PATH"

# Set the working directory
WORKDIR /app
COPY package.json ./
RUN npm install --omit=dev && \
apk del python3 make g++

# Copy the project files into the container
COPY . .

# Install project dependencies
RUN bun install
COPY --from=builder /app/dist ./dist

# Command to run the application
CMD ["bun", "run", "start"]
CMD ["npm", "run", "start:prod"]
21 changes: 17 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,20 +81,33 @@ You can check the available tags on the [Docker Hub page](https://hub.docker.com
### Manual

> [!IMPORTANT]
> The following instructions are for running the bot manually. If you are using Docker, you can skip this section. [Bun](https://bun.sh/) is required, so make sure to install it before proceeding.
> The following instructions are for running the bot manually. If you are using Docker, you can skip this section. [Node.js](https://nodejs.org/) v22 or higher is required.

The project can also be run manually. To do so, first download the project and install the dependencies:

```bash
git clone https://github.com/zbejas/orbiscast
cd orbiscast
bun install
npm install
```

Setup the enviroment variables and start the bot by running:
For development with auto-reload:

```bash
bun run start
npm run dev
```

For production, build and run:

```bash
npm run build
npm run start:prod
```

Or run directly with TypeScript:

```bash
npm start
```

## Environment Variables
Expand Down
454 changes: 0 additions & 454 deletions bun.lock

This file was deleted.

Loading