All Projects → guisouza → Dss

guisouza / Dss

Licence: other
🔥 Dynamic Style Sheets

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to Dss

Joomla Component Builder
Builds Complex Joomla! Components
Stars: ✭ 317 (-38.33%)
Mutual labels:  dynamic
Jekyll Paginate V2
Pagination Generator for Jekyll 3 (enhanced replacement for the old built-in jekyll-paginate gem) ⛺
Stars: ✭ 412 (-19.84%)
Mutual labels:  dynamic
Htmlnative
📃Use HTML/CSS to render Android View, Lua to control its logic (Not Webview)
Stars: ✭ 432 (-15.95%)
Mutual labels:  dynamic
C Cpp Notes
Notes about modern C++, C++11, C++14 and C++17, Boost Libraries, ABI, foreign function interface and reference cards.
Stars: ✭ 363 (-29.38%)
Mutual labels:  dynamic
Ng Dynamic Component
Dynamic components with full life-cycle support for inputs and outputs for Angular
Stars: ✭ 396 (-22.96%)
Mutual labels:  dynamic
Objectmodel
Strong Dynamically Typed Object Modeling for JavaScript
Stars: ✭ 415 (-19.26%)
Mutual labels:  dynamic
Ms17 010 Python
MS17-010: Python and Meterpreter
Stars: ✭ 305 (-40.66%)
Mutual labels:  dynamic
Java Callgraph
Programs for producing static and dynamic (runtime) call graphs for Java programs
Stars: ✭ 455 (-11.48%)
Mutual labels:  dynamic
Robust
Robust is an Android HotFix solution with high compatibility and high stability. Robust can fix bugs immediately without a reboot.
Stars: ✭ 4,125 (+702.53%)
Mutual labels:  dynamic
Dynaslam
DynaSLAM is a SLAM system robust in dynamic environments for monocular, stereo and RGB-D setups
Stars: ✭ 426 (-17.12%)
Mutual labels:  dynamic
Dynamic Kg
Dynamic (Temporal) Knowledge Graph Completion (Reasoning)
Stars: ✭ 381 (-25.88%)
Mutual labels:  dynamic
Grassbending
A replacement for Unity's terrain grass shader with alpha blended rendering and touch bending effect
Stars: ✭ 397 (-22.76%)
Mutual labels:  dynamic
Aachartcore
📈📊☕️☕️☕️An elegant modern declarative data visualization chart framework for Android. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types.极其精美而又强大的 Android 数据可视化图表框架,支持柱状图、条形图、折线图、曲线图、折线填充图、曲线填充图、气泡图、扇形图、环形图、散点图、雷达图、混合图等各种类型的多达几十种的信息图图表,完全满足工作所需.
Stars: ✭ 424 (-17.51%)
Mutual labels:  dynamic
Dynamic Analysis
A curated list of dynamic analysis tools for all programming languages, binaries, and more.
Stars: ✭ 340 (-33.85%)
Mutual labels:  dynamic
Aachartkit
📈📊🚀🚀🚀An elegant modern declarative data visualization chart framework for iOS, iPadOS and macOS. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types. 极其精美而又强大的跨平台数据可视化图表框架,支持柱状图、条形图、折…
Stars: ✭ 4,358 (+747.86%)
Mutual labels:  dynamic
Dynamic Cdn Webpack Plugin
Get your dependencies from a cdn rather than bundling them in your app
Stars: ✭ 312 (-39.3%)
Mutual labels:  dynamic
Grab N Run
Grab’n Run, a simple and effective Java Library for Android projects to secure dynamic code loading.
Stars: ✭ 413 (-19.65%)
Mutual labels:  dynamic
Update4j
Create your own auto-update framework
Stars: ✭ 497 (-3.31%)
Mutual labels:  dynamic
Github Readme Stats
⚡ Dynamically generated stats for your github readmes
Stars: ✭ 34,955 (+6700.58%)
Mutual labels:  dynamic
Substratum
An advanced theming manager designed to be used with RRO, OMS and Dynamic Overlays
Stars: ✭ 424 (-17.51%)
Mutual labels:  dynamic

DSS (NOT SAFE FOR PRODUCTION)

Dynamic Style Sheets for dynamic projects

Join the chat at https://gitter.im/guisouza/dss

Alt text

Alt text

LIVE DEMO (Apple TV)

Dynamic Style Sheets

Dynamic Style Sheets gives you the ability to dynamically set values to your css properties on the go.

First things first ...

bower install dss;
<!--load the dss-->
<script src="dss.js"></script>

then ...

<!--
link your css
NOTE : use the **dynamic-stylesheet** rel attribute so I can put poison in your css.
-->
<link rel="dynamic-stylesheet" href="style.css">

DSS loaded! Now you can put DSS declarations in your sheet in three different flavours:

- Double pipe
.box{
	width: 50px;
	height: 50px;
	background: ||companyColor:red||;
	position: absolute;
	top: ||mouseY-25||px;
	left: ||mouseX-25||px;
}
- Pseudo dss selector
.box:dss{
	width: 50px;
	height: 50px;
	background: companyColor:red;
	position: absolute;
	top: mouseY-25;
	left: mouseX-25;
}
- "dss-" preffix property
.box{
	width: 50px;
	height: 50px;
	dss-background: companyColor:red;
	position: absolute;
	dss-top: mouseY-25;
	dss-left: mouseX-25;
}

The mouseY and mouseX identifiers will automatically receive the mouse position on the screen, every time it changes.

The companyColor identifier must be set over javascript, but until you do, it will receive the default value red.

dss.setProperty('companyColor','#1616FF')

Default Auto-Binded Properties

mouseX

Automatically receives the x position of the cursor related to the document.

mouseY

Automatically receives the y position of the cursor related to the document.

mouseClientX

Automatically receives the x position of the cursor related to the viewport

mouseClientY

Automatically receives the y position of the cursor related to the viewport

scrollX

Automatically receives the x position of the window scroll.

scrollY

Automatically receives the y position of the window scroll.

windowWidth

Automatically receives the window width.

windowHeight

Automatically receives the window height.

DSS Helpers

dss.floor

/*margin-top will aways be 200 or more*/
 header{
  margin-top : ||dss.floor(200)(scrollY)||px;
 }

dss.ceil

/*margin-top will aways be 200 or less*/
 header{
  margin-top : ||dss.ceil(200)(scrollY)||px;
 }

dss.bounds

/*margin-top will aways be something between 100 and 200*/
 header{
  margin-top : ||dss.bounds(100,200)(scrollY)||px;
 }

dss.pon

/*return a positive number or 0, opacity will never be less than 0*/
 header{
  opacity : ||dss.pon(-200+scrollX)||;
 }

dss.if

/*if the scrollX is greater than 200 so opacity will be 1 else will be 0*/
 header{
  opacity : ||dss.if(scrollX > 200)(1)(0)||;
 }

Javascript API

Managing properties

dss.setProperty

dss.setProperty('companyColor','#1616FF')

//OR

dss.setProperty({
	companyColor:'#1616FF'
})

dss.setDynamicProperty

//will generate mouseX and mouseY property everytime document fires mousemove
dss.setDynamicProperty('mouse',function(){
	return{
		context : document,

		event : 'mousemove',

		getter : function(e){
			return {
				x : e.pageX,
				y : e.pageY,
			};
		}
	};
});

Events

init

dss.on('init',function(){
console.log('DSS initialized with its first render Cycle =D ')
})

render

dss.on('render',function(){
console.log('there is a render cycle =D')
})

Version

0.1.2 Beta

Building

npm install && grunt
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].