Skip to content

Commit

Permalink
Add basic Tauri setup
Browse files Browse the repository at this point in the history
  • Loading branch information
durasj committed Nov 5, 2023
1 parent 1e09041 commit 7cefe5a
Show file tree
Hide file tree
Showing 43 changed files with 4,081 additions and 8,800 deletions.
7 changes: 7 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/* eslint-env node */
module.exports = {
extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
parser: "@typescript-eslint/parser",
plugins: ["@typescript-eslint"],
root: true,
};
29 changes: 29 additions & 0 deletions .github/workflows/tauri-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: 'Tauri build check'
on: [push]

jobs:
test-tauri:
strategy:
fail-fast: false
matrix:
platform: [macos-latest, ubuntu-20.04, windows-latest]

runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: 20
- name: install Rust stable
uses: dtolnay/rust-toolchain@stable
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
- name: install frontend dependencies
run: yarn install # change this to npm or pnpm depending on which one you use
- uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
node_modules
node_modules
.parcel-cache
61 changes: 0 additions & 61 deletions .travis.yml

This file was deleted.

18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<h3 align="center">Webamp on desktop</h3>

<p align="center">
Just like the original, now on your Mac, Windows or a Linux!
Just like the original, now on your Mac, Windows or Linux! ⚠️ Experimental ⚠️
</p>

<p align="center">
Expand All @@ -20,7 +20,7 @@

