Skip to content

Instantly share code, notes, and snippets.

@easylogic
Last active August 28, 2015 14:43
Show Gist options
  • Save easylogic/80bb76818efa0cb091a6 to your computer and use it in GitHub Desktop.
Save easylogic/80bb76818efa0cb091a6 to your computer and use it in GitHub Desktop.
easylogic 을 쓰자.

Box 에 블럭을 담아보자.

  • gist 와 비슷하게 되겠다.
  • block 의 이름은 확장자가 무엇이냐에 따라 달려있다.
  • block 의 이름이 바뀌면 자동으로 확장자를 검색해서 syntax highlighting 구조가 바뀐다.
  • 실행할 수 있는 파일 확장자를 잘 지정해야할지도 모르겠군
  • 모든 것은 sandbox 안에서 실행이 되어야 한다.
  • sandbox 를 어떻게 만드나 ?

Block 을 import 하자.

@require name.ext  # 로컬 블럭 
@require external/name.ext  #외부 블럭 
@require https://host.com/external/name.ext #외부 리소스 
  • block (또는 piece) 을 생성한다.
  • block 은 왼쪽에는 편집, 오른쪽에는 뷰어 형태로 구성된다.

예를 들어

  • 왼쪽에 html 편집기가 있으면 오른쪽에는 그 html 이 보이는 것이다.
  • 왼쪽에 markdown 편집기가 있으면 오른쪽에는 markdown 뷰가 보인다.

기존에는 대부분 여기서 끝났다.

  • 왼쪽의 블럭은 계속 추가 될 수 있다.

예를 들어

  • html 블럭에 js 블럭과 css 블럭이 올 수 있다.

  • js, css 는 각각 전처리기를 가질 수 있고

  • 추가 되는 개수에 제한은 없다.

  • 각각의 블럭은 하나의 이름을 가지고 확장자는 각각의 타입에 따른다.

  • 이름을 가진 블럭은 공유를 할 수 있다.

  • namespace.name.ext 형태를 가진다.

  • 블럭은 박스로 모이고 박스는 다른 박스로 확장 될 수 있다.

  • 박스에 모인 블럭을 가지고 view 를 만들어 낸다.

  • 하나의 박스에는 여러가지 view 가 있을 수 있다.

  • 뷰는 template 처럼 여러개를 조합해서 무한히 만들 수 있다.

  • 뷰는 외부 박스의 블럭을 가지고 와서 조합해도 된다.

  • 박스는 이름을 가지고

  • 박스 밑에 있는 블럭도 이름을 가지고

  • box name/block name.ext 형태로 접근한다.

  • 모든 정보는 json 으로 저장이 되고

  • 캐쉬 여부는 box 에서 결정한다.

  • box 는 자신만의 information 을 가지고 있는데 이름 이외의 설정들이 들어있다.

  • block 은 code block 과 view block 으로 나뉘고

  • code block 은 실제 구현하는 파일 이 되고

  • view block 은 code 블럭을 조합해서 보여주는 block 이다.

  • 이 때 외부 블럭을 box/block.ext 혀태로 가지고 올 수 있다.

  • 최초 템플릿은 html code block 과 그것을 보여주는 html view block 이 있다고 가정하고 시작한다.

  • 각각의 블럭은 directory 의 파일로 저장이 되며

  • 다른 유저에 의해서 참조할 수 있다.

  • 블럭의 이름이 없을 때는 블럭이 나열된 순서로 설정한다.

  • 디렉토리 구조를 잡아보자.

/code/box****/blockname.ext 
/view/box****/blockname.ext
  • 모든 것은 오픈이다.

  • 비공개는 없다.

  • 각 block 마다 좋아요를 누를 수 있다.

  • 썸네일은 구현하지 않는다.

  • 거대한 라이브러리 저장 창고가 될 것 이다.

  • UI, component, framework 머든 작성할 수 있다.

  • box 는 최종 결과물이 될 수 있고

  • zip 형태로 다운로드 받을 수도 있다.

  • box 는 여러개의 view block 을 가지고 있다. view block 은 조합된 여러가지 리스트를 가지고 자신만의 결과물을 만들어낸다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment