Coder Social home page Coder Social logo

jshifrin25 / desk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hihaheho/desk

0.0 0.0 0.0 1.74 MB

๐Ÿ”ฎ The application platform for your cyberpunk desk

Home Page: https://desk-x.com

License: Other

Shell 0.27% Rust 99.68% HTML 0.05%

desk's Introduction

Desk

๐Ÿ”ฎ The application platform for your cyberpunk desk

Demo MIT/Apache 2.0 GitHub Sponsors GitHub Repo stars

No Release!

Status: All releases are behind the previous schedule for several reasons, so I updated it below.

Reasons:

  • I'm building query-flow for deskc and dworkspace.
  • I plan to discard the current mirgen and design a new MIR intervening between Desk-lang and low-level IR to generate a GC-less binary, which is fast as Rust in theory (in my mind).
  • I've switched to Ubuntu Desktop from M1 Macbook Pro mainly for financial reasons. As a subsequence of it, I can utilize the mold linker.
  • I've returned to Neovim after several years of a temporary stay in the VSCode.
  • With the lowest priority, I have about three my own projects now to improve IDE experience with the Neovim ecosystem.
  • I've built a Keyball39, a split keyboard placing a injection-molded trackball slot in the really ergonomic position.
  • I'm going to completely re-design the Desk-lang.

Pre-release (by the end of 2025)

Pre-release includes:

  • incremental Desk-lang compiler
  • DeskVM with an official scheduler
  • a file system for Desk-lang
  • Desk-lang visual editor
  • A web demo like Rust Playground for Desk-lang

The first release (by the end of 2030)

The first release includes:

  • MVP of Desk Craft, a game engine
  • a platformer game demo
  • a space to publish created games
  • real-time collaboration on Web
  • paid plans for Desk X (official hosting)

See the draft of the first release

Goals and Philosophy

๐ŸŽฏ Blur the line between living and coding ๐ŸŽฏ Make every software programmable

  • ๐ŸŽฎ Intuitive like games
  • ๐Ÿฅผ Pragmatic like professional tools
  • ๐Ÿ—บ๏ธ๏ธ Versatile like spreadsheets
  • ๐Ÿ’— Accessible to everyone
  • ๐Ÿ›น Minimalist design

Why Desk?

Desk apps are inherently:

  • ๐ŸŽผ code-oriented like data-oriented
  • ๐Ÿ”’ statically-typed (data and UI)
  • ๐Ÿค– programmable (extensible by code)
  • ๐Ÿงฒ interoperable with other Desk apps
  • ๐Ÿ“ฑ running on everywhere (web, desktop, mobile)

How does Desk work?

Desk is consist of:

  • Desk Programming Language and Desk Compiler (deskc)
  • Desk Workspace System (dworkspace)
  • DeskVM (deskvm)
  • Desk-plugins (dplugins)

Desk Programming Language (Desk-lang)

Desk-lang is a programming language that has:

  • minimalistic syntax and semantics
  • type system with inference
  • algebraic effects
  • content-addressable by type and UUID
  • incremental compilation

Most of the data and programs on Desk apps are finally evaluated as a snippet of Desk-lang.

Desk Compiler (deskc)

Desk compiler is an incremental compiler for Desk-lang.

Crates

Desk-workspace (dworkspace)

Desk-workspace is a platform-agnostic environment for editing Desk-lang.

Desk-workspace provides these features:

  • file system for Desk-lang
  • permission management system
  • realtime collaboration support

Crates

DeskVM (deskvm)

DeskVM is a runtime for Desk-lang influenced by Erlang VM.

Features

  • platform-agnostic
  • capable of running many programs as a d-process
  • type-driven message passing and pub/sub
  • interpreter-agnostic: DeskVM can run anything as a d-process
  • preemptive scheduling
  • custom scheduler support

Crates

Desk-plugins (dplugins)

There are many Desk-plugins. Each Desk-plugin implements a single feature as a Bevy Plugin.

  • ๐Ÿšง Desk Craft for game development
  • ๐Ÿšง Desk Brain for productivity
  • ๐Ÿšง Desk Verse for communication
  • ๐Ÿšง Desk Robot for automation
  • ๐Ÿšง Desk Board for BI
  • ๐Ÿšง Desk Calendar for scheduling
  • ๐Ÿšง Desk Pages for hosting

๐Ÿšง not yet implemented

Is it any good?

Yes.

Resources

Join our community

๐Ÿ‘‰ Q&A Have a question?

๐Ÿ‘‰ GitHub Discussions

๐Ÿ‘‰ GitHub Repo stars

๐Ÿ‘‰ Twitter Follow

๐Ÿ‘‰ Discord

desk's People

Contributors

ryo33 avatar renovate[bot] avatar dependabot[bot] avatar jsinger67 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.