Skip to content

svr8/Desk

Repository files navigation

Desk

A light-weight ide for competitive programming. The editor uses ace-editor as syntax highlighter and electron that wraps up everything.

Features

  • Auto Detect language from file extensions and configure its system commands accordingly. No need to setup build files, install and ready to go.
  • There is a IO panel to quickly change inputs. Custom IO files are also supported.
  • Keyboard shortcuts to compile/run/stop.
  • Minimal design, dark theme.

Screenshot

Downloads

Instructions

  • For executing Java files, please make sure that the class name that contains main() method is same as the filename.
  • In case of custom build paths, configure the ide in settings>build commands.

Important Keyboard Shortcuts

  • Ctrl + 1 : Compile
  • Ctrl + 2 : Start Execution
  • Ctrl + 3 : Stop Execution
  • Ctrl + I : Toggle I/O Panel

Running Locally

Prerequisites

Setup

  • Install electron globally
    npm install electron -g
    You might face installation issues. If the above fails, this should work:
    npm install -g electron --unsafe-perm=true --allow-root

  • Clone the repository
    git clone https://github.com/svr8/Desks.git

  • Install dependencies
    cd into cloned directory and execute: npm install

Run

  • Run
    npm start

Build

Please refer to the tutorial on electron-installer-debian and electron-packager.

Build Linux

electron-packager . --overwrite --asar=true --platform=linux --arch=x64 --icon=assets/icons/png/512x512.png --prune=true --out=release-builds

Build .deb using Build Linux

electron-installer-debian --src release-builds/Desk-linux-x64/ --arch amd64 --config debian.json

Mac Build

electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds

Windows Build

electron-builder --windows nsis:ia32

Contribution

Feel free to fork and send PRs or even open issues. Please send any feature requests as issues too. It would be great if you can help in adding support for more languages. Checkout Wiki for detailed information. Moreover, there is a custom source-code-editor in pre-alpha stage here.

Credits

Designed By : Divyakant Singh and Veer Singh
Developed By : Shikhar Vaish (MIT LICENSE)