Giter Club home page Giter Club logo

blockgram's Introduction

logo

Team

  • Brandon Hung @qilin2: Team Lead, Team Manager, Frontend, UI/UX Design
  • Sunho Kim @sunho : Co-Lead, Frontend, Backend, UI/UX Design, Database
  • Wei Quan Lai @LaiWeiQuan & Eren Saglam @ghostpyy: CockroachDB Database.
  • Merlin Ho @clairvoyage : UI/UX Design

About

An interactive and dynamic educational programming interface that simplifies complex structures into simple sentences for better interpretability & understanding. This app is entirely built from scratch.

CalHacks 9.0 Submission

gif

Inspiration

Inspired by Scratch Programming and tutoring young kids coding, words and letters are too dull and boring for them. Having a tool to let them visualize makes coding interesting and easily understandable. ui

Functionality

C and C++ programming language is especially challenging language to learn as a beginner. Compared to higher languages like python and javascript, they have more tricky concepts such as pointers that makes the language not really approachable. What we built is a real time bi-translator between scratch-like block language and c/c++ which allows students to toy around with text and block code simultaneously. This enables students to learn complicated programming languages like c/c++ more hands-on, intuitive way.

workspace

How It's Built

CParser written in javascript to get C AST and implemented a DFS style conversion from C AST to our own blocking language tree representation. We implemented reverse conversion from blocking language tree to C code so that bi-translation works perfectly. We got a virtual machine for our own block coding language which makes the simulation of variables and expression interpretation more low-level. It allows to implement visualization of control structure and variables changes more easily. We also used cockroachdb to implement code sharing function. CockroachDB fitted into this purpose since it could be used to visualize the traffic of share real time using CockraochLabs.

compile

How to Run

  1. Download the .zip file or use git clone.
  2. run npm install
  3. run npm start

Built with

  • ReactJS
  • Database

THANK YOU ! :)

blockgram's People

Contributors

ghostpyy avatar jadek9 avatar sunho avatar

Watchers

 avatar

Forkers

ghostpyy

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.