Skip to content

Instantly share code, notes, and snippets.

View TheArmagan's full-sized avatar

Kıraç Armağan Önal TheArmagan

View GitHub Profile
@TheArmagan
TheArmagan / vrckit-search.md
Last active May 26, 2025 17:39
Learn how to search in Library in VRCKit. With complex search feature.

Keys

Keys you can use for searching: id, name, author_id, author_name, description, tags, platforms, uploader_id, created_at, updated_at, user_tags, ai_tags, ai_tags_v2, favorite_count, comment_count, selected_count, all.

Examples

  • description*:"girl" name*:"girl" - Description and name must contain girl.
  • description?*:"girl" name?*:"girl" - Description or name can contain girl.
  • description*:"girl" tags!*:"sex" - Description must contain girl and tags must not contain sex.
  • ai_tags*:["tag1", "tag2"] - Must have tag1 and tag2 on AI Tags. This is an AND condition.
  • ai_tags?*:["tag1", "tag2"] - Can have tag1 or tag2 on AI Tags. This is a OR condition.
@TheArmagan
TheArmagan / elkbledom-noble.js
Created May 26, 2024 14:39
ELK-BLEDOM led controller using nodejs noble
const noble = require('@abandonware/noble');
noble.on('stateChange', (state) => {
if (state === 'poweredOn') {
noble.startScanningAsync([], false);
}
});
function buildColorBuffer(r, g, b) {
return Buffer.from([0x7e, 0x00, 0x05, 0x03, r, g, b, 0x00, 0xef]);
// @ts-nocheck
// The MIT License (MIT)
//
// Copyright © 2021-2022 Kıraç Armağan Önal
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files(the “Software”), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and / or sell
// copies of the Software, and to permit persons to whom the Software is furnished
@TheArmagan
TheArmagan / ReconnectingWebSocket.js
Last active June 30, 2021 21:07
NODEJS ReconnectingWebSocket
const { EventEmitter } = require("events");
const WebSocket = require("ws");
class ReconnectingWebSocket {
/** @type {string} */
address;
/** @type {WebSocket.ClientOptions} */
clientOptions;
@TheArmagan
TheArmagan / CekCek.json
Created June 29, 2021 19:58
OBS CekCek | Sence Collection
{"current_program_scene":"Main Area","current_scene":"Main Area","current_transition":"Cut","groups":[{"balance":0.5,"deinterlace_field_order":0,"deinterlace_mode":0,"enabled":true,"flags":0,"hotkeys":{"libobs.hide_scene_item.Color Source":[],"libobs.hide_scene_item.Color Source 2":[],"libobs.show_scene_item.Color Source":[],"libobs.show_scene_item.Color Source 2":[]},"id":"group","mixers":0,"monitoring_type":0,"muted":false,"name":"Group","prev_ver":452984833,"private_settings":{},"push-to-mute":false,"push-to-mute-delay":0,"push-to-talk":false,"push-to-talk-delay":0,"settings":{"custom_size":true,"cx":912,"cy":528,"id_counter":0,"items":[{"align":5,"bounds":{"x":0.0,"y":0.0},"bounds_align":0,"bounds_type":0,"crop_bottom":0,"crop_left":0,"crop_right":0,"crop_top":0,"group_item_backup":false,"hide_transition":{"duration":0},"id":6,"locked":false,"name":"Color Source 2","pos":{"x":0.0,"y":0.0},"private_settings":{},"rot":0.0,"scale":{"x":0.47460940480232239,"y":0.48819440603256226},"scale_filter":"disable","sh
@TheArmagan
TheArmagan / scuffedOWOTLocal.html
Created June 16, 2021 07:10
Small OWOT Client made with vue2
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Our World Of Text Scuffed Edition</title>
<style>
* {
padding: 0;
function split(inputString, separateWith)
if separateWith == nil then
separateWith = ", "
end
local t={}
for str in string.gmatch(inputString, "([^"..separateWith.."]+)") do
table.insert(t, str)
end
return t
end
@TheArmagan
TheArmagan / json.lua
Created June 6, 2021 00:37
Useful when working with computer craft.
------------------------------------------------------------------ utils
local controls = {["\n"]="\\n", ["\r"]="\\r", ["\t"]="\\t", ["\b"]="\\b", ["\f"]="\\f", ["\""]="\\\"", ["\\"]="\\\\"}
local function isArray(t)
local max = 0
for k,v in pairs(t) do
if type(k) ~= "number" then
return false
elseif k > max then
max = k
YARRR ALLAH
@TheArmagan
TheArmagan / timezonedb-api.md
Last active June 4, 2021 16:43
Timezone DB - API Documentation

Timezone DB - API Documentation

BASE URL: https://timezonedb.armagan.rest/

Get only one user's info.

GET /api/get/timezone

Query Parameters:

  • id: The target user's platform id. (Example: 707309693449535599, Default: none)