├── .gitattributes ├── .gitignore ├── .npmrc ├── gulpfile.js ├── jquery-3.7.1.screwed.js ├── license.txt ├── package.json ├── readme.md └── test.html /.gitattributes: -------------------------------------------------------------------------------- 1 | * text eol=lf 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .* 2 | !.git* 3 | !/.npmrc 4 | /node_modules 5 | /npm-debug.log 6 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | package-lock=false 2 | -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const { parallel, series, task } = require('gulp'); 4 | 5 | task 6 | ( 7 | 'clean', 8 | async () => 9 | { 10 | const { deleteAsync } = await import('del'); 11 | 12 | await deleteAsync('*.screwed.js'); 13 | }, 14 | ); 15 | 16 | task 17 | ( 18 | 'lint', 19 | async () => 20 | { 21 | const { lint } = require('@fasttime/lint'); 22 | 23 | await lint({ src: ['*.js', '!*.screwed.js'], jsVersion: 2020, envs: 'node' }); 24 | }, 25 | ); 26 | 27 | task 28 | ( 29 | 'screw', 30 | callback => 31 | { 32 | const { fork } = require('child_process'); 33 | 34 | const { resolve } = require; 35 | const modulePath = resolve('jscrewit/screw.js'); 36 | const jQueryPath = resolve('jquery/dist/jquery.min.js'); 37 | const jQueryScrewedPath = require('./package.json').main; 38 | const childProcess = 39 | fork(modulePath, ['-ct', '-f', 'BROWSER', jQueryPath, jQueryScrewedPath]); 40 | childProcess.on 41 | ( 42 | 'exit', 43 | (code, signal) => 44 | { 45 | let error; 46 | if (code || signal) 47 | { 48 | const detail = code ? `exit code ${code}` : `signal ${signal}`; 49 | error = `Could not create jQuery Screwed: ${detail}`; 50 | } 51 | callback(error); 52 | }, 53 | ); 54 | }, 55 | ); 56 | 57 | task('default', series(parallel('clean', 'lint'), 'screw')); 58 | -------------------------------------------------------------------------------- /license.txt: -------------------------------------------------------------------------------- 1 | Copyright OpenJS Foundation and other contributors, https://openjsf.org/ 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-screwed", 3 | "version": "3.7.1-screwed.1", 4 | "description": "jQuery JavaScript library made of only six different characters: ! ( ) + [ ]", 5 | "keywords": [ 6 | "jquery", 7 | "jscrewit", 8 | "jsfuck" 9 | ], 10 | "homepage": "https://github.com/fasttime/jquery-screwed", 11 | "bugs": "https://github.com/fasttime/jquery-screwed/issues", 12 | "license": "MIT", 13 | "author": "Francesco Trotta (https://github.com/fasttime)", 14 | "files": [], 15 | "main": "jquery-3.7.1.screwed.js", 16 | "repository": { 17 | "type": "git", 18 | "url": "https://github.com/fasttime/jquery-screwed.git" 19 | }, 20 | "scripts": { 21 | "build": "npm install && gulp" 22 | }, 23 | "devDependencies": { 24 | "@fasttime/lint": "latest", 25 | "del": "latest", 26 | "gulp": "latest", 27 | "jquery": "3.7.1", 28 | "jscrewit": "latest" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # jQuery *Screwed* · [![npm version][npm badge]][npm url] 2 | 3 | jQuery JavaScript library made using only six different characters: `!` `(` `)` `+` `[` `]` 4 | 5 | ## Usage 6 | 7 | You can use jQuery Screwed anywhere in your code like the regular jQuery. 8 | 9 | ```html 10 | 11 | ``` 12 | 13 | ```html 14 | 19 | ``` 20 | 21 | ## Hosting Services 22 | 23 | The following is a list of URLs that can be used to serve jQuery Screwed with proper Content-Type 24 | header. 25 | 26 | ### From npm 27 | 28 | * https://cdn.jsdelivr.net/npm/jquery-screwed@3.7.1-screwed.1/jquery-3.7.1.screwed.js 29 | * https://unpkg.com/jquery-screwed@3.7.1-screwed.1 30 | 31 | ### From GitHub 32 | 33 | * https://cdn.jsdelivr.net/gh/fasttime/jquery-screwed@3.7.1-screwed.1/jquery-3.7.1.screwed.js 34 | * https://cdn.staticaly.com/gh/fasttime/jquery-screwed/3.7.1-screwed.1/jquery-3.7.1.screwed.js 35 | * https://gitcdn.xyz/repo/fasttime/jquery-screwed/3.7.1-screwed.1/jquery-3.7.1.screwed.js 36 | * https://rawcdn.githack.com/fasttime/jquery-screwed/3.7.1-screwed.1/jquery-3.7.1.screwed.js 37 | 38 | ## Creation 39 | 40 | jQuery Screwed was created with [JScrewIt](https://github.com/fasttime/JScrewIt). 41 | Below are the steps to recreate it manually. 42 | 43 | * Install the current version of [Node.js](https://nodejs.org) if you haven't done so yet. 44 | * Install JScrewIt: run in the command line
45 | `npm install -g jscrewit` 46 | * Download jQuery—current stable version is 3.7.1: https://code.jquery.com/jquery-3.7.1.min.js 47 | * Replace path names as appropriate and run
48 | `node jscrewit -ct -f BROWSER path/to/source/jquery-3.7.1.min.js 49 | path/to/dest/jquery-3.7.1.screwed.js` 50 | 51 | ## Browser Support 52 | 53 | jQuery Screwed supports all browsers also 54 | [supported by jQuery 3.x](https://jquery.com/browser-support/). 55 | Node.js is *not* supported. 56 | 57 | ## Credits 58 | 59 | jQuery Screwed is based on [jQuery](https://github.com/jquery/jquery). 60 | jQuery is Copyright JS Foundation and other contributors, and licensed under the MIT license. 61 | 62 | [npm badge]: https://badge.fury.io/js/jquery-screwed.svg 63 | [npm url]: https://www.npmjs.com/package/jquery-screwed 64 | -------------------------------------------------------------------------------- /test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 41 | 64 | jQuery Screwed Test Page 65 |

This page tests your browser’s ability to load jQuery Screwed.

67 |
Trying to load jQuery Screwed…
68 | --------------------------------------------------------------------------------