landing and about basically finished, minus animation and graphics;
1
.cache/eleventy-fetch-ff7bff157a8a33917f958b9cab3878
Normal file
@@ -0,0 +1 @@
|
||||
[{"ff7bff157a8a33917f958b9cab3878":"1"},{"cachedAt":1662120146663,"type":"2"},"json"]
|
||||
@@ -0,0 +1 @@
|
||||
[{"login":"BitcoinMechanic","id":45926711,"node_id":"MDQ6VXNlcjQ1OTI2NzEx","avatar_url":"https://avatars.githubusercontent.com/u/45926711?v=4","gravatar_id":"","url":"https://api.github.com/users/BitcoinMechanic","html_url":"https://github.com/BitcoinMechanic","followers_url":"https://api.github.com/users/BitcoinMechanic/followers","following_url":"https://api.github.com/users/BitcoinMechanic/following{/other_user}","gists_url":"https://api.github.com/users/BitcoinMechanic/gists{/gist_id}","starred_url":"https://api.github.com/users/BitcoinMechanic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BitcoinMechanic/subscriptions","organizations_url":"https://api.github.com/users/BitcoinMechanic/orgs","repos_url":"https://api.github.com/users/BitcoinMechanic/repos","events_url":"https://api.github.com/users/BitcoinMechanic/events{/privacy}","received_events_url":"https://api.github.com/users/BitcoinMechanic/received_events","type":"User","site_admin":false},{"login":"MattDHill","id":9935159,"node_id":"MDQ6VXNlcjk5MzUxNTk=","avatar_url":"https://avatars.githubusercontent.com/u/9935159?v=4","gravatar_id":"","url":"https://api.github.com/users/MattDHill","html_url":"https://github.com/MattDHill","followers_url":"https://api.github.com/users/MattDHill/followers","following_url":"https://api.github.com/users/MattDHill/following{/other_user}","gists_url":"https://api.github.com/users/MattDHill/gists{/gist_id}","starred_url":"https://api.github.com/users/MattDHill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MattDHill/subscriptions","organizations_url":"https://api.github.com/users/MattDHill/orgs","repos_url":"https://api.github.com/users/MattDHill/repos","events_url":"https://api.github.com/users/MattDHill/events{/privacy}","received_events_url":"https://api.github.com/users/MattDHill/received_events","type":"User","site_admin":false}]
|
||||
258
package-lock.json
generated
@@ -9,6 +9,7 @@
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"@11ty/eleventy-fetch": "^3.0.0",
|
||||
"eleventy-sass": "^1.3.1",
|
||||
"esm": "^3.2.25",
|
||||
"gsap": "^3.10.4",
|
||||
@@ -76,6 +77,24 @@
|
||||
"url": "https://opencollective.com/11ty"
|
||||
}
|
||||
},
|
||||
"node_modules/@11ty/eleventy-fetch": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@11ty/eleventy-fetch/-/eleventy-fetch-3.0.0.tgz",
|
||||
"integrity": "sha512-qJvfb331rYQAmlCS71Ygg0/XHUdB4/qXBOLsG0DJ1m61WL5JNha52OtKVeQq34u2J2Nfzim+X4TIL/+QyesB7Q==",
|
||||
"dependencies": {
|
||||
"debug": "^4.3.3",
|
||||
"flat-cache": "^3.0.4",
|
||||
"node-fetch": "^2.6.7",
|
||||
"p-queue": "^6.6.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/11ty"
|
||||
}
|
||||
},
|
||||
"node_modules/@11ty/eleventy-utils": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-1.0.1.tgz",
|
||||
@@ -604,8 +623,7 @@
|
||||
"node_modules/balanced-match": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
|
||||
"dev": true
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"node_modules/base64id": {
|
||||
"version": "2.0.0",
|
||||
@@ -634,7 +652,6 @@
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
@@ -913,8 +930,7 @@
|
||||
"node_modules/concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
||||
"dev": true
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
|
||||
},
|
||||
"node_modules/condense-newlines": {
|
||||
"version": "0.2.1",
|
||||
@@ -1385,8 +1401,7 @@
|
||||
"node_modules/eventemitter3": {
|
||||
"version": "4.0.7",
|
||||
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
|
||||
"integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
|
||||
"dev": true
|
||||
"integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="
|
||||
},
|
||||
"node_modules/events": {
|
||||
"version": "3.3.0",
|
||||
@@ -1517,6 +1532,37 @@
|
||||
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/flat-cache": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
|
||||
"integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
|
||||
"dependencies": {
|
||||
"flatted": "^3.1.0",
|
||||
"rimraf": "^3.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^10.12.0 || >=12.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/flat-cache/node_modules/rimraf": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
|
||||
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
|
||||
"dependencies": {
|
||||
"glob": "^7.1.3"
|
||||
},
|
||||
"bin": {
|
||||
"rimraf": "bin.js"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/flatted": {
|
||||
"version": "3.2.7",
|
||||
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
|
||||
"integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
|
||||
},
|
||||
"node_modules/follow-redirects": {
|
||||
"version": "1.15.0",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz",
|
||||
@@ -1560,8 +1606,7 @@
|
||||
"node_modules/fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
|
||||
"dev": true
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
|
||||
},
|
||||
"node_modules/fsevents": {
|
||||
"version": "2.3.2",
|
||||
@@ -1609,7 +1654,6 @@
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
@@ -1825,7 +1869,6 @@
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
@@ -1834,8 +1877,7 @@
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
|
||||
"dev": true
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"node_modules/ini": {
|
||||
"version": "1.3.8",
|
||||
@@ -2397,7 +2439,6 @@
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
@@ -2482,6 +2523,44 @@
|
||||
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
|
||||
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
|
||||
},
|
||||
"node_modules/node-fetch": {
|
||||
"version": "2.6.7",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
|
||||
"integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
|
||||
"dependencies": {
|
||||
"whatwg-url": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "4.x || >=6.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"encoding": "^0.1.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"encoding": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/node-fetch/node_modules/tr46": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
|
||||
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
|
||||
},
|
||||
"node_modules/node-fetch/node_modules/webidl-conversions": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
|
||||
},
|
||||
"node_modules/node-fetch/node_modules/whatwg-url": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
|
||||
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
|
||||
"dependencies": {
|
||||
"tr46": "~0.0.3",
|
||||
"webidl-conversions": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/node-releases": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
|
||||
@@ -2560,7 +2639,6 @@
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
@@ -2583,6 +2661,40 @@
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/p-finally": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
|
||||
"integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/p-queue": {
|
||||
"version": "6.6.2",
|
||||
"resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz",
|
||||
"integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==",
|
||||
"dependencies": {
|
||||
"eventemitter3": "^4.0.4",
|
||||
"p-timeout": "^3.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/p-timeout": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
|
||||
"integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
|
||||
"dependencies": {
|
||||
"p-finally": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/parseurl": {
|
||||
"version": "1.3.3",
|
||||
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
|
||||
@@ -2596,7 +2708,6 @@
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -4078,8 +4189,7 @@
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
|
||||
"dev": true
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
|
||||
},
|
||||
"node_modules/ws": {
|
||||
"version": "8.2.3",
|
||||
@@ -4203,6 +4313,17 @@
|
||||
"slugify": "^1.6.5"
|
||||
}
|
||||
},
|
||||
"@11ty/eleventy-fetch": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@11ty/eleventy-fetch/-/eleventy-fetch-3.0.0.tgz",
|
||||
"integrity": "sha512-qJvfb331rYQAmlCS71Ygg0/XHUdB4/qXBOLsG0DJ1m61WL5JNha52OtKVeQq34u2J2Nfzim+X4TIL/+QyesB7Q==",
|
||||
"requires": {
|
||||
"debug": "^4.3.3",
|
||||
"flat-cache": "^3.0.4",
|
||||
"node-fetch": "^2.6.7",
|
||||
"p-queue": "^6.6.2"
|
||||
}
|
||||
},
|
||||
"@11ty/eleventy-utils": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-1.0.1.tgz",
|
||||
@@ -4645,8 +4766,7 @@
|
||||
"balanced-match": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
|
||||
"dev": true
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"base64id": {
|
||||
"version": "2.0.0",
|
||||
@@ -4669,7 +4789,6 @@
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
@@ -4878,8 +4997,7 @@
|
||||
"concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
||||
"dev": true
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
|
||||
},
|
||||
"condense-newlines": {
|
||||
"version": "0.2.1",
|
||||
@@ -5247,8 +5365,7 @@
|
||||
"eventemitter3": {
|
||||
"version": "4.0.7",
|
||||
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
|
||||
"integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
|
||||
"dev": true
|
||||
"integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="
|
||||
},
|
||||
"events": {
|
||||
"version": "3.3.0",
|
||||
@@ -5365,6 +5482,30 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"flat-cache": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
|
||||
"integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
|
||||
"requires": {
|
||||
"flatted": "^3.1.0",
|
||||
"rimraf": "^3.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"rimraf": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
|
||||
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
|
||||
"requires": {
|
||||
"glob": "^7.1.3"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"flatted": {
|
||||
"version": "3.2.7",
|
||||
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
|
||||
"integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
|
||||
},
|
||||
"follow-redirects": {
|
||||
"version": "1.15.0",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz",
|
||||
@@ -5391,8 +5532,7 @@
|
||||
"fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
|
||||
"dev": true
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
|
||||
},
|
||||
"fsevents": {
|
||||
"version": "2.3.2",
|
||||
@@ -5427,7 +5567,6 @@
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
@@ -5588,7 +5727,6 @@
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
@@ -5597,8 +5735,7 @@
|
||||
"inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
|
||||
"dev": true
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"ini": {
|
||||
"version": "1.3.8",
|
||||
@@ -6033,7 +6170,6 @@
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
}
|
||||
@@ -6100,6 +6236,35 @@
|
||||
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
|
||||
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
|
||||
},
|
||||
"node-fetch": {
|
||||
"version": "2.6.7",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
|
||||
"integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
|
||||
"requires": {
|
||||
"whatwg-url": "^5.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tr46": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
|
||||
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
|
||||
},
|
||||
"webidl-conversions": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
|
||||
},
|
||||
"whatwg-url": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
|
||||
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
|
||||
"requires": {
|
||||
"tr46": "~0.0.3",
|
||||
"webidl-conversions": "^3.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"node-releases": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
|
||||
@@ -6149,7 +6314,6 @@
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
@@ -6169,6 +6333,28 @@
|
||||
"is-wsl": "^1.1.0"
|
||||
}
|
||||
},
|
||||
"p-finally": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
|
||||
"integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow=="
|
||||
},
|
||||
"p-queue": {
|
||||
"version": "6.6.2",
|
||||
"resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz",
|
||||
"integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==",
|
||||
"requires": {
|
||||
"eventemitter3": "^4.0.4",
|
||||
"p-timeout": "^3.2.0"
|
||||
}
|
||||
},
|
||||
"p-timeout": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
|
||||
"integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
|
||||
"requires": {
|
||||
"p-finally": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"parseurl": {
|
||||
"version": "1.3.3",
|
||||
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
|
||||
@@ -6178,8 +6364,7 @@
|
||||
"path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||
"dev": true
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
|
||||
},
|
||||
"path-key": {
|
||||
"version": "3.1.1",
|
||||
@@ -7319,8 +7504,7 @@
|
||||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
|
||||
"dev": true
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
|
||||
},
|
||||
"ws": {
|
||||
"version": "8.2.3",
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
"@11ty/eleventy": "^1.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@11ty/eleventy-fetch": "^3.0.0",
|
||||
"eleventy-sass": "^1.3.1",
|
||||
"esm": "^3.2.25",
|
||||
"gsap": "^3.10.4",
|
||||
|
||||
@@ -4,11 +4,12 @@
|
||||
"slug": "company",
|
||||
"order": 0,
|
||||
"size": "full",
|
||||
"onHeader": true,
|
||||
"items": [
|
||||
{
|
||||
"name": "About",
|
||||
"slug": "about",
|
||||
"url": "",
|
||||
"url": "/about",
|
||||
"target": "",
|
||||
"order": 0,
|
||||
"class": ""
|
||||
@@ -16,7 +17,7 @@
|
||||
{
|
||||
"name": "News/Media",
|
||||
"slug": "news",
|
||||
"url": "",
|
||||
"url": "/news",
|
||||
"target": "",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
@@ -24,7 +25,7 @@
|
||||
{
|
||||
"name": "Contact",
|
||||
"slug": "contact",
|
||||
"url": "",
|
||||
"url": "/contact",
|
||||
"target": "",
|
||||
"order": 2,
|
||||
"class": ""
|
||||
@@ -32,7 +33,7 @@
|
||||
{
|
||||
"name": "Team",
|
||||
"slug": "team",
|
||||
"url": "",
|
||||
"url": "/about#team",
|
||||
"target": "",
|
||||
"order": 3,
|
||||
"class": ""
|
||||
@@ -40,7 +41,7 @@
|
||||
{
|
||||
"name": "Jobs",
|
||||
"slug": "jobs",
|
||||
"url": "",
|
||||
"url": "/jobs",
|
||||
"target": "",
|
||||
"order": 4,
|
||||
"class": ""
|
||||
@@ -52,11 +53,12 @@
|
||||
"slug": "products",
|
||||
"order": 1,
|
||||
"size": "full",
|
||||
"onHeader": true,
|
||||
"items": [
|
||||
{
|
||||
"name": "Embassy ONE",
|
||||
"slug": "embassy-one",
|
||||
"url": "",
|
||||
"url": "https://store.start9.com/products/embassy",
|
||||
"target": "",
|
||||
"order": 0,
|
||||
"class": ""
|
||||
@@ -64,7 +66,7 @@
|
||||
{
|
||||
"name": "Embassy Pro",
|
||||
"slug": "embassy-pro",
|
||||
"url": "",
|
||||
"url": "https://store.start9.com/products/embassy-2",
|
||||
"target": "",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
@@ -72,7 +74,7 @@
|
||||
{
|
||||
"name": "Store",
|
||||
"slug": "store",
|
||||
"url": "",
|
||||
"url": "https://store.start9.com/",
|
||||
"target": "",
|
||||
"order": 2,
|
||||
"class": "highlight"
|
||||
@@ -84,11 +86,12 @@
|
||||
"slug": "embassyos",
|
||||
"order": 2,
|
||||
"size": "half",
|
||||
"onHeader": true,
|
||||
"items": [
|
||||
{
|
||||
"name": "Support",
|
||||
"slug": "support",
|
||||
"url": "",
|
||||
"url": "https://start9.com/latest/support/",
|
||||
"target": "",
|
||||
"order": 0,
|
||||
"class": ""
|
||||
@@ -96,7 +99,7 @@
|
||||
{
|
||||
"name": "Docs",
|
||||
"slug": "docs",
|
||||
"url": "",
|
||||
"url": "https://start9.com/latest/user-manual",
|
||||
"target": "",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
@@ -104,8 +107,8 @@
|
||||
{
|
||||
"name": "Marketplace",
|
||||
"slug": "marketplace",
|
||||
"url": "",
|
||||
"target": "",
|
||||
"url": "https://marketplace.start9.com/",
|
||||
"target": "_blank",
|
||||
"order": 2,
|
||||
"class": ""
|
||||
}
|
||||
@@ -116,11 +119,12 @@
|
||||
"slug": "developers",
|
||||
"order": 3,
|
||||
"size": "half",
|
||||
"onHeader": true,
|
||||
"items": [
|
||||
{
|
||||
"name": "Contribute",
|
||||
"slug": "contribute",
|
||||
"url": "",
|
||||
"url": "https://start9.com/latest/contribute/index",
|
||||
"target": "",
|
||||
"order": 0,
|
||||
"class": ""
|
||||
@@ -128,11 +132,52 @@
|
||||
{
|
||||
"name": "Dev Docs",
|
||||
"slug": "dev-docs",
|
||||
"url": "",
|
||||
"url": "https://start9.com/latest/developer-docs",
|
||||
"target": "",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Contact",
|
||||
"slug": "contact",
|
||||
"order": 4,
|
||||
"size": "half",
|
||||
"onHeader": false,
|
||||
"items": [
|
||||
{
|
||||
"name": "Matrix",
|
||||
"slug": "matrix",
|
||||
"url": "https://matrix.to/#/!lMnRwPWnyQvOfAoEnD:matrix.start9labs.com",
|
||||
"target": "_blank",
|
||||
"order": 0,
|
||||
"class": ""
|
||||
},
|
||||
{
|
||||
"name": "YouTube",
|
||||
"slug": "youtube",
|
||||
"url": "https://www.youtube.com/channel/UCGEw4HJDvOn3Oy8ykR36P7Q",
|
||||
"target": "_blank",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
},
|
||||
{
|
||||
"name": "Telegram",
|
||||
"slug": "telegram",
|
||||
"url": "https://t.me/start9_labs",
|
||||
"target": "_blank",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
},
|
||||
{
|
||||
"name": "Twitter",
|
||||
"slug": "twitter",
|
||||
"url": "https://twitter.com/start9labs",
|
||||
"target": "_blank",
|
||||
"order": 1,
|
||||
"class": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
12
src/_data/sections.json
Normal file
@@ -0,0 +1,12 @@
|
||||
[
|
||||
"hero",
|
||||
"pitch",
|
||||
"products",
|
||||
"infographics",
|
||||
"bitcoin",
|
||||
"be-your-own",
|
||||
"powered-by",
|
||||
"support",
|
||||
"dev",
|
||||
"community"
|
||||
]
|
||||
26
src/_data/services.json
Normal file
@@ -0,0 +1,26 @@
|
||||
[
|
||||
{
|
||||
"name": "Matrix",
|
||||
"slug": "matrix",
|
||||
"description": "asfsdf",
|
||||
"pseudoservices": [
|
||||
"whatsapp"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Mastadon",
|
||||
"slug": "mastadon",
|
||||
"description": "asfsdf",
|
||||
"pseudoservices": [
|
||||
"twitter"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "BitWarden",
|
||||
"slug": "bitwarden",
|
||||
"description": "asfsdf",
|
||||
"pseudoservices": [
|
||||
"lastpass"
|
||||
]
|
||||
}
|
||||
]
|
||||
11
src/_data/team.js
Normal file
@@ -0,0 +1,11 @@
|
||||
const EleventyFetch = require("@11ty/eleventy-fetch");
|
||||
|
||||
module.exports = async function() {
|
||||
let url = "https://api.github.com/orgs/start9labs/public_members";
|
||||
|
||||
/* This returns a promise */
|
||||
return EleventyFetch(url, {
|
||||
duration: "1d", // save for 1 day
|
||||
type: "json" // we’ll parse JSON for you
|
||||
});
|
||||
};
|
||||
@@ -1,3 +1,22 @@
|
||||
<footer>
|
||||
footer
|
||||
<div class="footer-content">
|
||||
<div class="header"><img src="../assets/images/start9_logo.png" alt=""></div>
|
||||
<ul class="groups">
|
||||
{% for group in menu|sort(false, false, 'order') %}
|
||||
<li class="{{group.size}}">
|
||||
<h1>{{group.name}}</h1>
|
||||
<ul>
|
||||
{% for item in group.items|sort(false, false, 'order') %}
|
||||
<li>
|
||||
<a {{'class=' + item.class + '' if item.class}} {{'target=' + item.target + '' if item.target}} href="{{item.url}}">{{item.name}}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<div class="footer__copyright">© 2022, START9 LABS, INC.</div>
|
||||
<div class="footer__donate">[btcpay widget]</div>
|
||||
<div class="footer__canary">WE HAVE NEVER RECEIVED A SECRET GOVERNMENT REQUEST TO HAND OVER USER INFORMATION.</div>
|
||||
</div>
|
||||
</footer>
|
||||
@@ -8,7 +8,7 @@
|
||||
<a href="/store">dev community</a>
|
||||
</li>
|
||||
<li class="closed-menu">
|
||||
<a id="menu-open" href="#">menu</a>
|
||||
<a id="menu-open" href="#">menu {% include "components/svg/menu-open.svg" %}</a>
|
||||
</li>
|
||||
<li class="opened-menu">
|
||||
<a id="menu-close" href="#">close</a>
|
||||
|
||||
@@ -1,20 +1,35 @@
|
||||
<section id="be-your-own">
|
||||
<h1>be <em>your own</em> everything</h1>
|
||||
<p>Anything you can do in the permissioned, subscription-based, privacy-invading, insecure model of cloud computing, you can also do in the open, free, private, secure model of sovereign computing</p>
|
||||
<h1>be
|
||||
<em>your own</em>
|
||||
everything</h1>
|
||||
<p>Anything you can do in the permissioned, subscription-based, privacy-invading, insecure model of cloud computing, you
|
||||
can also do in the open, free, private, secure model of sovereign computing</p>
|
||||
<div id='ticker'>
|
||||
<div id="ticker__selected-frame">
|
||||
<span>be your own</span>
|
||||
<div id="services">
|
||||
|
||||
</div>
|
||||
{# <div id="services"></div> #}
|
||||
</div>
|
||||
<div id="ticker__window">
|
||||
<ul class='pseudoservices'>
|
||||
{% for pseudoservice in pseudoservices %}
|
||||
<li class="pseudoservice">{{pseudoservice.name}}</li>
|
||||
<li class="pseudoservice">{{ pseudoservice.name }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<a href="https://marketplace.start9.com/" class="btn">browse the start9 marketplace</a>
|
||||
</section>
|
||||
<ul class="services">
|
||||
{% for service in services %}
|
||||
{# |selectattr("pseudoservices",pseudoservice.name) #}
|
||||
<li class="service">
|
||||
<a href="">{% include "components/svg/chevron-left.svg" %}</a>
|
||||
<a href="">
|
||||
<img class="service__image" src="{{ service.slug }}.png" alt="">
|
||||
<div class="service__name">{{ service.name }}</div>
|
||||
<div class="service__desc">{{ service.description }}</div>
|
||||
</a>
|
||||
<a href="">{% include "components/svg/chevron-right.svg" %}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
<a href="https://marketplace.start9.com/" class="btn">browse the start9 marketplace</a>
|
||||
</section>
|
||||
@@ -1,10 +1,17 @@
|
||||
<section id="community">
|
||||
<h1>Join the <em>Community</em></h1>
|
||||
<input type="email" name="" id="" placeholder="email address">
|
||||
<ul class="">
|
||||
<li>{% include "components/svg/matrix.njk" %}</li>
|
||||
<li>{% include "components/svg/youtube.njk" %}</li>
|
||||
<li>{% include "components/svg/telegram.njk" %}</li>
|
||||
<li>{% include "components/svg/twitter.njk" %}</li>
|
||||
<ul class="community__icons">
|
||||
{# {% for group in menu.filter(e => e.slug == 'contact') %}
|
||||
{% for item in group.items|sort(false, false, 'order') %}
|
||||
<li>
|
||||
<a {{'class=' + item.class + '' if item.class}} {{'target=' + item.target + '' if item.target}} href="/{{item.url}}">{{item.name}}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
{% endfor %} #}
|
||||
<li><a target="_blank" href="https://matrix.to/#/!lMnRwPWnyQvOfAoEnD:matrix.start9labs.com">{% include "components/svg/matrix.svg" %}</a></li>
|
||||
<li><a target="_blank" href="https://www.youtube.com/channel/UCGEw4HJDvOn3Oy8ykR36P7Q">{% include "components/svg/youtube.svg" %}</a></li>
|
||||
<li><a target="_blank" href="https://t.me/start9_labs">{% include "components/svg/telegram.svg" %}</a></li>
|
||||
<li><a target="_blank" href="https://twitter.com/start9labs">{% include "components/svg/twitter.svg" %}</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
@@ -1,9 +1,21 @@
|
||||
<section id="support" class="inverse">
|
||||
<h1>get <em>help</em></h1>
|
||||
<p>
|
||||
Even though we've made it easy, running a personal server can still be intimidating or confusing at times.
|
||||
</p><p>
|
||||
At Start9, we pride ourselves on providing the best customer support in the world. We offer a comprehensive and detailed user manual, an extensive FAQ, written and video tutorials, and direct access to our wonderful community and team of technical experts.
|
||||
</p>
|
||||
<h1>get
|
||||
<em>help</em>
|
||||
</h1>
|
||||
<div class="cols">
|
||||
<div class="col">
|
||||
<p>
|
||||
Even though we've made it easy, running a personal server can still be intimidating or confusing at times.
|
||||
</p>
|
||||
<p>
|
||||
At Start9, we pride ourselves on providing the best customer support in the world. We offer a comprehensive and detailed
|
||||
user manual, an extensive FAQ, written and video tutorials, and direct access to our wonderful community and team of
|
||||
technical experts.
|
||||
</p>
|
||||
</div>
|
||||
<div class="col">
|
||||
<img src="../assets/images/support1.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
<a class="btn" href="/about#team">meet the team</a>
|
||||
</section>
|
||||
@@ -1,14 +1,14 @@
|
||||
<section id="menu">
|
||||
<div class="menu-content">
|
||||
<div class="header"><img src="assets/images/start9_logo.png" alt=""></div>
|
||||
<div class="header"><img src="../assets/images/start9_logo.png" alt=""></div>
|
||||
<ul class="groups">
|
||||
{% for group in menu|sort(false, false, 'order') %}
|
||||
{% for group in menu|selectattr("onHeader")|sort(false, false, 'order') %}
|
||||
<li class="{{group.size}}">
|
||||
<h1>{{group.name}}</h1>
|
||||
<ul>
|
||||
{% for item in group.items|sort(false, false, 'order') %}
|
||||
<li>
|
||||
<a {{'class=' + item.class + '' if item.class}} {{'target=' + item.target + '' if item.target}} href="/{{item.url}}">{{item.name}}</a>
|
||||
<a {{'class=' + item.class + '' if item.class}} {{'target=' + item.target + '' if item.target}} href="{{item.url}}">{{item.name}}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
4
src/_includes/components/svg/chevron-left.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-caret-left" width="60" height="60" viewBox="0 0 24 24" stroke-width="1" stroke="#ffffff" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
|
||||
<path d="M18 15l-6 -6l-6 6h12" transform="rotate(270 12 12)" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 351 B |
4
src/_includes/components/svg/chevron-right.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-caret-right" width="60" height="60" viewBox="0 0 24 24" stroke-width="1" stroke="#ffffff" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
|
||||
<path d="M18 15l-6 -6l-6 6h12" transform="rotate(90 12 12)" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 351 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
3
src/_includes/components/svg/menu-open.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg viewBox="0 0 28 19" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M13.8706 18.957H0.370605V15.957H13.8706V18.957ZM27.3706 11.457H0.370605V8.45703H27.3706V11.457ZM27.3706 3.95703H13.8706V0.957031H27.3706V3.95703Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 251 B |
@@ -1,3 +1,3 @@
|
||||
<svg width="63" height="62" viewBox="0 0 63 62" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg viewBox="0 0 63 62" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M62.5049 31C62.5049 47.8436 48.6246 61.5 31.5049 61.5C14.3851 61.5 0.504883 47.8436 0.504883 31C0.504883 14.1564 14.3851 0.5 31.5049 0.5C48.6246 0.5 62.5049 14.1564 62.5049 31ZM32.6157 23.0166C29.601 24.2493 23.574 26.8037 14.5375 30.6772C13.0702 31.2516 12.3004 31.8133 12.2306 32.3623C12.1118 33.2926 13.295 33.6586 14.9018 34.1542C15.1214 34.2228 15.3487 34.2915 15.5812 34.3677C17.1648 34.8735 19.2935 35.4657 20.3991 35.4886C21.404 35.5089 22.5252 35.1023 23.7626 34.2686C32.205 28.6591 36.563 25.8252 36.8369 25.7642C37.0306 25.721 37.2993 25.665 37.4801 25.8252C37.661 25.9827 37.6429 26.2827 37.6248 26.364C37.506 26.8545 32.8715 31.0966 30.469 33.2926C29.7198 33.9763 29.1902 34.4618 29.0817 34.5736C28.8389 34.8201 28.5909 35.0565 28.3532 35.2827C26.8807 36.6755 25.7802 37.7227 28.4152 39.4307C29.681 40.2517 30.6937 40.9303 31.7038 41.6064C32.8069 42.346 33.9074 43.0831 35.3334 44.0032C35.695 44.237 36.0412 44.4785 36.3796 44.7148C37.6635 45.6171 38.8183 46.4254 40.2443 46.2983C41.071 46.222 41.9286 45.457 42.3626 43.172C43.3882 37.7685 45.4084 26.0666 45.876 21.2425C45.9044 20.842 45.8871 20.4396 45.8243 20.0429C45.7867 19.7225 45.6281 19.4276 45.38 19.2168C45.0105 18.9195 44.437 18.8559 44.1787 18.861C43.0136 18.8813 41.226 19.4939 32.6157 23.0166Z" fill="var(--c-text-primary)"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1007 B After Width: | Height: | Size: 1007 B |
@@ -8,7 +8,7 @@
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{{ title }}</title>
|
||||
<link rel="stylesheet" href="assets/styles/main.css">
|
||||
<link rel="stylesheet" href="../assets/styles/main.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@@ -45,12 +45,6 @@
|
||||
}
|
||||
</style>
|
||||
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.10.4/gsap.min.js"></script>
|
||||
<script src="{{ '/assets/js/gsap.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/ScrollTrigger.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/ScrollSmoother.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/DrawSVGPlugin.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/CustomEase.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/main.js' | url }}"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
161
src/about.njk
@@ -0,0 +1,161 @@
|
||||
---
|
||||
title: About | Start9
|
||||
layout: layouts/base.njk
|
||||
---
|
||||
|
||||
{# <script src="{{ '/assets/js/getTeam.js' | url }}"></script> #}
|
||||
<link rel="stylesheet" href="../assets/styles/peripheral.css">
|
||||
<section id="hero">
|
||||
<div id="hero-image">
|
||||
<img src="assets/images/explosion.png" alt="">
|
||||
<img class="img-shadow" src="assets/images/explosion.png" alt=""></div>
|
||||
<div id="logo">
|
||||
<h1>
|
||||
about start
|
||||
</h1>
|
||||
<ul id="sub-menu">
|
||||
<li>
|
||||
<a href="#mission">mission</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#values">values</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#virtues">virtues</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#origin">origin story</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#team">team</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section id="blurb">
|
||||
<h2>Privacy and<br>
|
||||
free speech are fundamental human rights and essential ingredients for a free society.</h2>
|
||||
<p>Human history demonstrates that, when entrusted to others, these rights are invariably denied, resulting in great
|
||||
suffering. As such, it is necessary for individuals to protect their own privacy and right to speak freely.
|
||||
</p>
|
||||
<p>Fortunately, modern technologies, in the form of personal computers, encryption, and open, decentralized network
|
||||
protocols such as the Internet and Bitcoin, make this a real possibility.
|
||||
</p>
|
||||
<p>What is needed is a revolution in personal computing away from the current, hosted, custodial model that breeds
|
||||
dependency and corruption, towards a decentralized model, where individuals have absolute control over their data and
|
||||
communications.</p>
|
||||
</section>
|
||||
<section id="mission">
|
||||
<h2>mission</h2>
|
||||
<h3>To eliminate the need for trusted third parties in the human/computer relationship.</h3>
|
||||
<img src="" alt="" class="section-hero section-hero--bkg"></section>
|
||||
<section id="values">
|
||||
<h2>values</h2>
|
||||
<img src="" alt="" class="section-hero">
|
||||
<p>
|
||||
<strong>This list of values is not comprehensive. It does not encapsulate all the values of all the members of Start9.
|
||||
Instead, we attempt to enumerate those values which represent the fulfillment of our mission and which are practically
|
||||
within our ability to achieve.</strong>
|
||||
</p>
|
||||
<h4>decentralization</h4>
|
||||
<p>Centralized systems act as single points of failure and are susceptible to corruption. Decentralized systems afford
|
||||
greater robustness and soundness guarantees.</p>
|
||||
<H4>openness</H4>
|
||||
<p>Everyone should have permissionless access to computing resources and tools, unrestricted by geography, ethnicity, or
|
||||
belief.</p>
|
||||
<H4>community</H4>
|
||||
<p>The human experience is richest when shared amongst individuals who possessing common beliefs, values, and
|
||||
activities, and that computers should facilitate the formation of communities.</p>
|
||||
<H4>privacy</H4>
|
||||
<p>There are four reasons that privacy is necessary for a free society and proper human existence: privacy (1) promotes
|
||||
creativity and experimentation by minimizing the risk of embarrassment; (2) protects valuable information from theft and
|
||||
extortion; (3) enables the diffusion of contrarian ideals and ideas; (4) serves as an insurance policy against the
|
||||
future, in the event that what is acceptable today becomes unacceptable tomorrow.</p>
|
||||
<h4>independence</h4>
|
||||
<p>Being dependent means being unable to survive on your own. Like a child, it means needing others and relying on them
|
||||
to provide for you, thus granting them power over you. A free and dignified human existence demands self-reliance: the
|
||||
ability to think and act with efficacy to obtain one’s needs.</p>
|
||||
</section>
|
||||
<section id="virtues">
|
||||
<h2>virtues</h2>
|
||||
<p>
|
||||
<strong>Below are the virtues or qualities of character needed to achieve our values and accomplish our mission.</strong>
|
||||
</p>
|
||||
<img src="" alt="" class="section-hero">
|
||||
<h4>Audacity</h4>
|
||||
<p>A willingness to take bold risks.</p>
|
||||
<h4>Tenacity</h4>
|
||||
<p>Fierce determination and relentless effort.</p>
|
||||
<h4>Excellence</h4>
|
||||
<p>Setting high standards and never settling for less.</p>
|
||||
<h4>courtesy</h4>
|
||||
<p>Treating others politely, with kindness and due respect.</p>
|
||||
<h4>generocity</h4>
|
||||
<p>providing beyond what is necessary or expected.</p>
|
||||
<h4>fortitude</h4>
|
||||
<p>Having courage in the face of pain or adversity.</p>
|
||||
<h4>integrity</h4>
|
||||
<p>The virtue that underlies all others. The quality of being whole and genuine, intact and unbroken, internally
|
||||
consistent, and adhering to principle in all cases.</p>
|
||||
</section>
|
||||
<section id="origin">
|
||||
<h2>origin story</h2>
|
||||
<img src="" alt="" class="section-hero">
|
||||
<p>
|
||||
<strong>Pokemon is a game for Gameboy.</strong>
|
||||
Twitch is a live video streaming app. “Twitch Plays Pokemon” was a popular phenomenon where Twitch users would
|
||||
collaborate to play a SHARED game of Pokemon on Gameboy. Here’s how it worked:</p>
|
||||
<p>Participants would use the Twitch message board to enter commands that then got executed in the gameplay. For
|
||||
example, if someone entered the command “right”, that would cause the player to move 1 space to the right. Commands
|
||||
would execute immediately after they were received, and anyone could enter a valid command at any time. You can think of
|
||||
Twitch Plays Pokemon as the more practical equivalent of placing a Gameboy in the middle of a crowded room and telling
|
||||
everyone to push buttons at the same time. As you might expect, the gameplay of Twitch Plays Pokemon was quite
|
||||
“twitchy”, but in a very “infinite monkey theory” way, progress could eventually be made.</p>
|
||||
<p>
|
||||
<strong>In an effort to streamline play</strong>, a new game mode was devised in which players would “vote” for the next
|
||||
command and, every 4 seconds, whatever command received the most votes over the previous 4 seconds would execute in the
|
||||
game. Also introduced in this mode was the ability to attach multipliers to a command, such that the command would
|
||||
execute that number of times. For example, “right2” would cause the player to move 2 spaces to the right. “right3” would
|
||||
cause the player to move 3 spaces to the right, and so on. The highest number any participant could place after a
|
||||
command was 9, meaning whatever command they entered would execute 9 times. As you might expect, gameplay in this mode
|
||||
was less chaotic, more efficient, but it also meant each participant had less direct and immediate influence over the
|
||||
game. If a group of even 5-10 got together and colluded on their votes, they could practically take over the game and
|
||||
make contrarian ideas irrelevant. The new game mode was called “Democracy”, and the original game mode became known as
|
||||
“Anarchy”. Which game mode was engaged was itself governed by a democratic process: if more participants wanted to play
|
||||
in Democracy mode, then Democracy mode engaged; if more wanted to play in Anarchy mode, then Anarchy mode engaged.</p>
|
||||
<p>To summarize:
|
||||
<strong>in Anarchy mode, everyone had equal influence over the game</strong>, but progress was slow and clunky. In
|
||||
Democracy mode, progress was fast and efficient, but colluding groups could marginalize individual participants and ruin
|
||||
the game for them.</p>
|
||||
<p>So… individual participants
|
||||
<strong>discovered a means of effective protest</strong>
|
||||
whenever Democracy mode became suffocating, but they could not garner enough votes to switch back to Anarchy mode.
|
||||
Someone would type the command “start9” into the comments. This command meant “open the start menu 9 times in a row”,
|
||||
which, as you might imagine, would be enormously disruptive if executed. The entire screen would be blocked by the start
|
||||
menu, over and over. Typing “start9” was a participant’s way of signaling to other participants that they felt
|
||||
marginalized by Democracy mode, and they were ready to fight back. If others felt the same, they could also begin typing
|
||||
“start9” - then, sure enough, “start9” would finally receive more votes than the colluding group’s command, and the menu
|
||||
opening would begin. Every 4 seconds, the menu would open 9 times…again, and again, and again…until finally, the
|
||||
colluding group would be forced to either cooperate in reverting the game mode back to Anarchy mode or quit altogether.</p>
|
||||
<p>Playing in Anarchy mode was impractical, but people did not want to play a game where they had no voice, where a
|
||||
group of insiders had taken total control. And so
|
||||
<strong>“start9” became the battle cry of the individual</strong>, the out-group, a means of signaling to other
|
||||
individuals that it was time to fight back against the usurpers - to use their own rules against them, until there was
|
||||
no alternative but to return control to the individual participants.</p>
|
||||
</section>
|
||||
<section id="team">
|
||||
<h1>our team</h1>
|
||||
<img src="" alt="" class="section-hero">
|
||||
{% block content %}
|
||||
<div>
|
||||
<ul>
|
||||
{% for member in team %}
|
||||
<li>
|
||||
{# <a href="/files/{{ member.login }}"> {{ member.thing2 }} </a> #}
|
||||
{{ member.login }}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock %}
|
||||
</section>
|
||||
BIN
src/assets/images/support1.png
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
src/assets/images/support1.png~
Normal file
|
After Width: | Height: | Size: 55 KiB |
10
src/assets/js/getTeam.js
Normal file
@@ -0,0 +1,10 @@
|
||||
const fetch = require("node-fetch");
|
||||
module.exports = async function() {
|
||||
return fetch(url)
|
||||
.then(res => res.json()) // node-fetch option to transform to json
|
||||
.then(json => {
|
||||
return {
|
||||
teamMembers: json
|
||||
};
|
||||
}).then(json => console.log(json));;
|
||||
}
|
||||
@@ -1,36 +1,68 @@
|
||||
gsap.registerPlugin(DrawSVGPlugin);
|
||||
gsap.registerPlugin(CustomEase);
|
||||
|
||||
var bodyRect = document.body.getBoundingClientRect();
|
||||
|
||||
var sections = [
|
||||
"pitch",
|
||||
"products",
|
||||
"infographics",
|
||||
"bitcoin",
|
||||
"be-your-own",
|
||||
"powered-by",
|
||||
"support",
|
||||
"dev",
|
||||
"community"
|
||||
]
|
||||
|
||||
//////////////////////////////////////////
|
||||
// AUTO APPLY URL ANCHORS
|
||||
|
||||
setTimeout(function() {
|
||||
|
||||
// timeout to allow initial load to redirect to anchor
|
||||
// TODO: maybe apply the scroll-behavior: smooth to HTML after a timeout
|
||||
|
||||
sections.forEach(slug => {
|
||||
ScrollTrigger.create({
|
||||
trigger: "#" + slug,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
markers: {startColor: "white", endColor: "white"},
|
||||
onEnter: () => { window.location.href = "#" + slug; },
|
||||
onEnterBack: () => { window.location.href = "#" + slug; }
|
||||
});
|
||||
});
|
||||
|
||||
}, 2000);
|
||||
|
||||
|
||||
//////////////////////////////////////////
|
||||
// MENU
|
||||
|
||||
let menuOpen = document.getElementById('menu-open'),
|
||||
menuClose = document.getElementById('menu-close'),
|
||||
openedMenuArray = gsap.utils.toArray(".opened-menu"),
|
||||
closedMenuArray = gsap.utils.toArray(".closed-menu");
|
||||
let menuOpen = document.getElementById("menu-open"),
|
||||
menuClose = document.getElementById("menu-close"),
|
||||
openedMenuArray = gsap.utils.toArray(".opened-menu"),
|
||||
closedMenuArray = gsap.utils.toArray(".closed-menu");
|
||||
|
||||
menuOpen.addEventListener("click", () => openMenu());
|
||||
menuClose.addEventListener("click", () => closeMenu());
|
||||
|
||||
|
||||
|
||||
function openMenu() {
|
||||
gsap.to('#menu', { y: "0vh" });
|
||||
gsap.to('main', { y: "0vh" });
|
||||
gsap.to(openedMenuArray, { x: '0', opacity: 1, width: 'auto'});
|
||||
gsap.to(closedMenuArray, { x: '3rem', opacity: 0, width: 0});
|
||||
gsap.to("#menu", { y: "0vh" });
|
||||
gsap.to("main", { y: "0vh" });
|
||||
gsap.to(openedMenuArray, { x: "0", opacity: 1, width: "auto" });
|
||||
gsap.to(closedMenuArray, { x: "3rem", opacity: 0, width: 0 });
|
||||
gsap.to("html", { overflow: "hidden"});
|
||||
}
|
||||
function closeMenu() {
|
||||
gsap.to('#menu', { y: "-100vh" });
|
||||
gsap.to('main', { y: "-100vh" });
|
||||
gsap.to(closedMenuArray, { x: '0', opacity: 1, width: 'auto'});
|
||||
gsap.to(openedMenuArray, { x: '3rem', opacity: 0, width: 0});
|
||||
gsap.to("#menu", { y: "-100vh" });
|
||||
gsap.to("main", { y: "-100vh" });
|
||||
gsap.to(closedMenuArray, { x: "0", opacity: 1, width: "auto" });
|
||||
gsap.to(openedMenuArray, { x: "3rem", opacity: 0, width: 0 });
|
||||
gsap.to("html", { overflow: "overlay"});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////
|
||||
// HERO
|
||||
|
||||
@@ -51,6 +83,23 @@ gsap.from("#logo", { duration: 0.5, y: "-5rem", opacity: 0, delay: 0.75 });
|
||||
// content: '.scroll_track_content'
|
||||
// });
|
||||
|
||||
// backdrop-filter: blur(10px);
|
||||
//background-color: rgba(0,0,0,0.1);
|
||||
|
||||
gsap.to(
|
||||
"header",
|
||||
{
|
||||
duration: 0.5,
|
||||
backgroundColor: "rgba(0,0,0,0.1)",
|
||||
backdropFilter: "blur(10px)",
|
||||
scrollTrigger: {
|
||||
trigger: "#hero-image",
|
||||
scrub: true,
|
||||
start: "center top", // "triggerElement page"
|
||||
end: "bottom top", // "triggerElement page"
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
//////////////////////////////////////////
|
||||
// PITCH
|
||||
@@ -70,56 +119,66 @@ gsap.from("#pitch h1", {
|
||||
// })
|
||||
|
||||
gsap.from("#hero-to-pitch path:first-child", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#hero-to-pitch",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#hero-to-pitch",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
|
||||
gsap.from("#products-to-info path:first-child", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#products-to-info path:first-child",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
gsap.from("#products-to-info path:first-child", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#products-to-info path:first-child",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
|
||||
gsap.from("#products-to-info path:nth-child(2)", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#products-to-info path:nth-child(2)",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
gsap.from("#products-to-info path:nth-child(2)", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#products-to-info path:nth-child(2)",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
|
||||
gsap.from("#bitcoin-to-be path", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#bitcoin-to-be path",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
gsap.from("#bitcoin-to-be path", {
|
||||
drawSVG: 0,
|
||||
ease: "none",
|
||||
scrollTrigger: {
|
||||
trigger: "#bitcoin-to-be path",
|
||||
scrub: true,
|
||||
start: "top center",
|
||||
end: "bottom center",
|
||||
},
|
||||
});
|
||||
|
||||
let imgs = gsap.utils.toArray(".pseudoservice"),
|
||||
next = 1.5, // time to change
|
||||
itemHeight = document.querySelector(".pseudoservice").getBoundingClientRect().height,
|
||||
listHeight = document.querySelector(".pseudoservices").getBoundingClientRect().height,
|
||||
windowHeight = document.getElementById("ticker__window").clientHeight,
|
||||
kerplunk = CustomEase.create("custom", "M0,0 C0.126,0.382 0.066,0.863 0.198,1.036 0.25,1.104 0.264,0.982 0.326,0.982 0.344,0.982 0.489,0.998 0.516,1 0.65,1.007 0.863,1 1,1 "),
|
||||
kerplunk2 = CustomEase.create("custom", "M0,0 C0.126,0.382 0.178,0.802 0.288,1.052 0.303,1.088 0.372,0.99 0.434,0.99 0.502,0.99 0.497,1 0.524,1 0.664,1 0.863,1 1,1 ");
|
||||
next = 1.5, // time to change
|
||||
itemHeight = document
|
||||
.querySelector(".pseudoservice")
|
||||
.getBoundingClientRect().height,
|
||||
listHeight = document
|
||||
.querySelector(".pseudoservices")
|
||||
.getBoundingClientRect().height,
|
||||
windowHeight = document.getElementById("ticker__window").clientHeight,
|
||||
kerplunk = CustomEase.create(
|
||||
"custom",
|
||||
"M0,0 C0.126,0.382 0.066,0.863 0.198,1.036 0.25,1.104 0.264,0.982 0.326,0.982 0.344,0.982 0.489,0.998 0.516,1 0.65,1.007 0.863,1 1,1 "
|
||||
),
|
||||
kerplunk2 = CustomEase.create(
|
||||
"custom",
|
||||
"M0,0 C0.126,0.382 0.178,0.802 0.288,1.052 0.303,1.088 0.372,0.99 0.434,0.99 0.502,0.99 0.497,1 0.524,1 0.664,1 0.863,1 1,1 "
|
||||
);
|
||||
|
||||
function crossfade() {
|
||||
var action = gsap
|
||||
|
||||
@@ -25,19 +25,21 @@
|
||||
width: 100%;
|
||||
|
||||
#ticker__selected-frame {
|
||||
outline: 1px solid white;
|
||||
outline-offset: calc(0.1 * var(--size));
|
||||
//outline: 1px solid white;
|
||||
//outline-offset: calc(0.1 * var(--size));
|
||||
font-size: var(--size);
|
||||
text-transform: uppercase;
|
||||
line-height: var(--size);
|
||||
position: absolute;
|
||||
top: calc(5 * var(--line));
|
||||
top: calc(2 * var(--line));
|
||||
left: -.5ch;
|
||||
right: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: var(--size);
|
||||
padding: var(--p);
|
||||
background-color: #353535;
|
||||
border-bottom: 0.5rem #353535 solid;
|
||||
}
|
||||
#ticker__window {
|
||||
height: 50vh;
|
||||
@@ -48,7 +50,7 @@
|
||||
position: relative;
|
||||
}
|
||||
|
||||
ul {
|
||||
ul.pseudoservices {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
li {
|
||||
@@ -63,6 +65,16 @@
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
ul.services{
|
||||
position: absolute;
|
||||
top: calc(3 * var(--line));
|
||||
background-color: #353535;
|
||||
padding: 2rem;
|
||||
width: calc(11.5ch - 4rem);
|
||||
font-size: var(--size);
|
||||
left: -1rem;
|
||||
}
|
||||
}
|
||||
a.btn{
|
||||
align-self: center;
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
#community {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
min-height: calc(100vh - 2 * var(--section-padding));
|
||||
|
||||
input[type="email"] {
|
||||
width: 31ch;
|
||||
background: transparent;
|
||||
border: 0;
|
||||
border-bottom: 1px dotted var(--c-line-primary);
|
||||
padding: 0.7em 1em;
|
||||
font-size: 2rem;
|
||||
font-family: var(--f-button);
|
||||
font-weight: 100;
|
||||
color: var(--c-text-primary);
|
||||
margin-top: 7rem;
|
||||
}
|
||||
|
||||
.community__icons {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
width: 31ch;
|
||||
font-size: 2rem;
|
||||
font-family: var(--f-button);
|
||||
align-items: center;
|
||||
}
|
||||
margin-top: 3rem;
|
||||
|
||||
a {
|
||||
&:hover svg path{
|
||||
fill: var(--c-text-accent);
|
||||
}
|
||||
svg {
|
||||
width: 3rem;
|
||||
path{
|
||||
transition: var(--t-simple);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding: 6rem;
|
||||
min-height: calc(100vh - 2 * var(--section-padding));
|
||||
padding: var(--section-padding) 6rem;
|
||||
h2{
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
|
||||
124
src/assets/styles/footer.scss
Normal file
@@ -0,0 +1,124 @@
|
||||
footer{
|
||||
//position: absolute;
|
||||
padding: 0;
|
||||
.footer-content{
|
||||
display: flex;
|
||||
.header{
|
||||
align-self: flex-start;
|
||||
margin: 5rem 0 0 5rem;
|
||||
img{
|
||||
width: 12rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
background-color: black;
|
||||
.groups{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
grid-template-columns: 1fr 1fr 1fr;
|
||||
grid-template-rows: 1fr 1fr;
|
||||
.half {
|
||||
grid-row: span 1;
|
||||
}
|
||||
.full {
|
||||
grid-row: span 2;
|
||||
}
|
||||
& > li {
|
||||
//margin-top: 5rem;
|
||||
padding: 2.5rem 2.5rem;
|
||||
&:nth-child(-n+2){
|
||||
// border-right: var(--b-secondary);
|
||||
}
|
||||
}
|
||||
// & > *{
|
||||
// outline: 1px solid orange;
|
||||
// }
|
||||
}
|
||||
h1{
|
||||
font-family: var(--f-accent-bold);
|
||||
font-size: .9rem;
|
||||
color: var(--c-text-primary);
|
||||
margin-bottom: 1.7rem;
|
||||
}
|
||||
.groups li > a {
|
||||
font-family: var(--f-accent);
|
||||
font-size: 1rem;
|
||||
line-height: 1.5;
|
||||
font-weight: 300;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: .1em;
|
||||
color: var(--c-text-primary);
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
display: inline-block;
|
||||
white-space: nowrap;
|
||||
// &::after{
|
||||
// content: '';
|
||||
// position: absolute;
|
||||
// transition: var(--t-simple);
|
||||
// display: inline-block;
|
||||
// width:0;
|
||||
// height: 85%;
|
||||
// left: 50%;
|
||||
// opacity: 0;
|
||||
// }
|
||||
&:hover {
|
||||
color: var(--c-text-accent);
|
||||
// &::after{
|
||||
// border: var(--b-primary);
|
||||
// width: 110%;
|
||||
// left: -5%;
|
||||
// opacity: 1;
|
||||
// }
|
||||
}
|
||||
&.highlight{
|
||||
color: var(--c-text-bright);
|
||||
font-weight: 300;
|
||||
&::before{
|
||||
content: '';
|
||||
z-index: -1;
|
||||
//border: var(--b-primary);
|
||||
background-color: var(--c-text-accent);
|
||||
width: 110%;
|
||||
left: -5%;
|
||||
display: inline-block;
|
||||
height: 85%;
|
||||
position: absolute;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 1200px) {
|
||||
footer .groups li > a {
|
||||
font-size: 2.2vw;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 650px) {
|
||||
footer .groups li > a {
|
||||
font-size: 3.5vmin;
|
||||
}
|
||||
footer .groups{
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: 1fr 1fr 1fr;
|
||||
}
|
||||
|
||||
footer .groups li {
|
||||
border: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 500px) {
|
||||
footer .groups li > a {
|
||||
font-size: 4vmin;
|
||||
}
|
||||
footer .groups{
|
||||
display: grid;
|
||||
grid-template-columns: 1fr;
|
||||
grid-template-rows: auto;
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ main{
|
||||
}
|
||||
|
||||
section {
|
||||
--section-padding: 2vh;
|
||||
--section-padding: 6vh;
|
||||
// min-height: calc(100vh - 2 * var(--section-padding));
|
||||
// padding: 0 var(--section-padding);
|
||||
// outline: 1px solid orange;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
@use 'normalize';
|
||||
@use 'fonts';
|
||||
@use 'menu';
|
||||
@use 'footer';
|
||||
/* @use 'post'; */
|
||||
|
||||
:root {
|
||||
@@ -38,10 +39,13 @@
|
||||
--f-accent-bold: 'Montserrat';
|
||||
--f-accent2-bold: 'Arkibal Mono Rg';
|
||||
--f-copy: 'Liberation Mono';
|
||||
--f-button: 'Basis Grotesque Mono Pro';
|
||||
|
||||
--t-simple: all .2s ease-in-out;
|
||||
}
|
||||
|
||||
html {
|
||||
background-color: lime;
|
||||
//background-color: lime;
|
||||
font-size: 2vmin;
|
||||
scroll-behavior: smooth;
|
||||
color: var(--c-text-primary);
|
||||
@@ -70,6 +74,10 @@ html {
|
||||
}
|
||||
}
|
||||
|
||||
body{
|
||||
background: #333333;
|
||||
}
|
||||
|
||||
main{
|
||||
transform: translateY(-100vh);
|
||||
}
|
||||
@@ -103,8 +111,8 @@ header{
|
||||
nav{
|
||||
--padding: 1rem;
|
||||
width: calc(100% - 2 * var(--padding) - 15px);
|
||||
font-family: var(--f-accent-bold);
|
||||
font-weight: 400;
|
||||
font-family: var(--f-accent);
|
||||
font-weight: 300;
|
||||
line-height: 1;
|
||||
text-transform: uppercase;
|
||||
padding: var(--padding);
|
||||
@@ -129,6 +137,20 @@ nav{
|
||||
}
|
||||
}
|
||||
}
|
||||
&.scrolled-menu{
|
||||
backdrop-filter: blur(10px);
|
||||
background-color: rgba(0,0,0,0.1);
|
||||
}
|
||||
}
|
||||
|
||||
#menu-open{
|
||||
display: flex;
|
||||
gap: .5em;
|
||||
align-items: center;
|
||||
svg{
|
||||
height: .7em;
|
||||
margin-top: -2px;
|
||||
}
|
||||
}
|
||||
|
||||
.opened-menu {
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
&::after{
|
||||
content: '';
|
||||
position: absolute;
|
||||
transition: all .2s ease-in-out;
|
||||
transition: var(--t-simple);
|
||||
display: inline-block;
|
||||
width:0;
|
||||
height: 85%;
|
||||
|
||||
97
src/assets/styles/peripheral.scss
Normal file
@@ -0,0 +1,97 @@
|
||||
main{
|
||||
margin-top: 10rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
section{
|
||||
--width: 42ch;
|
||||
--side-padding: 3rem;
|
||||
font-family: "Montserrat";
|
||||
font-weight: 300;
|
||||
font-size: 1rem;
|
||||
width: var(--width);
|
||||
padding: 10rem var(--side-padding);
|
||||
position: relative;
|
||||
overflow:visible;
|
||||
&:nth-of-type(even){
|
||||
&::before{
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: calc(-1 * ((100vw - var(--width)) / 2) + var(--side-padding));
|
||||
width: 100vw;
|
||||
background-color: #212121;
|
||||
z-index: -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-family: var(--f-hero);
|
||||
font-size: 4.4rem;
|
||||
width: 110%;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: var(--f-hero);
|
||||
font-size: 3.7rem;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
section#blurb h2 {
|
||||
font-size: 2.5rem;
|
||||
color: var(--c-text-accent);
|
||||
width: 110%;
|
||||
line-height: 1;
|
||||
text-align: left;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: var(--f-hero);
|
||||
font-size: 1.8rem;
|
||||
width: 112%;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
h3, h4 {
|
||||
color: var(--c-text-accent);
|
||||
}
|
||||
|
||||
ul#sub-menu{
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
width: 107%;
|
||||
li a{
|
||||
font-family: var(--f-hero);
|
||||
font-size: 1.2rem;
|
||||
color: var(--c-text-primary);
|
||||
text-transform: uppercase;
|
||||
font-weight: 900;
|
||||
white-space: nowrap;
|
||||
transition: var(--t-simple);
|
||||
&:hover{
|
||||
color: var(--c-text-accent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
p{
|
||||
font-family: "Montserrat";
|
||||
font-weight: 300;
|
||||
line-height: 1.9rem;
|
||||
font-size: 1rem;
|
||||
margin-top: 0.5rem;
|
||||
margin-bottom: 2.5rem;
|
||||
|
||||
strong{
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
@@ -10,7 +10,7 @@ section#products {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
img {
|
||||
transition: all ease-in-out .2s;
|
||||
transition: var(--t-simple);
|
||||
width: 42vw;
|
||||
}
|
||||
a {
|
||||
@@ -18,7 +18,7 @@ section#products {
|
||||
flex-direction: column;
|
||||
position: relative;
|
||||
padding: 2rem;
|
||||
transition: all ease-in-out .2s;
|
||||
transition: var(--t-simple);
|
||||
.heading h1 {
|
||||
line-height: .8;
|
||||
}
|
||||
|
||||
@@ -4,4 +4,22 @@ section#support {
|
||||
align-items: center;
|
||||
padding: 6rem;
|
||||
background: var(--c-1);
|
||||
}
|
||||
margin-bottom: 6rem;
|
||||
.cols {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6rem;
|
||||
.col {
|
||||
max-width: 37vw;
|
||||
}
|
||||
}
|
||||
img {
|
||||
max-height: 40vh;
|
||||
}
|
||||
@media only screen and (max-width: 1200px) {
|
||||
.cols{
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
6
src/contact.njk
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
title: About | Start9
|
||||
layout: layouts/base.njk
|
||||
---
|
||||
|
||||
{% include "components/landing/community.njk" %}
|
||||
@@ -64,4 +64,12 @@ layout: layouts/base.njk
|
||||
|
||||
{% include "components/landing/dev.njk" %}
|
||||
|
||||
{% include "components/landing/community.njk" %}
|
||||
{% include "components/landing/community.njk" %}
|
||||
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.10.4/gsap.min.js"></script>
|
||||
<script src="{{ '/assets/js/gsap.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/ScrollTrigger.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/ScrollSmoother.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/DrawSVGPlugin.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/CustomEase.min.js' | url }}"></script>
|
||||
<script src="{{ '/assets/js/main.js' | url }}"></script>
|
||||