GithubHelp home page GithubHelp logo

youtplayer / yout Goto Github PK

View Code? Open in Web Editor NEW
99.0 7.0 5.0 36 KB

:fire: YouTube playlist player for desktop. Free, no YouTube ads, floating window. Available for Linux, Mac and Windows.

Home Page: https://youtplayer.github.io/

yout playlist desktop yout-player youtube-playlist-player youtube linux windows mac player

yout's Introduction

News

YoutPlayer v2.0.0 is currently in development from the scratch. Support it by becoming a patron if you would it.

See the v2.0.0 sneak-peek on YouTube



youtplayer logo

YoutPlayer

become a patron platforms

YouTube playlist player on Desktop without browsers. Free, no YouTube ads, floating window. Available for Linux, Mac and Windows.

youtplayer screenshot

What to expect from the next release?

  • Remote control via mobile
  • No ads
  • Unlimited playlists
  • Individual videos can be played
  • Identify when you copy a YouTube link outside the app and ask you if you want to watch or add it when you get back to the app
  • New design
  • Native desktop notifications when the video has changed
  • Search from YouTube
  • Auto skip videos that can't be played
  • Media keys support

Where's the code?

I'm currently working in v2.0, so the code will be available here when I release it. But, it's an Electron app, you have the code when you download Yout, ok?

Yout has started getting commercials

I'm sorry about that. It will be fixed in v2.0 release.

yout's People

Contributors

daltonmenezes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

yout's Issues

This is fake!

Since more than one year the developer didn't publish the source code which make me thinking about a nasty embeded code!

Even he/she didn't publish the binaries here!!!

Harfbuzz version too old (1.2.1)

Getting error

(Yout:31876): Pango-ERROR **: 12:57:50.486: Harfbuzz version too old (1.2.1)

Trace/breakpoint trap (core dumped)

Is this the problem with my packages or with included with yout?

Linux Mint 20.3

Or can you give the source code to let me build it from source?

right click on header not working on gnome

On gnome windows you have some options like "Always on top" who are interesting for the player, I see that this doesn't works, are you activelly blocking it or this some side effects ?

remember window geometry

can yout remember last window state or is there a file i can edit to make yout window a certain size like 1280x720.

Mac minimising issues

Once the app is minimised (by clicking "_"), it won't open up again, when clicking on the icon on the dock.

Windows "always on top" not working on Linux (+quickfix)

It's an Electron bug: electron/electron#12445

We can fix the problem by editing "[...]/resources/app/main.js" with this code:

