Git Product home page Git Product logo

cornerstone-framework's Introduction

Cornerstone Framework

소개

Cornerstone Framework은 모바일 및 데스크탑 환경에서 동작하는 고품질의 웹 페이지 또는 웹 앱을 제작할 수 있는 Client-side Framework이다.

디렉토리 구조

--- dist
 +- test
 +- lib
 +- build
 +- examples --- cornerstone-ui
 |            +- form
 |            +- gesture
 |            +- guide
 |            +- livedoc
 |            +- lottery
 |            +- multipage
 |            +- page-transition
 |            +- smart-bill
 |            +- T-Dashboard
 |            +- widget-chart
 +- src --- launcher
 |       +- loader
 |       +- mvc
 |       +- style
 |       +- ui
 |       +- util
 |       +- widget
 +- doc --- 1. User_Document --- images
 |       +- 2. Reference ------- images
 |       +- 3. Runtime --------- images
 +- tools
 +- web
  • src : Framework 소스 코드들을 보관
  • lib : Framework이 의존하는 Open Source 제품들을 보관
  • test : Framework의 동작, 성능을 검증하기 위한 코드들을 보관
  • dist : Framework의 가공된(minified, optimized) 배포판들을 보관
  • build : Framework을 빌드(src, lib를 가공해서 dist로 배포하고 저장소에 업로드하는 작업)하는 코드를 보관
  • doc : Framework의 가이드 문서를 보관
  • examples : Framework의 예제 애플리케이션의 코드들을 보관
  • tools : Framework을 지원하는 도구(Cornerstone CLI)와 관련된 파일들을 보관
  • web : 코너스톤 홈페이지의 소스 보관

브랜치는 다음과 같은 용도로 사용한다.

  • master : 외부에 노출 가능한 완성본 (Release branch)
  • dev : 내부 개발시에 사용 (코너스톤 1)
  • dev-2.0 : 내부 개발시에 사용 (코너스톤 2)

COPYRIGHT(C) 2012 BY SKTELECOM CO., LTD. ALL RIGHTS RESERVED.

cornerstone-framework's People

Contributors

azamara avatar jang-jungin avatar jonghyun-jeon avatar nmj21c avatar pieces49 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cornerstone-framework's Issues

안정성 검증 결과 공유 부탁드립니다.

안녕하세요.

저희 프로젝트에 코너스톤 프레임워크 도입을 검토중입니다.
그리고 내부적으로나 고객사 측에서 프레임워크의 안정성을 가장 걱정하고 있는 상황입니다.

SKT 측에서도 프레임워크를 구축하시면서 다양하게 테스트를 해보셨을거라 생각하는데요
테스트 환경(디바이스, OS 등) 별로 안정성 검증 결과라던지 테스트하신 내용을
공유해주시면 좋겠습니다.

감사합니다.

카메라 플래쉬도 제어 할 수 있나요?

코너스톤을 통해서 단말의 여러 자원들을 콘트롤 할수 있으면 좋겠어요. 특히 카메라 플래쉬. 친구들이 가진 단말 여러개의 플래쉬를 제어해서 인상적인 효과를 만들고 싶거든요.

TypeError: $(...).ajaxForm is not a function

간혹 제목과 같은 에러가 납니다.

에러 안나게 하는 방법이 없을까요?

그리고, widget-plugins 의 spinner() 도 간혹 "is not a function" 에러가 납니다.


ajaxForm 과 관련해서 추가한 내용입니다.

app-container.js : "ajaxForm":Cornerstone.PATH_LIB+"jquery.form",
add.js 에서 :

define([ . . . , 'ajaxForm','widget-plugins'], function( . . . ) {
  return Backbone.View.extend( {
    events: {
      'click .btn-primary' : 'addUser',
    },
    addUser: function() {
      val model = this.formView.toModel();
      if( model.isValid() ) {
        $('#upload-form').ajaxForm({
           beforeSubmit: function() {
              $('html').spinner('show');
           },
           success: function(response, status, xhr){  (여기에서 에러가 납니다.)
              $('html').spinner('hide');
               . . .
           }
        });
        $('#upload-form').submit();
      }
      return false;
    },
 });
});

Android Runtime을 이용한 이클립스 설정 및 폴더구조를 알고자 합니다.

제가 궁금한것은
이클립스에 다운받은 Android Runtime을 import후에 다운받은 Framework 소스를
어디에 넣어야 하는모르겠습니다.

아니면 제가 잘못 생각하고 있나요?

Android Runtime과 cornerston framework는 별개인가요?

이클립스에서의 환경과 폴더구조를 알고 싶습니다.
밑에 폴더구조와 관련된 답변이 있지만 이클립스환경에서 폴더구조를 다시한번
알려주셨으면 합니다.