[![Screenshot of webamp desktop on Windows](./res/screen-win.gif)](https://desktop.webamp.org/) [![Screenshot of Webamp on Linux](./res/screen-linux.png)](https://desktop.webamp.org/) [![Screenshot of Webamp on Mac OS X](./res/screen-mac.png)](https://desktop.webamp.org/)

Unofficial app. It has most of the functionality of the original Winamp, but it's still more of a proof of concept. Based on the [Webamp](https://github.com/captbaritone/webamp) - "A reimplementation of Winamp 2.9 in HTML5 and JavaScript." by the [@captbaritone](https://github.com/captbaritone). Linux support via AppImage and .deb package tested on the Ubuntu 18.04.
Unofficial experimental app. It has most of the functionality of the original Winamp, but it's more of a proof of concept. Based on the [Webamp](https://github.com/captbaritone/webamp) - "A reimplementation of Winamp 2.9 in HTML5 and JavaScript." by the [@captbaritone](https://github.com/captbaritone). Linux support via AppImage and .deb package tested on the Ubuntu and Fedora.

## Downloads
Head over to the [desktop.webamp.org](https://desktop.webamp.org/) for the latest download files for your platform.
Expand Down Expand Up @@ -49,7 +49,7 @@ Head over to the [desktop.webamp.org](https://desktop.webamp.org/) for the lates

### Installation files are not trusted

Some operating systems, especially Windows or some browsers do not trust the installation files because they are not digitally signed and/or commonly used yet. Unfortunately, code signing certificates that would help us overcome this cost hundreds of euro per year. This project does not have any funding and therefore can't afford it. It's recommended to verify the checksum of the files if you are worried. Every commit (and therefore published checksum) is signed in this repository.
Some operating systems, especially Windows or some browsers do not trust the installation files because they are not digitally signed and/or commonly used yet. Unfortunately, code signing certificates that would help us overcome this cost hundreds per year. This project does not have any funding and therefore can't afford it. It's recommended to verify the checksum of the files if you are worried. Every commit (and therefore published checksum) is signed in this repository.

### Poor performance on Linux

Expand All @@ -59,7 +59,7 @@ Caused by the disabled hardware acceleration on the Linux. The reason is [issues

### Prerequisites

Make sure you have latest [node.js](https://nodejs.org/en/) and [yarn](https://yarnpkg.com/lang/en/).
Make sure you have the latest [node.js](https://nodejs.org/en/) and [bun](https://bun.sh).

### Installing

Expand All @@ -68,17 +68,17 @@ Clone this repository, install dependencies and run the start script:
```
git clone https://github.com/durasj/webamp-desktop.git
cd webamp-desktop
yarn install
yarn start
bun install
bun start
```

After the build has completed, you should see one window with the app and one with developer tools. To try some changes, you can: change the code in the `./src` dir, close the current window and run the `yarn start` again.
After the build has been completed, you should see one window with the app and one with developer tools. To try some changes, you can: change the code in the `./src` dir, close the current window and run the `bun start` again.

## Kudos

This project is possible thanks to the [Webamp](https://github.com/captbaritone/webamp) from [@captbaritone](https://github.com/captbaritone) and wonderful open source work of others like [@jberg](https://github.com/jberg) and authors of [many dependencies](https://github.com/durasj/webamp-desktop/blob/master/package.json).
This project is possible thanks to the [Webamp](https://github.com/captbaritone/webamp) from [@captbaritone](https://github.com/captbaritone) and the wonderful open source work of others like [@jberg](https://github.com/jberg) and authors of [many dependencies](https://github.com/durasj/webamp-desktop/blob/master/package.json).

Thumbar icons on Windows by [Smashicons](https://smashicons.com).

## Disclaimer
Not affiliated with the [Winamp](http://www.winamp.com/). All product names, logos, and brands are property of their respective owners.
Not affiliated with the [Winamp](http://www.winamp.com/). All product names, logos, and brands are the property of their respective owners.
Binary file added bun.lockb
Binary file not shown.
File renamed without changes.
60 changes: 27 additions & 33 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,57 +1,51 @@
{
"name": "webamp-desktop",
"version": "0.3.0",
"version": "0.4.0",
"description": "Desktop version of Winamp 2.9 reimplementation in HTML5 and JS",
"main": "main.js",
"type": "module",
"scripts": {
"start": "yarn run build && electron .",
"build": "yarn run copy && parcel build ./src/index.html",
"watch": "yarn run copy && parcel watch ./src/index.html",
"serve": "yarn run copy && parcel ./src/index.html",
"copy": "cp -r ./bundled/* ./dist",
"build": "yarn run copy && yarn build:src",
"build:src": "npx parcel build --public-url ./ ./src/index.html",
"watch": "npx parcel watch --public-url ./ --hmr-hostname 127.0.0.1 --hmr-port 54439 ./src/index.html",
"test": "jest",
"electron": "./node_modules/.bin/electron .",
"start": "yarn run build && electron .",
"test": "jest",
"pack": "yarn run pack:win && yarn run pack:linux && yarn run pack:mac",
"pack:win": "build -w --x64",
"pack:linux": "build -l --x64",
"pack:mac": "build -m --x64",
"pack": "yarn run pack:win && yarn run pack:linux && yarn run pack:mac",
"dist": "yarn run build && build --x64"
},
"homepage": "https://github.com/durasj/webamp-desktop",
"homepage": "https://desktop.webamp.org",
"repository": "https://github.com/durasj/webamp-desktop",
"author": "Jakub Duras <[email protected]>",
"license": "MIT",
"dependencies": {
"electron-is-dev": "^1.0.1",
"electron-log": "^3.0.1",
"electron-updater": "^4.0.6",
"html-to-text": "^4.0.0",
"@tauri-apps/api": "^1.5.1",
"html-to-text": "^9.0.5",
"left-clicky": "0.1.1",
"mime-types": "^2.1.22"
"mime-types": "^2.1.35"
},
"devDependencies": {
"@types/jest": "^24.0.11",
"@types/node": "^10.14.1",
"@types/webdriverio": "^4.13.3",
"electron": "^4.1.0",
"electron-builder": "^20.39.0",
"electron-debug": "^2.1.0",
"eslint": "^5.15.2",
"jest": "^24.5.0",
"parcel-bundler": "^1.12.2",
"spectron": "^5.0.0",
"ts-jest": "^24.0.0",
"tslint": "^5.14.0",
"typescript": "^3.2.4",
"webamp": "^1.3.0"
"@tauri-apps/cli": "^1.5.6",
"@types/jest": "^29.5.7",
"@types/node": "^20.8.10",
"@typescript-eslint/eslint-plugin": "^6.9.1",
"@typescript-eslint/parser": "^6.9.1",
"eslint": "^8.53.0",
"jest": "^29.7.0",
"parcel": "^2.10.2",
"prettier": "^3.0.3",
"ts-jest": "^29.1.1",
"typescript": "^5.2.2",
"webamp": "^1.5.0"
},
"browserslist": [
"Chrome 69"
],
"browserslist": ["Chrome 97", "Safari 13"],
"build": {
"appId": "me.duras.webamp-desktop",
"productName": "Webamp desktop",
"copyright": "Copyright © 2018 Jakub Ďuraš",
"productName": "Webamp Desktop",
"copyright": "Copyright © 2018 Jakub Duras",
"files": [
"!.*${/*}",
"!src/*.*",
Expand Down
3 changes: 3 additions & 0 deletions src-tauri/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Generated by Cargo
# will have compiled files and executables
/target/
Loading

0 comments on commit 7cefe5a

Please sign in to comment.