Git Product home page Git Product logo

lcars-sdk's Introduction

LCARS SDK 19182.4

The LCARS SDK is a UI/UX source development kit and environment umbrella designed specifically for generating functional interfaces with the LCARS methodology within a webview. Utilizing a webview the LCARS SDK can be applied to cross-modern internet browsers, both mobile and desktop applications. Anywhere a webview is in place the LCARS SDK could be utilized.

V4 Update is an entire rewrite of the library. It is not backwards compatiable and is no properly stored proptotyped objects, data driven and designed for easy data connectors.

Included:

  1. Illustrator files for mockups and direct sizing porting.
  2. Base CSS which is the minimal requirement to utilize the LCARS methodology.
  3. JS API which is optional but useful for creating, managing and maintaining the interfaces.

Example Interfaces will be provided at a later date.

For more information:

http://www.lcarssdk.org/
https://www.facebook.com/LCARSSDK
https://github.com/Aricwithana/LCARS-SDK/wiki

To learn how to use the LCARS SDK read through the attached wiki.

lcars-sdk's People

Contributors

aricwithana 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  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  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  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

lcars-sdk's Issues

Elbow radii

Let me start by complimenting you on this breathtaking API. LCARS was one of the reasons I stayed so passionate with software engineering--specifically UI and layout engineering.

So, I've been happily trying to understand and deconstruct your approach. It's fabulous! However, I did find one small, but significant detail that I commonly question with LCARS implementations: the Elbow. From my research, the inner and outer radii share a commonality with the content of the inner pane, or the margin. Specifically, this is what I have observed (taken from a screenshot of Star Trek: Nemesis):

image

Essentially, the radius of the outer border works harmoniously with the radius of the inner border. I'm not sure in this instance what the inner border's formula is.

Now, if I take the same radii measurements from /interfaces/color-generator/index.html, I notice that the outer radius is only dependant on the largest side's main axis (in this case, the left width):

image

Take into account the relationship between the inner and outer radius:

image

The difference side by side:

image

Luminance-overlayed:

image

All in all, I know it might seem a bit nit-picky, but I've always been fascinated by the subtleties that Okuda used to convey relationships between sets of data. I just thought I would throw this in here for discussion.

For what it's worth, this is a great article about shared border radii... a quick and lovely read: http://joshnh.com/weblog/getting-inner-border-radius-just-right/

elbow staggered (delayed) flash on transition

I understand that the button active states are rem'ed out by default and are commented to be optional ... but the active to inactive transitions on the elbows are staggered and uneven (giving a weird glitching fade) ... here's my fix ... but is there another way to fix this without giving up the delay?

  [class*="bg-"], 
  [class*="bg-"] > *:not([class*="bg-"]){
-	transition:background-color .25s linear, border .25s linear;       // Change this ...
+  	transition:background-color linear, border linear;                 // to this  ...
  }

Which version of Illustrator do you use?

Hi,
I've seen that you are using Adobe Illustrator files for mockup and CSS extraction.
Which version are you using, cause CS2 says it was made with an higher version?

Thanks,

sg-x

Case-Sensitivity in visual-guide demo

Some servers, such as Apache on Linux, are case-sensitive by default. In the interfaces/visual-guide/index.html both the directory and filename "scrollButton" is used, while the actual file and directory is "scrollbutton." Either rename the file & directory, or change the case in the index.html (what I just did).

Btw, nice looking library. I'm contemplating setting it up with my home automation system.

Also, just in case you haven't already noticed, your main site (lcarssdk.org) is currently offline. It crashed somewhere around 6 or 7PM EST from what I can tell (I was looking at your Voyager demo one minute, and an error message the next).

$.createObject({})

Since $.createObject({}) has been eliminated how do we get things started? Do we use the LCARS.create() API on every element ... or does LCARS.create() now handle things like createObject() did?

From:

var exampleUI = {type:'wrapper', id:'wpr_viewport', version:'row', flex:'h', arrive:function(){$(this).viewport('zoom', {width:1920, height:1080});}, children:[
......
$(document).on('ready', function(){
	$(exampleUI).createObject({appendTo:'body'});
});

To:

var exampleUI = {type:'???', id:'wpr_viewport', version:'row', flex:'h', arrive:function(){$(this).viewport('zoom', {width:1920, height:1080});}, children:[
......
$(document).on('ready', function(){
        $('body').append( LCARS.create($(exampleUI)).dom );
});

"click" doesn't work on Android Chrome Browser

I registered a few buttons with custom handlers using the "click" attribute. This works fine from my desktop, but fails on the phone (Android Chrome).

After a few false leads (I also see warnings of "target-densitydpi is not supported" and "touchstart input event was delayed ... Consider markign event handler as passive"), I've found and tentatively fixed the issue.

In lcarssdk.js, the click handler (around line 248) registration is conditional on '"webviewInfo.input !== "touch"' If I comment out this condition, then everything works as expected.

The same check exists in several other handlers as well and looks to be part of larger touchscreen support that I suspect is deprecated by recent jquery library versions (the 'click' event works for taps/touches, whether it's from a phone or touchscreen laptop, and is still distinct from other touch gestures).

default-bracket animation left side & right side synced

I changed my default-bracket.css file back to the way the css selector was setup in v3.11 ... and it's working for me ... but I'm assuming there was a intent to using the animated class ...

//.sdk.default-bracket .animated { position:absolute; max-width:100%; min-width:100%; -webkit-animation: bracketAnimation 5s linear infinite !important; animation: bracketAnimation 5s linear infinite !important;}
//.sdk.default-bracket .animated{ position:absolute; max-width:100%; min-width:100%; -webkit-animation: bracketAnimationR 5s linear infinite !important; animation: bracketAnimationR 5s linear infinite !important;}

.sdk.default-bracket > .column .bar .bar{ position:absolute; max-width:100%;min-width:100%;  -webkit-animation: bracketAnimation 5s linear infinite !important; animation: bracketAnimation 5s linear infinite !important;}
.sdk.default-bracket > .column ~ .column .bar .bar{ position:absolute;  max-width:100%; min-width:100%; -webkit-animation: bracketAnimationR 5s linear infinite !important; animation: bracketAnimationR 5s linear infinite !important; }

Archive (ver 3.xx) Section on the Wiki

any objections to creating a archived section on the wiki? to document the older versions (3.xx)?
I'm willing to collect the old pages and assemble them into a single page that could be added to the wiki?

viewportZoom: Cannot read property 'css' of undefined

I'm trying to implement viewportZoom. I'm using the example give on the wiki ... but i get the error ...
Uncaught TypeError: Cannot read property 'css' of undefined at Object.viewportZoom
here is the code where it's being setup ... in my module.js file

{type:'wrapper', id:'wpr_viewport', version:'row', flex:'h', 
	arrive:function(){LCARS.helper.viewportZoom(this.dom, {width:1440, height:1080}); 
		window.addEventListener("resize", function(){LCARS.helper.viewportZoom(this.dom, {width:1440, height:1080});});},

	children:[

and the line(s) in the sdk ...

        viewportZoom:function(object, oArgs){
.......
            object.css('zoom', zoomLevel);

the error(s) only occur during the resize eventListener call ... it works fine when called from the arrive call ... seems this.dom behaves differently depending on who calls it ... a promise or event ...

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.