Giter Club home page Giter Club logo

dicss's Introduction

build status Code Climate Codacy Badge bitHound Score

DICSS

Directly injected CSS - Finally, Sass has some stiff competition!

Forget Sass. Forget LESS. What you want is DICSS. Once you've had DICSS, you won't settle for LESS.

Tired of separate build processes for your CSS and JS files? Fret no more. DICSS is Javascript. That means you can code your styles and your scripts in one language, and compile and minify everything to a single file. Once you try it, we're sure you'll love DICSS.

DICSS is fun and easy to use!

Is it safe?

Don't worry. DICSS uses a wrapper.

How do you use DICSS?

Just grab DICSS and stick it wherever you like. DICSS works equally well in your <head> or in your <body>.

<head>
    <script src="dicss.js"></script>
</head>

Then, go ahead and start putting DICSS in! Put 'em everywhere you like. Nobody will judge you for what you do with your DICSS.

DICSS.putIn('body', 'transition: .1s ease-in');
DICSS.putIn('p', {
    "height": "100%",
    "width": "100%",
    "&.protection": {
        "border": "solid 1px transparent"
    },
    "a": {
        "color": "#fff"
    }
});

And when you're done with a style, you can easily remove it:

DICSS.pullOut('a', 'color');

The possibilities are endless

Since DICSS accepts JSON objects as styles, you can keep your CSS organized very methodically:

var widgetDICSS = {
	'div.widget': {
		'a': {
			font: '1em Verdana,Arial,sans-serif',
			margin: '.5em'
		}
		//... etc
	}
};

In fact, there's no reason you couldn't put your DICSS in the back-end, and then deliver them to the client, as needed, via REST service.

Why no min version?

It's not the size of DICSS that matters, it's what you can do with it.

Can DICSS be extended?

Yes! You can add whatever you want to DICSS. Just pass an object of methods into DICSS.extend().

DICSS keeps on growing! Some popular DICSS add-ons include

  • COCSS (cross-origin DICSS),
  • SECSS (security enhanced DICSS)
  • DICSS-Pics (DICSS plugin for working with images)
  • Circum-Sizer (calculate the circumference of a rounded element in CSS)

Okay, so we admit, those add-ons don't actually exist yet. But there's nothing stopping you from making them!

Got something you want to add to DICSS? Let us know! Help us make DICSS bigger and better than ever!

Is DICSS compatible with other frameworks?

Yes! There are projects currently underway to integrate DICSS with Knockout (KOCSS), Backbone (BoneDICSS), and Angular (Angular-DICSS).

Does DICSS work with LaTeX?

Yes, but it takes longer.

It's not working. Help!

Is it in yet? Go to your developer tools console and type DICSS. If it's undefined, that means you haven't put DICSS in yet.

It's still not working!

Don't overthink it. DICSS is only as hard as you make it.

I don't like DICSS.

That's okay. While we believe most people are fond of DICSS, we realize that DICSS isn't for everyone. There are plenty of alternatives. Feel free to use them instead. And please, never force someone to use DICSS if they're not willing.

Performance has gotten worse. It doesn't come up as fast as it used to.

Maybe you're using DICSS in the lower <body>? Some people experience faster response times using <head> or delivering DICSS through the backend.

THIS IS NUTS!

No, this is DICSS. NUTS is something else.

dicss's People

Contributors

karismatic-megafauna avatar letsgetrandy avatar ninjabanjo avatar sriram-mv avatar the-feminist-software-foundation 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dicss's Issues

we must not allow this use case

On irc a user was asking how to expose DICSS through a Window. I think this may be the fear underlying all the recent negative publicity. We should not support exposing DICSS beyond the local environment.

Are you okay with pull requests?

How should we go about adjusting your DICSS? Do you prefer pull requests or just fork DICSS and keep all our DICSS packages separate?

Problem sticking DICCS into CUNT

So I started using DICCS, and my girlfriend won't let me stick DICCS into CUNT (Computer Universal Numerical Template). She is saying DICCS might not fit into CUNT. Was wondering if anyone else has had this problem.

Using DICCS with DONGS?

I want to require DICSS with DONGS (Dynamically Obfuscated Node.js Global Styles), and it is even available in PEEN (Package manager, Extensible, Enhanced and Neutral). My code is the following:

var dicss = insert dicss from peen;

dicss.putIn('.vag', 'margin: 0');