'use strict';
const electron = require('electron');
const {
	app,
	globalShortcut
} = electron;
const {
	BrowserWindow,
	ipcMain
} = electron;
const nativeImage = require('electron').nativeImage;
if (process.platform == 'linux') {
	app.disableHardwareAcceleration();
}
ipcMain.on('close-main-window', () => {
	app.quit();
});
let iconApp = nativeImage.createFromPath(__dirname + '/app/assets/ico/icon.png')
let splashWindow = null;
app.on('window-all-closed', () => {
	if (process.platform != 'darwin')
		app.quit();
});
app.on('ready', () => {

	// AlwaysOnTop Electron bug: https://github.com/electron/electron/issues/12445

	splashWindow = new BrowserWindow({
		title: 'Yout',
		icon: iconApp,
		width: 400,
		height: 400,
		backgroundColor: '#262626',
		center: true,
		movable: true,
		resizable: false,
		// alwaysOnTop: true, // Disabled
		toolbar: false,
		frame: false
	});
		// Workaround: keep this window always on top
		splashWindow.setAlwaysOnTop(true);
		// -----
	var mainWindow = new BrowserWindow({
		title: 'Yout',
		icon: iconApp,
		minWidth: 266,
		minHeight: 150,
		backgroundColor: '#000000',
		center: true,
		resizable: true,
		movable: true,
		// alwaysOnTop: true, // Disabled
		frame: false,
		toolbar: false,
		show: false,
	});
	splashWindow.setMenu(null);
	splashWindow.loadURL('file://' + __dirname + '/app/splash.html');
	ipcMain.on('show-yout-window', () => {
		splashWindow.destroy();
		mainWindow.show();
		// Workaround: keep this window always on top
		mainWindow.setAlwaysOnTop(true);
		// -----
		splashWindow = null;
	});
	mainWindow.setMenu(null);
	mainWindow.isResizable(true);
	mainWindow.loadURL('file://' + __dirname + '/app/index.html');

	function enterFullScreen() {
		if (mainWindow.isFullScreen() == false) {
			mainWindow.setFullScreen(true);
			mainWindow.webContents.send('fullscreen');
		}
	}

	function exitFullScreen() {
		if (mainWindow.isFullScreen()) {
			mainWindow.setFullScreen(false);
			mainWindow.webContents.send('showDecoration');
			mainWindow.webContents.send('killfullscreen');
		}
	}
	mainWindow.on('focus', () => {
		mainWindow.webContents.send('showDecoration');
		globalShortcut.register('Esc', () => {
			if (mainWindow.isFullScreen()) {
				exitFullScreen();
			}
		});
		globalShortcut.register('Enter', () => {
			if (mainWindow.isFullScreen()) {
				exitFullScreen();
			} else {
				enterFullScreen();
			}
		});
	});
	mainWindow.on('blur', () => {
		mainWindow.webContents.send('hideDecoration');
		globalShortcut.unregister('Esc');
		globalShortcut.unregister('Enter');
	});
	ipcMain.on('minimize-main-window', () => {
		mainWindow.minimize();
	});
	ipcMain.on('exit-fullscreen', () => {
		mainWindow.setFullScreen(false);
		mainWindow.webContents.send('showDecoration');
		mainWindow.webContents.send('killfullscreen');
	});
	ipcMain.on('maximize-main-window', () => {
		if (mainWindow.isFullScreen()) {
			exitFullScreen();
		} else {
			enterFullScreen();
		}
	});
	mainWindow.on('closed', () => {
		mainWindow = null;
		app.quit();
	});
	ipcMain.on('update-playlist', () => {
		mainWindow.setSize(800, 600);
		mainWindow.reload();
	});
	ipcMain.on('create-about-window', () => {
		let aboutWindow = new BrowserWindow({
			title: 'Yout',
			icon: iconApp,
			width: 400,
			height: 459,
			backgroundColor: '#262626',
			center: true,
			resizable: false,
			movable: true,
			// alwaysOnTop: true, // Disabled
			frame: false,
			show: false
		});
		aboutWindow.setMenu(null);
		aboutWindow.loadURL('file://' + __dirname + '/app/about.html');
		aboutWindow.show();
		// Workaround: keep this window always on top
		aboutWindow.setAlwaysOnTop(true);
		// -----
	});
	ipcMain.on('create-playlist-window', () => {
		let managePlaylistsWindow = new BrowserWindow({
			title: 'Yout',
			icon: iconApp,
			width: 400,
			height: 400,
			backgroundColor: '#262626',
			center: true,
			resizable: false,
			movable: true,
			// alwaysOnTop: true, // Disabled
			frame: false,
			show: false
		});
		managePlaylistsWindow.setMenu(null);
		managePlaylistsWindow.loadURL('file://' + __dirname + '/app/managePlaylists.html');
		managePlaylistsWindow.show();
		// Workaround: keep this window always on top
		managePlaylistsWindow.setAlwaysOnTop(true);
		// -----
	});
	ipcMain.on('create-help-window', () => {
		let helpWindow = new BrowserWindow({
			title: 'Yout',
			icon: iconApp,
			width: 770,
			height: 500,
			backgroundColor: '#262626',
			center: true,
			resizable: false,
			movable: true,
			// alwaysOnTop: true, // Disabled
			frame: false,
			show: false
		});
		helpWindow.setMenu(null);
		helpWindow.loadURL('file://' + __dirname + '/app/help.html');
		helpWindow.show();
		// Workaround: keep this window always on top
		helpWindow.setAlwaysOnTop(true);
		// -----
	});
});

Cheers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.