2019-05-19 18:57:07 +10:00
< img src = "https://thedesk.top/img/top.png" width = "300" align = "left" >
< img src = "https://thedesk.top/img/desk.png" width = "150" align = "right" >
2019-04-25 02:10:49 +10:00
2019-05-19 18:57:07 +10:00
# TheDesk
2019-05-19 18:54:04 +10:00
2019-02-01 04:12:43 +11:00
[![Build Status ](https://travis-ci.org/cutls/TheDesk.svg?branch=master )](https://travis-ci.org/cutls/TheDesk)
2019-05-19 17:39:30 +10:00
[![Crowdin ](https://d322cqt584bo4o.cloudfront.net/thedesk/localized.svg )](https://translate.thedesk.top/project/thedesk)
2019-08-14 03:14:34 +10:00
[![FOSSA Status ](https://bit.ly/2N4cLd1 )](https://bit.ly/31zqMmZ)
2019-05-19 17:39:30 +10:00
[![Version ](https://flat.badgen.net/github/release/cutls/TheDesk )](https://github.com/cutls/TheDesk/releases)
![Contributors ](https://flat.badgen.net/github/contributors/cutls/TheDesk )
2018-08-05 14:35:48 +10:00
Mastodon/Misskey client for PC(Windows/Linux/macOS)
2019-05-19 19:21:54 +10:00
オープンソースSNSマストドン/MisskeyのPC向けクライアント[日本語はこちら](README_ja.md)
2021-01-12 17:09:14 +11:00
Download:[TheDesk](https://thedesk.top)
2020-09-09 18:15:19 +10:00
On GitHub Releases, `-store.*` assets are made for some application store or manager(Snapcraft, Homebrew, Microsoft Store).
They do not check the latest version(Which you can get the latest ver or not depends on the store)
2018-02-18 16:43:11 +11:00
2019-05-19 19:21:54 +10:00
< a href = "https://www.patreon.com/cutls" > < img src = "https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt = "Become a Patron!" width = "160" > < / a >
2019-08-08 03:06:13 +10:00
< a href = "https://liberapay.com/cutls/donate" > < img alt = "Donate using Liberapay" src = "https://liberapay.com/assets/widgets/donate.svg" > < / a >
2019-05-19 18:54:04 +10:00
![Screenshots1 ](https://thedesk.top/img/scr1.png )
2019-05-19 19:21:54 +10:00
## License
2018-01-28 23:22:43 +11:00
2018-11-28 03:21:23 +11:00
[GNU General Public License v3.0 ](https://github.com/cutls/TheDesk/blob/master/LICENSE )
2019-05-19 19:21:54 +10:00
The icon is provided under [Creative Commons BY-NC-SA ](https://creativecommons.org/licenses/by-nc-sa/4.0/ )
2019-08-14 03:36:01 +10:00
[Press Kit ](https://d2upiril6ywqp9.cloudfront.net/press/TheDesk+PressKit.zip )
2019-01-27 01:26:56 +11:00
2019-08-14 03:36:01 +10:00
* [PNG 512x512 ](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.png )
* [SVG 4095x4096 ](https://d2upiril6ywqp9.cloudfront.net/press/thedesk-fullcolor.svg )
* [ico 256x256 ](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ico )
* [icns old ](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.icns )
2021-01-12 17:09:14 +11:00
* [Illustrator .ai ](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ai )
2018-11-28 03:21:23 +11:00
2019-05-19 19:21:54 +10:00
The default sounds of notifications is provided [Creative Commons BY ](https://creativecommons.org/licenses/by/4.0/ )
2019-04-15 01:45:04 +10:00
2021-01-12 17:09:14 +11:00
## Privacy Policy
2018-09-18 01:02:32 +10:00
2018-12-16 18:17:52 +11:00
* [プライバシーポリシー(Privacy Policy(ja)) ](https://thedesk.top/priv.html )
2018-01-28 23:22:43 +11:00
2019-05-19 19:21:54 +10:00
## Language
2018-07-30 03:35:29 +10:00
2019-01-27 01:26:56 +11:00
* 日本語(Japanese)
2021-01-12 16:44:57 +11:00
* 日本語, 関西(Japanese, Kansai)
2019-05-19 19:21:54 +10:00
* English
2021-01-12 16:44:57 +11:00
* български(Bulgarian) with [translate project ](https://translate.thedesk.top/project/thedesk/bg )
* Česky(Czech) with [translate project ](https://translate.thedesk.top/project/thedesk/cs )
* Deutsch(German) with [translate project ](https://translate.thedesk.top/project/thedesk/de )
* Español, argentina(Spanish, Argentina) with [translate project ](https://translate.thedesk.top/project/thedesk/es-AR )
* italiano(Italian) with [translate project ](https://translate.thedesk.top/project/thedesk/it-IT )
2018-07-30 03:35:29 +10:00
2019-05-19 19:21:54 +10:00
### Translation
2018-08-05 13:36:23 +10:00
2019-05-19 19:21:54 +10:00
Crowdin project is available! Visit: https://translate.thedesk.top
2018-07-30 03:35:29 +10:00
2019-06-16 21:34:41 +10:00
### Run on developer mode
2021-01-12 17:09:14 +11:00
`npm run dev` on `app` folder.(before you should run `yarn construct` to make HTML views)
If you change HTML or language files, you should rub to `yarn construct` . Or `yarn watchview` can always watch and construct such files with 1 process.
2019-06-16 21:34:41 +10:00
2019-05-19 19:21:54 +10:00
## Contributors
2018-08-05 13:36:23 +10:00
2021-01-12 17:09:14 +11:00
Build for macOS(Now: Travis CI)
2018-08-05 13:36:23 +10:00
2019-05-19 19:21:54 +10:00
* [toneji ](https://minohdon.jp/@toneji )
2018-08-05 13:36:23 +10:00
2021-01-12 17:09:14 +11:00
Build for Linux(Now: Travis CI)
2019-01-13 13:05:41 +11:00
2019-05-19 19:21:54 +10:00
* [popn_ja ](https://popon.pptdn.jp/@popn_ja )
2019-01-13 13:05:41 +11:00
2019-05-19 19:21:54 +10:00
Fellow coder
2019-03-20 22:11:03 +11:00
2019-06-29 17:11:52 +10:00
* [kPherox ](https://pl.kpherox.dev/kPherox )
2019-03-20 22:11:03 +11:00
2019-05-19 19:21:54 +10:00
## Build
2019-04-14 01:09:35 +10:00
2021-01-12 17:09:14 +11:00
You should use `yarn` but you can use also `npm` , but if you build on Windows, you should strongly use `yarn`
`yarn ***` and `npm run ***` has the same meaning,
2019-09-17 02:20:52 +10:00
### npm
2019-04-14 01:09:35 +10:00
```sh
git clone https://github.com/cutls/TheDesk
cd TheDesk/app
npm install
npm install --only=dev
2019-08-30 10:59:21 +10:00
npm run construct
2019-04-14 01:09:35 +10:00
```
2019-04-13 02:54:33 +10:00
2019-09-17 02:20:52 +10:00
### yarn
```sh
git clone https://github.com/cutls/TheDesk
cd TheDesk/app
2019-09-19 00:11:39 +10:00
# Linux or macOS
2019-09-19 00:24:34 +10:00
yarn install --no-lockfile
2019-09-19 00:11:39 +10:00
# Windows
2019-09-19 00:24:34 +10:00
yarn install
2019-09-19 00:25:22 +10:00
2019-09-17 02:20:52 +10:00
yarn construct
```
2021-01-12 17:09:14 +11:00
run `yarn dev` to launch developer version with console(click `view` )
2019-09-17 02:20:52 +10:00
2019-05-19 19:21:54 +10:00
### electron-builder(Recommended)
2019-09-17 02:20:52 +10:00
Use scripts(they can work well with npm, **yarn** ).
```sh
# Build for current platform
yarn build
# Select build target
## Windows
yarn build:win
## Windows and Linux (The macOS target should run on macOS. So, this option hasn't include the build for macOS)
yarn build:all
```
2019-04-13 02:54:33 +10:00
Config is all on package.json
2019-05-19 19:21:54 +10:00
### electron-packager
2021-01-12 17:09:14 +11:00
`yarn --D electron-rebuild`
2018-07-30 21:26:06 +10:00
2018-12-17 01:01:25 +11:00
Linux/macOS
`./node_modules/.bin/electron-rebuild`
Windows
`.\node_modules\.bin\electron-rebuild.cmd`
To install Python 2.x and Visual C++ for Windows, before running `npm install --save-dev electron-rebuild`
`npm install --global windows-build-tools`
2018-07-07 05:22:26 +10:00
Windows
2021-01-12 17:09:14 +11:00
```
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --win32metadata.CompanyName="TheDesk& Cutls.com" --win32metadata.FileDescription="TheDesk" --win32metadata.OriginalFilename="TheDesk" --win32metadata.InternalName="TheDesk" --win32metadata.ProductName="TheDesk" --platform=win32 --arch=all --electron-version=4.0.5 --icon=.\app\thedesk.ico --overwrite
```
2018-07-07 05:22:26 +10:00
Linux
2021-01-12 17:09:14 +11:00
```
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=linux --arch=x64,ia32 --electron-version=4.0.5 --overwrite
```
2018-07-07 05:22:26 +10:00
macOS
2021-01-12 17:09:14 +11:00
```
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=darwin --arch=all --electron-version=4.0.5 --icon=./app/icon.icns --overwrite
```
2018-07-07 05:22:26 +10:00
2020-02-24 12:52:42 +11:00
### PWA support
2020-09-13 02:49:27 +10:00
TheDesk is a web-based app, so you can run it on a browser. Of course, the main stream is as Electron. Some features won't work as well as Electron.
2020-02-24 12:52:42 +11:00
2020-02-24 13:18:48 +11:00
You can run `npm run build:pwa` to build as PWA, including `manifest.json` and the ServiceWorker.
2020-02-24 12:52:42 +11:00
2021-01-12 17:09:14 +11:00
**You have to rename `node_modules` to `dependencies` to run as a web application. (restricted by Netlify, but always you should do to run as PWA)**
2020-02-24 12:52:42 +11:00
Check the app on Chrome or Firefox: [Here ](https://app.thedesk.top ) (it follows the `master` branch, so not stable.)
[![Netlify Status ](https://api.netlify.com/api/v1/badges/6916503b-2882-43f7-9681-ab814e6d28f9/deploy-status )](https://app.netlify.com/sites/thedesk/deploys)
2019-02-01 03:30:25 +11:00
## Pleroma support
Did you find a bug with Pleroma accounts?
Pleroma **does not** follow Mastodon API rules completely although Pleroma developers say so.
2019-08-24 02:09:20 +10:00
Please write issues to improve TheDesk affinity with Pleroma.
2021-01-12 17:09:14 +11:00
## Vulnerabilities when `yarn install`???
2019-08-24 02:09:20 +10:00
2021-01-12 17:09:14 +11:00
No, if your npm says materialize-css has vulnerabilities(CVE-2019-11002/3/4), look at [here ](https://github.com/Dogfalo/materialize/issues/6286 ) under discussion, but I do not think this report is really fatal.