Can anyone tell me why this doesn't work? I'd really love to use DICCS and DONGS together.

Backend not serving clean DICSS

Recently I've realized through intesive testing that sometimes doesn't come clean when served through a backend. It's not always, but there's stuff there that shouldn't be.
For now, as a workaround, I'm passing it through a WASH (Waste Asynchronous Stylesheet Handler).
Is there something wrong with my DICSS or should I put it into another backend?

Consider this:

http://findingscience.com/ruby/2014/11/17/why-im-renaming-a-gem.html

I think the best argument basically boils down to a question of whether or not I, as an open source developer, want to be as welcoming as possible to a group that has long felt marginalized and uncomfortable. This is the one that I believe is worth substantial and thoughtful consideration. If enough people from that group claim that some words that I chose make it harder for them, who am I to question their feelings. I believe there is genuine sincerity in the request, and this means that I need to listen.

Please be considerate to the community and try to understand how this project might offend others.

Add abstraction layer

I think a direct interface layer for delegation overview will improve the usage of DICCS. It's easier to use, and it's faster to use, so many more people out there will use DICCS.

DICSS seems hard

Your documentation is not complete, It seems not easy to think with my DICSS.

How does DICSS compare to DILDOSS?

A friend had compared DICSS to DILDOSS (Dynamically Injected Lexically Documented and Organized StyleSheets), I didn't check it myself, but she says DILDOSS is much more stable and predictable. Moreover, scale appears to be easier with DILDOSS.

DICCS injects self-replicating code when not using a wrapper

I first used DICSS about 8 and a half months ago. I followed the directions and thought it'd be safe to use DICCS without a wrapper.

I was wrong!!

DICCS injected some self-replicating code into my site several months back. It's caused my page size to increase dramatically and its caused some additional logging so I need to excuse myself to empty the logs several times a day. I sometimes even have to get up during the night to empty my logs!

The page pize increases are most noticable in my body but I've also noticed swelling in my footers.

At this point I've stopped using DICCS, but the code is still replicating. Are there any tips to remove the code?

Doesn't pull out

pullOut doesn't seem to work. Have to resort to this hack:

        var times = document.getElementById('dicss_wrapper').sheet.rules.length
        for (var i = 0; i < times; i++) {
          try {
            document.getElementById('dicss_wrapper').sheet.removeRule(0) // remove rule works better on IE i guess
          } catch(e) { }
        };

Where can I get SECSS?

In the readme you mention a package called SECSS. Where can I acquire said package? It looks interesting.

Asking for a friend.

You guys seem to think this is funny.

But it's really not. It's harmful to the developer community.
Pretty sure Git will end up removing this fake user, but you should do it yourself like a real grown up.

Having problems pulling DICSS

There seem to be some problems currently. I'm attempting to pull DICSS, but it keeps timing out.

I've tried pulling it several times in the last half hour - same problem.

Anyone else?

DICSS may not be for everyone

DICSS may not be for everyone, DICSS cannot solve every problem. If you don't find DICSS useful, there are plenty of other great libraries out there. However, please respect that some people really do enjoy using DICSS and some people can only use DICSS. No one is forcing DICSS on you.

Gulp DICSS?

Please make this a task plugin so I can gulp DICSS, grunt optional.

I find this inappropriate.

I get that this is a joke and all, but it seems inappropriate for this community.

You might reconsider how this is received and the statement it is making.

Does DICSS need to be slipped in between TITS?

I want to use Text Inspection & Transformation Sequence on my js sources, to prettify it before showing it to the world. As you know, it encompasses 2 big builds: the Inspection stage and Transformation stage.

I've found that I need to slip my DICSS code into the source files right in between the 2 big build stages, using a preprocessor like Grunt. If I insert DICSS anywhere but in the middle of them, it seems to get bounced off by the TITS build and the whole job even fails, leaving DICSS out entirely.

However, even if I slip it in right in the middle of the builds, it still sometimes gets pushed back out, especially if the builds are on the large/heavy side.

TL, DR: DICSS seems to be a slippery thing when using TITS. Can we get a fix for this?

DICSS popularity

I tried DICSS and i am amazed by it's flexibility. This little extension manages to remain flexibile enough even at larger sizes and i almost feel that it can support any framework out there.

I am however concerned about it's popularity. Maybe the documentation should contain some tips about evangelizing DICSS?

My DICSS bigger than friend's

