A Music + video player all in a single page with web and desktop app view.
Project description
Singularity
Singularity is a music + video client for youtube.It also enables users to use singularity from terminal. This is an open-source project build after two small project i.e. flow and wave
This project includes two things:
- CLI + Web version
- web based saavan music player. see here
Installation
Install it using pip or pipx
pip install singularity
pipx install singularity
Or clone this repo and then install
git clone https://github.com/philast-015/singularity.git
cd Singularity
uv sync
uv run main.py
Modes
- Yt + music mode: This mode enables user to listen to music and play videos all in just one web page.
- Music mode: This mode enables user to listen to music auto-play similar songs feature.
- Video mode: This mode allows user to watch a single video useful when getting distracted.
Features
- ad free playback.
- watch completly without giving data to any big companies.
- has distraction free modes for you.
- can be used using terminal.
Usage
singularity [-h] [commands]
File structure
.
├── main.py
├── pyproject.toml
├── README.md
├── src
│ ├── api
│ │ ├── info.py
│ │ ├── **init**.py
│ │ ├── routes.py
│ │ ├── search.py
│ │ └── stream.py
│ ├── Music-static
│ │ ├── index.html
│ │ ├── script.js
│ │ └── style.css
│ ├── tags.py
│ ├── ui
│ │ ├── index.html
│ │ ├── package.json
│ │ ├── package-lock.json
│ │ ├── public
│ │ │ └── logo.png
│ │ ├── src
│ │ │ ├── api.js
│ │ │ ├── App.css
│ │ │ ├── App.jsx
│ │ │ ├── components
│ │ │ │ ├── AlbumDetail.jsx
│ │ │ │ ├── AlbumModals.jsx
│ │ │ │ ├── LibraryPage.jsx
│ │ │ │ ├── LikedPage.jsx
│ │ │ │ ├── MusicPlayer.jsx
│ │ │ │ ├── PlaylistPage.jsx
│ │ │ │ ├── SavedItems.jsx
│ │ │ │ ├── SavedPage.jsx
│ │ │ │ ├── SearchHistory.jsx
│ │ │ │ ├── SettingsPanel.jsx
│ │ │ │ ├── Sidebar.jsx
│ │ │ │ ├── VideoCard.jsx
│ │ │ │ └── VideoPlayer.jsx
│ │ │ ├── logo.png
│ │ │ ├── main.jsx
│ │ │ └── modes
│ │ │ └── music
│ │ │ └── MusicLibrary.jsx
│ │ └── vite.config.js
│ ├── Video-static
│ │ ├── index.html
│ │ ├── script.js
│ │ └── style.css
│ └── ytdl.py
└── uv.lock
Dependencies used
- python
- flask
- rich
- request
- yt-dlp
- tree (used for generating tree view)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file singularity_twinx-0.1.2.tar.gz.
File metadata
- Download URL: singularity_twinx-0.1.2.tar.gz
- Upload date:
- Size: 111.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
babc73552741df43f9b19c0e86a631772f6f185f0befb918a8fd13132fe6c51b
|
|
| MD5 |
cf4b054c62cfcee1c5dbb36029898a36
|
|
| BLAKE2b-256 |
d0cfc083385d4605b288472e048dc23c30e434b1c12a39e73a620a5e38ca676d
|
File details
Details for the file singularity_twinx-0.1.2-py3-none-any.whl.
File metadata
- Download URL: singularity_twinx-0.1.2-py3-none-any.whl
- Upload date:
- Size: 115.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e4cd53fbb48da3cbe8a3d8c713b762638067d61362928d5b8a7ba587edc7ae2
|
|
| MD5 |
cf5eb388eb7571d356142e0a082dee9b
|
|
| BLAKE2b-256 |
1774402e530bd48a908af6bf5b70302438d55497f24f2e409958be17869b3022
|