Compare commits

...

25 Commits
4.0 ... main

Author SHA1 Message Date
hxvy0 53c8dc45f2 'README.md' güncelle 2023-05-12 14:56:09 +03:00
hxvy0 18f0098e3e
Add files via upload 2023-05-12 13:46:25 +03:00
hxvy0 949fd7d537
Delete vulkan-1.dll 2023-05-12 13:45:09 +03:00
hxvy0 fee1c67189
Delete vk_swiftshader_icd.json 2023-05-12 13:45:00 +03:00
hxvy0 80c074eb7b
Delete vk_swiftshader.dll 2023-05-12 13:44:50 +03:00
hxvy0 e22525730d
Delete version 2023-05-12 13:44:41 +03:00
hxvy0 f35fa26860
Delete v8_context_snapshot.bin 2023-05-12 13:44:31 +03:00
hxvy0 171779ea59
Delete snapshot_blob.bin 2023-05-12 13:43:53 +03:00
hxvy0 bcd9010f7b
Delete resources.pak 2023-05-12 13:43:42 +03:00
hxvy0 a25815a97e
Delete libGLESv2.dll 2023-05-12 13:43:31 +03:00
hxvy0 fa78022017
Delete libEGL.dll 2023-05-12 13:43:14 +03:00
hxvy0 99b56613fd
Delete icudtl.dat 2023-05-12 13:43:04 +03:00
hxvy0 e7b41c9a91
Delete ffmpeg.dll 2023-05-12 13:42:55 +03:00
hxvy0 5e03be65df
Delete d3dcompiler_47.dll 2023-05-12 13:42:46 +03:00
hxvy0 1b5ded672c
Delete chrome_200_percent.pak 2023-05-12 13:42:02 +03:00
hxvy0 2e279d3bb9
Delete chrome_100_percent.pak 2023-05-12 13:41:51 +03:00
hxvy0 bb8363fc75
Delete LICENSES.chromium.html 2023-05-12 13:41:43 +03:00
hxvy0 effd93b42b
Delete locales directory 2023-05-12 13:41:31 +03:00
hxvy0 7efa2c44c5
Delete resources/app directory 2023-05-12 13:41:17 +03:00
hxvy0 bab5bcce5d
Update README.md 2023-05-12 13:34:23 +03:00
hxvy0 0b05c02d43
Update README.md 2023-05-12 13:34:11 +03:00
hxvy0 c348fcf7f7
Update README.md 2023-05-12 13:33:58 +03:00
hxvy0 d5aef4e7d1
Update README.md 2023-05-12 13:32:13 +03:00
hxvy0 5979b17a7b
Update README.md 2023-05-12 13:29:59 +03:00
hxvy0 954e00c4a9
Update README.md 2023-05-12 13:29:45 +03:00
83 changed files with 20 additions and 109599 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,23 @@
# Boocord
A discord client respects your privacy.
Download in: https://github.com/Boocord/discord-client/releases/
# What is boocord?
Boocord is a discord client built with nativefier.
## Is it safe?
Trusted by antiviruses & sandboxes.
![image](https://user-images.githubusercontent.com/85783692/223534002-f8ef79f6-9391-4b43-9ada-9e18f3b749f0.png)
### Wanna build yourself?
First you need install nativefier.
`npm install nativefier`
For Build Boocord:
`nativefier --name 'Boocord' 'discord.com/app' --disable-gpu --tray -u "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36 uacq"`
For Build Boocord PTB:
`nativefier --name 'Boocord PTB' 'ptb.discord.com/app' --disable-gpu --tray -u "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36 uacq"`
Build done!

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,108 +0,0 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.INJECT_DIR = void 0;
/**
* Preload file that will be executed in the renderer process.
* Note: This needs to be attached **prior to imports**, as imports
* would delay the attachment till after the event has been raised.
*/
document.addEventListener('DOMContentLoaded', () => {
injectScripts(); // eslint-disable-line @typescript-eslint/no-use-before-define
});
const fs = __importStar(require("fs"));
const path = __importStar(require("path"));
const electron_1 = require("electron");
// Do *NOT* add 3rd-party imports here in preload (except for webpack `externals` like electron).
// They will work during development, but break in the prod build :-/ .
// Electron doc isn't explicit about that, so maybe *we*'re doing something wrong.
// At any rate, that's what we have now. If you want an import here, go ahead, but
// verify that apps built with a non-devbuild nativefier (installed from tarball) work.
// Recipe to monkey around this, assuming you git-cloned nativefier in /opt/nativefier/ :
// cd /opt/nativefier/ && rm -f nativefier-43.1.0.tgz && npm run build && npm pack && mkdir -p ~/n4310/ && cd ~/n4310/ \
// && rm -rf ./* && npm i /opt/nativefier/nativefier-43.1.0.tgz && ./node_modules/.bin/nativefier 'google.com'
// See https://github.com/nativefier/nativefier/issues/1175
// and https://www.electronjs.org/docs/api/browser-window#new-browserwindowoptions / preload
const log = console; // since we can't have `loglevel` here in preload
exports.INJECT_DIR = path.join(__dirname, '..', 'inject');
/**
* Patches window.Notification to:
* - set a callback on a new Notification
* - set a callback for clicks on notifications
* @param createCallback
* @param clickCallback
*/
function setNotificationCallback(createCallback, clickCallback) {
const OldNotify = window.Notification;
const newNotify = function (title, opt) {
createCallback(title, opt);
const instance = new OldNotify(title, opt);
instance.addEventListener('click', clickCallback);
return instance;
};
newNotify.requestPermission = OldNotify.requestPermission.bind(OldNotify);
Object.defineProperty(newNotify, 'permission', {
get: () => OldNotify.permission,
});
// @ts-expect-error TypeScript says its not compatible, but it works?
window.Notification = newNotify;
}
function injectScripts() {
const needToInject = fs.existsSync(exports.INJECT_DIR);
if (!needToInject) {
return;
}
// Dynamically require scripts
try {
const jsFiles = fs
.readdirSync(exports.INJECT_DIR, { withFileTypes: true })
.filter((injectFile) => injectFile.isFile() && injectFile.name.endsWith('.js'))
.map((jsFileStat) => path.join('..', 'inject', jsFileStat.name));
for (const jsFile of jsFiles) {
log.debug('Injecting JS file', jsFile);
require(jsFile);
}
}
catch (err) {
log.error('Error encoutered injecting JS files', err);
}
}
function notifyNotificationCreate(title, opt) {
electron_1.ipcRenderer.send('notification', title, opt);
}
function notifyNotificationClick() {
electron_1.ipcRenderer.send('notification-click');
}
// @ts-expect-error TypeScript thinks these are incompatible but they aren't
setNotificationCallback(notifyNotificationCreate, notifyNotificationClick);
electron_1.ipcRenderer.on('params', (event, message) => {
log.debug('ipcRenderer.params', { event, message });
const appArgs = JSON.parse(message);
log.info('nativefier.json', appArgs);
});
electron_1.ipcRenderer.on('debug', (event, message) => {
log.debug('ipcRenderer.debug', { event, message });
});
//# sourceMappingURL=preload.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../src/preload.ts"],"names":[],"mappings":"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"}

View File

@ -1,57 +0,0 @@
label, input {
display: block;
}
* {
font-family: Verdana, sans-serif;
}
html, body {
height: 100%;
margin: 0;
-webkit-app-region: drag;
}
.login-form {
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
.login-form > div {
margin-bottom: 30px;
}
.login-form > div > label {
margin-bottom: 25px;
letter-spacing: 5px;
font-weight: 100;
text-transform: uppercase;
font-size: 18px;
text-align: center;
color: rgba(0, 0, 0, 0.7);
}
.login-form > div > input {
height: 30px;
width: 225px;
font-size: 16px;
-webkit-app-region: no-drag;
}
.login-form > div > button {
border: 0;
font-size: 15px;
font-weight: 100;
text-transform: uppercase;
height: 35px;
width: 225px;
background-color: #2196F3;
color: white;
-webkit-app-region: no-drag;
}
button:hover {
background-color: #0D47A1;
}

View File

@ -1,24 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login</title>
<link rel="stylesheet" type="text/css" href="login.css">
</head>
<body>
<form class="login-form" id="login-form">
<div>
<label for="username-input">Username</label>
<input type="text" id="username-input" autofocus/>
</div>
<div>
<label for="password-input">Password</label>
<input type="password" id="password-input"/>
</div>
<div>
<button id="submit-form-button" type="submit">Login</button>
</div>
</form>
<script src="login.js"></script>
</body>
</html>

View File

@ -1,10 +0,0 @@
const { ipcRenderer } = require('electron');
document.getElementById('login-form').addEventListener('submit', (event) => {
event.preventDefault();
const usernameInput = document.getElementById('username-input');
const username = usernameInput.nodeValue || usernameInput.value;
const passwordInput = document.getElementById('password-input');
const password = passwordInput.nodeValue || passwordInput.value;
ipcRenderer.send('login-message', [username, password]);
});

View File

@ -1 +0,0 @@
{"accessibilityPrompt":true,"alwaysOnTop":false,"arch":"x64","asar":false,"blockExternalUrls":false,"bounce":false,"buildDate":1675157978907,"clearCache":false,"counter":false,"darwinDarkModeSupport":false,"disableContextMenu":false,"disableDevTools":false,"disableGpu":false,"disableOldBuildWarning":false,"electronVersionUsed":"19.1.4","enableEs3Apis":false,"fastQuit":false,"fullScreen":false,"height":800,"hideWindowFrame":false,"ignoreCertificate":false,"ignoreGpuBlacklist":false,"insecure":false,"isUpgrade":false,"maximize":false,"name":"Boocord","nativefierVersion":"50.0.1","portable":false,"quiet":false,"showMenuBar":false,"singleInstance":false,"strictInternalUrls":false,"targetUrl":"https://discord.com/app","tray":"false","userAgentHonest":false,"width":1280,"widevine":false,"win32metadata":{"ProductName":"Boocord","InternalName":"Boocord","FileDescription":"Boocord"},"zoom":1,"oldBuildWarningText":""}

File diff suppressed because it is too large Load Diff

View File

@ -1,25 +0,0 @@
{
"name": "boocord-nativefier-18566a",
"version": "1.0.0",
"description": "Placeholder for the nativefier cli to override with a target url",
"main": "lib/main.js",
"author": "Jia Hao",
"license": "MIT",
"keywords": [
"desktop",
"electron",
"placeholder"
],
"scripts": {},
"dependencies": {
"electron-context-menu": "^3.1.1",
"electron-dl": "^3.2.1",
"electron-squirrel-startup": "^1.0.0",
"electron-window-state": "^5.0.3",
"loglevel": "^1.7.1",
"source-map-support": "^0.5.19"
},
"devDependencies": {
"electron": "^19.1.4"
}
}

Binary file not shown.

Binary file not shown.

View File

@ -1 +0,0 @@
19.1.4

Binary file not shown.

View File

@ -1 +0,0 @@
{"file_format_version": "1.0.0", "ICD": {"library_path": ".\\vk_swiftshader.dll", "api_version": "1.0.5"}}

Binary file not shown.