Proof of concept
src | ||
.dockerignore | ||
.drone.yml | ||
.gitignore | ||
astro-i18next.config.mjs | ||
astro.config.mjs | ||
bun.lockb | ||
docker-compose.yml | ||
Dockerfile | ||
LICENSE | ||
package.json | ||
README.md | ||
tsconfig.json |
Poke, but built on Astro
This repo is only a proof of concept to see how Poke will run in Astro. A lot of code will be used from MinPluto, as it's a YouTube frontend built on Astro and inspired by Poke.
Todo List
- i18n
- English
- Japanese
- French 🚬
- Spanish
- Russian
- Inline Player
- Mobile Support
- Dedicated Redirect Page
- Should pull from instances list
- Search
- Revamp Experience
- Filters
- Auto Complete
- Video Player
- Dash Format (1080p/4K/8K)
- Mobile Gestures
- Embed Page
- Controls
- Play/Pause
- Volume
- Fullscreen
- CC
- Quality Changer
- Theater Mode
- Cast
- Video Page
- Toggle:
- Audio Only
- Autoplay
- Toggle:
- YouTube Music
- Music Player
- Artist Page
- Album Page
- Search Experience
- Custom Embed Page
- User Settings
- Invidious Server Selection
- SafeTwitch Backend Server Selection
- Platform Selection (YouTube/Twitch)
- Video Player
- Toggle:
- Proxy
- Theme
- Preferred Language (For audio track on YouTube)
- Custom CSS/JS
- Import/Export YouTube Subscription (Use local session, no database crap)
- Import/Export Poke User Settings
- Add Twitch Support, use SafeTwitch Backend
Known Issuse
- End-user must reload page again after switch language (May be caused by ViewTransition API)
- i18n doesn't activiate after 1 or 2 seconds when launching Poke (Does it matter? Not that much, but I'll like to fix that)
- Searching from a video doesn't work. Error:
SyntaxError: Unexpected end of JSON input
(URL isn't set correctly)
Hosting - Docker Compose (Recommended)
Requirements
- Docker Engine
Running
Use the Docker Compose file that is provided with Poke. Copying and pasting it into other tools like Dockge and Dokemon will work too.
Run:
docker compose up -d
Using
sudo
may be required depending on your setup
Build
Instructions assume you're using Bun as the package manager, which is preferred for Astro projects.
Requirements
- git
- Bun (NPM/NodeJS not required 😄)
Build and Run
Clone the repository:
git clone https://codeberg.org/korbs/poke-but-in-astro.git
cd ./poke-but-in-astro/
Install packages:
bun install
Run:
bun start # or use "bunx --bun astro dev"
It's that easy.
License
Copyright (C) 2024 SudoVanilla
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.