test-mvc 샘플 detail.js 에 삭제확인을 넣었는데, 삭제확인이 중복됩니다.

test-mvc 샘플 소스에서 상세보기를 하면 detail.js 가 실행 되는데요.
삭제전에 confirm() 으로 확인하는 것을 추가했습니다.
그랬더니 상세보기를 한 횟수만큼 confirm() 창이 중복해서 뜨는 현상이 있습니다.

define( [ 'backbone', 'jquery', 'template!tmpl/detail' ], function( Backbone, $, template ) {

    return Backbone.View.extend( {

        el: 'section#detail-section',

        initialize: function() {
        },

        render: function() {
            this.$el.html( template( { user: this.model.toJSON() } ) );
            return this;
        },

        events: {
            'click button#delete-button': 'delete'
        },

        'delete': function() {
            if( confirm('삭제할까요?') ) {
                this.model.destroy();
                location.href = '#list';
            }
        }
    } );
} );

example/cornerstone-pinterest 에서 handlebars-1.0.0.beta.6.js 을 찾는데요

handlebars-1.0.0.beta.6.js 못 찾고 에러나오면서 동작하지 않습니다.
app-container.js에서 handlebars-1.0.0.beta.6.js 파일을 handlebars.js 로 수정해서 실행해 하니
Uncaught TypeError: Cannot call method 'compile' of undefined template.js:7 에러나 나오네요..
템플릿관련해서는 아는 것이 없 어떻게 수정해야 할지 모르겠습니다.

권한 요청

contributor는 사내직원이 아니면 참여가 불가능한가요? :)

오오, 짜릿한데요. 1빠

관심 많은 1인입니다.
러프하고 케주얼하게 모바일 런타임 릴리즈 계획을 알고 싶습니다.
퐈이팅입니다 ^o^

npm install cornerstone-cli 설치가 올바르게 되지 않는 이슈

Mac OS X Mavericks (10.9.2)에서 개발을 위해
터미널에서 아래 커맨드를 통해 설치를 시도했으나,
"sudo npm install -g cornerstone-cli"