Hello, recently a friend of mine tried DICSS, and he loved it. When I went to get it though, it seemed a lot larger. Also, the colors are much darker. Anyone else experiencing this?

DICSS is too big for me

My front-end is very small and DICSS is far to big to be inserted. I thought about using it in my back-end but I haven't tried something like that since college

Coupling issue

I've tried coupling my Binary Access Link Layer Service while injecting DICSS directly into the head, but it always prematurely exits. Any known issues about this?

DICSS is staying up own its own for hours on end

Hi, I've experienced another issue while using DICSS in my life.
It turns out that I can't actually tell my DICSS when the server is on downtime. It continues to stay up on its own for hours on end even though I want it to go down (maintenance, etc.)
Anybody else experiencing this issue?

DICSS is unstable; constantly going up and then down again

Hi, I'm trying to add DICSS into my girlfriend's server, but for some reason I can't put it in due to stability issues. It keeps getting very high latency and then it just goes down altogether. It goes back up minutes later, but then goes down again with a 403 error. Is this a client-side issue or have other people experienced this??

Thanks

Do you think I could use DICSS with BALLS?

I have a project called BALLS. It's a shader editor written in Qt. Now, although it's a desktop app, every desktop framework seems to want to mimic browsers in some form, and Qt is no exception.

Anyway, I'm considering making my project scriptable with JavaScript and layering DICSS on top of BALLS, but I'm not so sure how that'll work out; if I can't get them to play nicely together, things will get quite painful. What do you think?

CDN Availability

Has anyone put DICSS somewhere that we can share? We have a large number of clients that would potentially want to use this, but having so many DICSS lying around everywhere would be unnecessary.

[Security] exploiting vulnerable holes with DICSS

Unlike CSS et al, requesting DICSS from untrusted origins opens opportunities for infection. CDNs that offer shared DICSS are also likely vectors for infection. We need to discuss ways to mitigate the consequences of cross-site injection.

XSS attacks can easily lead to sack overflows. Even with non-blocking DICSS, application will freeze. Additionally, sometimes DICSS is susceptible to general insecurities after a denial of service.

position: sticky gets applied to everything when I use DICSS

I noticed a bug where as soon as I use DICSS.pullOut(), my DICSS output will get applied not just to the target element, but also to any nearby elements in the target's vicinity. I happen to have one element that uses position: sticky (it's a <legend>, btw), and this gets everywhere any time I use DICSS. I keep loading up my app to find that everything is sticky.

Are there techniques I could use to clean up my output? Or, barring that, perhaps there's a way to contain it so it doesn't accidentally get everywhere? It's very frustrating having to frantically clean this stuff up before my clients see it.

One user walked into my platform right as I finished deploying a new distribution, and they saw this whole sticky mess get applied everywhere before I had a chance to clean it up. Very embarrasing.

DICSS causing previously "loud" Sass output to be garbled and silenced

I was previously receiving an excessive amount of Sass debugging output from which was sometimes helpful as it would show me (almost painfully) when my input was not acceptable and I could take corrective action. However, after integrating DICSS directly into Sass, this extremely loud output is somehow being scrambled and occasionally silenced entirely. For example, where I might receive the debugging output:

I TOLD YOU TO STOP CORRECTING ME WHEN I'M TRYING TO MAKE A POINT
WHY DO YOU ONLY GIVE ME WHAT I WANT THREE TIMES A DAY
YOU'RE A DAMN IDIOT
I HOPE YOU CAN DODGE BASEBALL BATS
YOU'RE INSENSITIVE TO MY NEEDS
SHUT YOUR MOUTH I HOPE YOU CHOKE ON A WALRUS

I now see output such as this:

NMMBBGMBMNGN GNMNGGBBBRRLL
MMMPPHHHHMMMMMPPPHPHPHPH
GUHGUHGUHGUHGUH GLLLLGLLLLLSLURP

After a few lines of this, the Sass output "gives up" and chokes. Sass seems to have improved in performance due to the reduced debugging output (previously fairly slow, it now performs enthusiastically after DICSS is injected) , but I am still curious as to why I'm not getting the violent Sass dumps I have become used to. The increased performance of Sass makes me wonder if I had failed to notice a dependency that Sass needed to be "happy." I thought I had satisfied the last of the Sass dependency requirements with the finger package, but DICSS apparently does a better job than finger despite the mangled output problem.

Is this expected behavior when DICSS and Sass are put together? Was finger alone the wrong way to go?

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.