Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/joaoemanuell/dmyrn

Download music YouTube react native
https://github.com/joaoemanuell/dmyrn

android apk ffmpeg intent javascript mp3 mp4 notifications react-native tailwindcss typescript youtube youtube-downloader

Last synced: 28 days ago
JSON representation

Download music YouTube react native

Awesome Lists containing this project

README

        

- [Dmyrn](#dmyrn)
- [Features](#features)
- [Download](#download)
- [Running Locally](#running-locally)
- [Deployment](#deployment)
- [Tech Stack](#tech-stack)
- [Authors](#authors)
- [License](#license)

[Português Brasil](./README-pt_br.md)

# Dmyrn

Dmyrn (Download Music YouTube React Native) is an Android application designed to allow users to download videos and music from YouTube for free.


icon

## Features

- Download videos and playlists.
- Local conversion of music to MP3 format.
- Saving files to the device's internal memory.
- Notifications.
- Background operation.

## Download

Access the [site](https://joaoemanuell.github.io/dmyrn/html/download.html) to download the apk, or access the [releases](https://github.com/JoaoEmanuell/dmyrn/releases)

## Running Locally

Requirements

```bash
node >= 19.9.0
npm >= 9.6.3
openjdk >= 21.0.4
```

Clone the project:

```bash
git clone https://github.com/JoaoEmanuell/dmyrn.git
```

Navigate to the project directory:

```bash
cd dmyrn
```

Install the dependencies:

```bash
npm install
```

Navigate to the Android directory `dmyrn/android/app`.

Copy the `build_example.gradle` file and rename it to `build.gradle`.

Connect your Android device via USB or run an emulator.

Start Android:

```bash
npm run android
```

Start the server:

```bash
npm run start
```

## Deployment

To deploy this project, follow these steps:

Generate a release *keystore*:

```bash
keytool -genkey -v -keystore release.keystore -alias -keyalg RSA -keysize 2048 -validity 10000
```

Fill in the desired information. Then, within `build.gradle`, replace the saved data with your key's information:

```
storeFile file('release.keystore')
storePassword ''
keyAlias ''
keyPassword ''
```

## Tech Stack

- React Native
- TypeScript
- TailwindCSS
- [FFmpeg](https://github.com/arthenica/ffmpeg-kit)
- [React Native ytdl](https://github.com/ytdl-js/react-native-ytdl) (updated to work currently)

## Authors

- [@JoaoEmanuell](https://www.github.com/JoaoEmanuell)

## License

[MIT](https://github.com/JoaoEmanuell/dmyrn/blob/master/LICENSE)