package.json의 script 섹션 (https://github.com/cornerstonewdk/cornerstone-framework/blob/master/tools/cornerstone-cli/src/package.json#L16) 의 내용이 권한문제로 인해 올바르게 실행되지 않아서 설치에 실패합니다.

해당 이슈의 원인은 package.json 에 포함된 script 구문은 npm-config의 user (기본값은 nobody) 로 수행되는데, 여기에서 권한문제가 발생하여 해당 스크립트가 정상적으로 수행되지 않고 실패하기 때문입니다.

이를 해결하기 위해서 임시방편으로 "npm config set unsafe-perm true" 커맨드를 통해 package.json의 script를 실행할때 gid/uid 를 변경하는것을 막고 설치를 진행할 수 있습니다.
(https://www.npmjs.org/doc/misc/npm-config.html#unsafe-perm 참고)

해당 이슈는 Mac OS X의 문제 뿐만 아니라, 일부 리눅스 배포판 (Ubuntu/Raspbian 등) 에서도 발생하는것으로 추정됩니다.

모바일 브라우저 지원 문의

안녕하세요~
모바일 브라우저 지원이 아래와 같이 명시되어 있는데요.
해당 지원브라우저보다 버전이 낮을 경우 발생하는
문제점에 대해서 알수 있을까요?

[Mobile 브라우저]
-iOS 5 이상의 기본 브라우저
-Android 4.0 (ICS) 이상의 기본 브라우저

ajaxForm 으로 파일업로드를 하려고 하는데요.

dataType 이 'json' 일 때는 데이타가 서버로 올라가는데요.

dataType 이 'jsonp' 로 하면 데이타가 서버로 올라가지 않습니다.

위 2가지에 따라 결과가 다른데요,
json 일때는 error 함수가 실행되고
jsonp 일때는 success 함수가 실행됩니다.

ajaxForm 정보입니다.

실제 개발에 적용 해 보려 합니다.

코너스톤의 엄청난 기능을 체험하고 실제 개발을 해볼려고 합니다.

홈페이지의 Framework링크를 통해 다운로드를 하였는데요, 파일들의 구조도 잘 잡혀 있었습니다.

그런데 막상 개발을 진행 할려고 보니, 어디에 비지니스 로직을 구현하고, 실질적인 개발은 어떻게 해야 할지 가이드가 없습니다.

자바스크립트 라이브러리는 별도로 스터디 해야 하겠지만, 구조를 잡는 부분은 가이드해 주셨으면 합니다~~~

그럼 앞으로 프로젝트 진행하면서 발생하고 해결한 이슈들로 많은 정보 공유 하였으면 합니다.

감사합니다.

eclipse에서 코너스톤 프레임워크사용할때 질문드립니다.

eclipse를 사용하고
http://cornerstone.sktelecom.com/cornertest/test-form/ 이부분 테스트를 할려고하는데요

main.js 부분이 먹히지가 않네요

css파일은 제대로 작동되는데

main.js부분과user.js alert-validation.js부분이 먹히지가 않네요

디렉토리구성은
assets/dist/lib
assets/dist/laucher.js

assets/www/script/model/user.js
assets/www/script/view/alert-validation.js
assets/www/index.html이고

index.html 소스는
맨아래 main호출하는 부분이 이렇게 되있습니다

<script src="../dist/launcher.js" data-target="script/main"></script>

user.js 와 alert-validation.js 부분은 변경안했습니다

답변주시면 정말감사하겠습니다

공모전을 위해 살펴보니 ...

현 상태로는 Framework라고 부를 수 없습니다. 이를 바탕으로 웹앱을 개발하여 출품하라는 것은 더욱이 할 말을 잊게 하는 군요. 하지만, 하나씩 정리해 나간다면, 코너스톤이 이루고자 하는 목표로 한 발씩 나아갈 수 있지 않을까 합니다. 제 개인적인 느낌으로는 새로운 repository에서 작은 것부터 다시 시작하는 것이 필요한 시점으로 보입니다. 현 repository는 연습장 respository로 보입니다.

Phase 1. 개발환경 재정비

  • 첫번째 단계에서는 cornerstone 이 의존하는 모듈들을 Git repository에서 submodule, bower package, npm package 등으로 분리하여 Original code와 가져다 쓰는 코드를 분리하여야 합니다. 현재와 같이 타인이 개발한 코드를 git repository에 copy 해서 사용하는 것은 좀 아닙니다. 패키지 관리 기능은 자체 개발하기 보다 이미 사용되는 여러 툴들 중에서 하나를 선택하여 전체 framework 에서 사용하는 것이 좋겠습니다.
  • 각각의 모듈은 별도의 Git repository로 만들고 submodule 등을 통해 전체를 통합하는 repository로 연결한다. 특히 SKT OPEN API와 같은 부분은 별도의 Git repository로 빼고, Gruntjs 등을 활용한 빌드와 테스트 자동화가 들어가야만 진정한 API로 활용될 수 있을 것으로 생각합니다. 작은 모듈 하나 하나의 완성도를 높히지 않고 모든 것을 모아놓기만 한다면, 발전 가능성은 없습니다. SKT Open API 에 보다 집중하여 완성도를 높이거나 우선순위가 높은 것이 아니라면 해당 모듈을 framework에서 빼는 것이 낫겠습니다.
  • package.json 파일을 생성하고 dependency를 정의한다. UI 모듈등에 대해서는 현재 test라고 불리는 페이지들은 kitchen sink 라고 볼 수 있는 것들로 실제로 test와는 거리가 멉니다. 이런식으로 마치 테스트가 되고 있는 듯이 얘기하는 것은 신뢰도만 떨어뜨릴 뿐입ㄴ다. cornerstone의 theme에 대한 Kitchen sink 페이지를 구성하고 test라는 명칭은 사용하지 않는 것이 정확하며 해당 페이지를 로컬 개발환경에서 확인할 수 있도록 간단한 서버 스크립트를 scripts 폴더(새로 생성)에 만들어야 겠습니다.

전체적으로 UI widget 이나 theme을 중심으로 하고 있는데 하고자 하는 framework의 핵심이 뭔지 모르겠습니다. Runtime이 핵심이라면 해당 내용만 가지고 framework화 하는 방안이 필요하고, UI, widget이 중심이라면, 그냥 bootstrap theme repository로 만족하는 것이 나을 듯 하며, 프로젝트 skeleton 이 중심이라면, Seed 리포지토리 정도로 발전시키는 것이 보다 정확한 것 아닌가 생각합니다.

두서없이 열거하였습니다. 개인의견으로 참고해 주시기 바랍니다.

강민수 드림.

backbone, jquery, underscore 등 전역적으로 사용하는 것들은 backbone 에서 그냥 사용할 수 있게 할 수 없나요?

현재 backbone, jquery, underscore 이런 것들을 사용하려면 일일이 파라메터로 지정해서 사용해야 합니다.
defind(['backbone', 'jquery', 'underscore'],
function( Backbone, $, _ ) () {
return Backbone.View.extent({});
}); 이런식으로 일일이 파라메터로 지정해서 사용해야 하는데요.
너무 불편합니다.
뭔가 기능 추가를 하면 "is not a function" 에러가 빈발합니다.
spinner 기능을 쓰려고 해도 마찬가지고
ajaxForm 도 그렇고, 뭔가 방법이 없을까요?

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.