Giter Club home page Giter Club logo

splootcode's Introduction

SplootCode Editor

An experimental coding interface that's tree-based.

For progress updates, please join the mailing list on splootcode.io.

Screenshot of SplootCode example

With a regular text-based programming language, the first step to process it is to parse it into an abstract-syntax-tree. In the SplootCode editor, the user edits the tree directly and that tree can then include more semantic meaning.

Code no longer has to rely on cryptic punctuation characters and whitespace to represent structure. Instead the layout can be auto-generated, depending on screen size and user preferences.

That being said, building a tree-editing interface that's fast, compact and intuitive is no easy feat. This is very much a work in progress.

Goals

  • An unrestricted implementation of JavaScript
  • Fast and easy to edit using a keyboard and autocomplete
  • A responsive layout that adapts to different screen sizes
  • Help developers avoid syntax errors and other common programming errors
  • Avoid busywork like escaping, bracket matching, wrapping and whitespace
  • Let beginners focus on the logic of their code rather than the syntax

Development

Requirements

You'll need to have nodejs and yarn installed.

Local Dev Server

Local dev is set up using webpack-dev-server which includes hot reloading.

Install dependencies:

$ yarn install

Generate type information for built-in Javascript variables and functions.

$ yarn generate-types

The editor includes an iframe which executes the code as a preview. You will need to run the webpack devserver for both the main app and the frame.

$ yarn start

And in a separate terminal:

$ yarn start-frame

License

If you're planning to use this for commercial purposes, please check the LICENSE file. It is not a standard open source license.

splootcode's People

Contributors

katharosada avatar kurahaupo avatar

Watchers

James Cloos avatar  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.