{"id":18698660,"url":"https://github.com/genesisneo/sokan","last_synced_at":"2025-04-12T07:33:06.026Z","repository":{"id":37777792,"uuid":"102274794","full_name":"genesisneo/sokan","owner":"genesisneo","description":"Easily organize windows without using a mouse.","archived":true,"fork":false,"pushed_at":"2025-02-28T22:13:00.000Z","size":464,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-04T22:19:07.305Z","etag":null,"topics":["app","application","control","css","css3","electron","html","html5","javascript","move","nodejs","window","windows"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/genesisneo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-09-03T15:37:40.000Z","updated_at":"2025-02-28T22:15:02.000Z","dependencies_parsed_at":"2024-11-07T11:43:21.503Z","dependency_job_id":null,"html_url":"https://github.com/genesisneo/sokan","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/genesisneo%2Fsokan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/genesisneo%2Fsokan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/genesisneo%2Fsokan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/genesisneo%2Fsokan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/genesisneo","download_url":"https://codeload.github.com/genesisneo/sokan/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248534401,"owners_count":21120318,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["app","application","control","css","css3","electron","html","html5","javascript","move","nodejs","window","windows"],"created_at":"2024-11-07T11:29:20.733Z","updated_at":"2025-04-12T07:33:06.017Z","avatar_url":"https://github.com/genesisneo.png","language":"JavaScript","funding_links":["https://www.buymeacoffee.com/genesisneo"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./assets/application.jpg\"\u003e\u003cbr\u003e\u003cbr\u003e\n\u003c/p\u003e\n\n# Sōkan (壮観)\n\nEasily organize windows without using a mouse.\n\n---\n\n#### Table of Contents:\n* [Download](#download)\n* [Support this project](#support-this-project)\n* [How to setup](#how-to-setup)\n* [Development](#development)\n* [Task Scheduler](#task-scheduler)\n* [Question](#question)\n\n---\n\n## Download\n\nYou can download the application on the release page.\u003cbr /\u003e\nhttps://github.com/genesisneo/sokan/releases\n\n---\n\n## Support this project\n\nIf you rely on this tool and find it useful, please consider supporting it.\u003cbr /\u003e\nMaintaining an open-source project takes time and a cup of coffee would be greatly appreciated!\n\n\u003ca href=\"https://www.buymeacoffee.com/genesisneo\" target=\"_blank\"\u003e\n  \u003cimg\n    src=\"https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png\"\n    alt=\"Buy Me A Coffee\"\n    style=\"height: 64px !important; width: 228px !important;\"\n  /\u003e\n\u003c/a\u003e\n\n---\n\n## How to setup\n\n* Please note that this application only works on **_Windows_** operating system\n* Download, Fork, or Clone this repo\n* Download and install [Node.js ^20.12.2](https://nodejs.org/en/download/releases/).\u003cbr /\u003e\nIf you need multiple versions, you can use [nvm-windows](https://github.com/coreybutler/nvm-windows)\n* Install the latest **_Python_** from [Microsoft App Store](https://apps.microsoft.com/search/publisher?name=Python+Software+Foundation).\u003cbr /\u003e\nI use [Python 3.12](https://www.microsoft.com/store/productId/9NCVDN91XZQP?ocid=pdpshare) when developing this project\n* Install **_Visual Studio 2019_** or later.\u003cbr /\u003e\nUse the `Desktop development with C++` workload from [Visual Studio Community](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community)\n* Open your preferred **_shell_** as Administrator and execute this command\n```\nSet-ExecutionPolicy RemoteSigned\n```\n* Install `node-gyp` globally\n```\nnpm i node-gyp -g\n```\n* Navigate back to this repo and install all the dependencies\n```\nnpm i\n```\n* You can now do the following:\n```\n# start application\nnpn run start\n\n# clean the application\nnpm run clean\n\n# package the application\nnpm run package\n\n# build the portable\nnpm run build\n```\n\n---\n\n## Development\n\nTo show developer tool and excute console log.\u003cbr /\u003e\nYou can add the following code after `window.loadFile`.\n\n```\nwindow.webContents.openDevTools();\nwindow.webContents.executeJavaScript(`console.log(\"\u003e\u003e\u003e ${process.execPath}\")`);\n```\n\n---\n\n## Task Scheduler\n\nSince the application is not signed, it will not run on Windows start, even if the application is added on the following:\n\n```\n# registry editor\nComputer\\HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\n# windows startup\n%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\n```\n\nTo run the application on Windows start, we can use Task Scheduler. The `scheduler.bat` file, will create a basic task when **_Run as administrator_**.\n\nPlease note that before running this file as administrator, edit the file using Notepad or your preferred text editor and update the `\"C:\\PATH\\TO\\Sokan.exe\"` accordingly. See example below.\n\n```\nSCHTASKS /CREATE /SC ONSTART /TN \"Sokan\" /TR \"C:\\Program Files\\Customization\\Sokan.exe\" /RL HIGHEST\n```\n\n---\n\n## Question\n\nIf you have question, you can always contact me on Twitter [@genesis_neo](https://twitter.com/genesis_neo) and of course here in GitHub [@genesisneo](https://github.com/genesisneo). Thank you.\n\n---\n\n\u003cp align=\"center\"\u003e-=[ :heart: ]=-\u003c/p\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgenesisneo%2Fsokan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgenesisneo%2Fsokan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgenesisneo%2Fsokan/lists"}