Compare commits

..

31 Commits

Author SHA1 Message Date
b19b838422 Merge pull request 'Update frontpage content' (#9) from feature/frontpage_content into master
Reviewed-on: Kosmos/website#9
2022-09-04 19:28:14 +00:00
Râu Cao
b64a998a86 Update README 2022-09-04 21:21:44 +02:00
Râu Cao
ade75e9621 Update README 2022-09-04 21:14:50 +02:00
Râu Cao
e7f2ef9689 Update frontpage content
Add links to the new pages, embedded in additional copy.
2022-09-04 21:10:03 +02:00
fccdb83a9a Update release build 2022-07-11 13:27:53 +02:00
1ee4c3a3a9 Add relative link to home page in topbar 2022-07-11 13:27:17 +02:00
418669defb Merge pull request 'Set up Hugo, add new website/content' (#8) from feature/hugo into master
Reviewed-on: #8
2022-07-11 11:07:00 +00:00
b43721921b Update release build 2022-07-03 20:12:42 +02:00
05e2d5abd2 Add mobile nav
Pure CSS, baby!
2022-07-03 20:12:19 +02:00
28b79acd1f Tweak white space 2022-07-02 17:23:25 +02:00
d1da00305a Update header image 2022-07-02 17:19:51 +02:00
4f1d03ba5f Add custom header image
Add support for configuring a custom header image from a page's front
matter, and use a new one for foundation.
2022-07-02 17:08:07 +02:00
7faf3602fd Update release build 2022-06-30 16:15:13 +02:00
83e506b8e7 Add topnav outlinks 2022-06-30 16:13:32 +02:00
47925e40fb Finalize first version of foundation content 2022-06-30 15:35:40 +02:00
aebbd9796e Update release build 2022-06-30 15:18:52 +02:00
93dc1fad82 Add more foundation content 2022-06-24 20:14:00 +02:00
7bf64eb559 Add first foundation content 2022-06-23 21:16:26 +02:00
4d90fe1626 Add background color for divider image/area 2022-06-23 16:32:35 +02:00
87d6ace2dd Build release 2022-06-23 11:50:08 +02:00
a09576a97e Remove absolute link from data text 2022-06-23 11:49:38 +02:00
e50759ba69 Use relative permalink for CSS 2022-06-23 11:46:28 +02:00
a14e6ebe62 Fix kosmos.social URL 2022-06-22 20:12:07 +02:00
9e1c2bd397 Add projects content 2022-06-22 17:27:29 +02:00
5a9ffaab62 Add asset fingerprinting, build/dev scripts
Add fingerprinting for the CSS file, as well as npm scripts for all
common build and dev tasks.
2022-06-04 11:09:00 +02:00
f0f7bfd190 Add services list from data template 2022-06-01 17:09:17 +02:00
6be29ea741 Add some content 2022-05-27 19:47:59 +02:00
80f9b45682 Add the comet 2022-05-27 15:11:52 +02:00
2aa6612a28 Add optional page description/subheading 2022-05-27 15:11:29 +02:00
f65aadc03c Add main menu, basic layout 2022-05-27 12:49:18 +02:00
1e728d56e6 WIP Set up new layout, Tailwind CSS 2022-05-27 10:45:33 +02:00
56 changed files with 2166 additions and 1264 deletions

1
.gitignore vendored
View File

@@ -1 +1,2 @@
.hugo_build.lock
node_modules node_modules

View File

View File

@@ -1,10 +1,14 @@
# kosmos.org # kosmos.org
This website (or rather foundation for a future website) is a simple static This website is a simple static site. It is built using the
site. It is built using the [Hugo](https://gohugo.io/) static site generator. [Hugo](https://gohugo.io/) static site generator.
## Getting started ## Getting started
1. Clone this Git repository 1. Clone this Git repository
2. [Install Hugo](https://gohugo.io/getting-started/installing/) 2. [Install Hugo](https://gohugo.io/getting-started/installing/)
3. Run `hugo server` 3. Run `npm run dev`
## Build for production
npm run build:release

View File

@@ -1,5 +0,0 @@
theme = "kosmos-22"
baseURL = 'https://kosmos.org/'
languageCode = 'en-us'
title = 'Kosmos'
disableKinds = ["taxonomy", "term", "RSS", "sitemap", "robotsTXT"]

14
config.yaml Normal file
View File

@@ -0,0 +1,14 @@
theme: kosmos-22
baseURL: https://kosmos.org/
languageCode: en-us
title: Kosmos
disableKinds:
- taxonomy
- term
- RSS
- sitemap
- robotsTXT
markup:
goldmark:
renderer:
unsafe: true # Allow HTML in md files

View File

@@ -1,5 +0,0 @@
---
title: Contact Us
---
Contact us.

View File

@@ -1,5 +1,80 @@
--- ---
title: Kosmos Infrastructure Foundation title: Kosmos Infrastructure Foundation
description: Providing physical infrastructure for Kosmos software and services
headerImage: servers-02.jpg
menu:
main:
identifier: foundation
name: Foundation
weight: 10
--- ---
Foundation content The Kosmos Infrastructure Foundation (KIF) is the legal, physical, and financial
host organization for Kosmos hosted services.
It acts as an infrastructure provider to the developers and users of Kosmos
software. It is appointed this role by the Kosmos co-operative, and is run by
members of the co-operative itself.
The foundation also accepts financial contributions on behalf of the
co-operative, both for the development and maintenance of Kosmos (and related)
software, as well as for providing hosted services to people and organizations.
As per the KIF's founding statutes, which are legally binding, any and all of
its funds must only be used for these purposes.
## Our Mission
We believe that neither the development nor usage of [free and open-source
software](https://en.wikipedia.org/wiki/Free_and_open-source_software) should
be entirely dependent upon select corporations or VC-funded startup companies.
Thus, we think that free software benefits from community-owned, sovereign and
open communication and collaboration platforms that are only beholden to free
software's most important stakeholders: its creators and users.
In this context, our mission is as follows:
<ul class="list-disc ml-4">
<li class="mb-2">
Provide community-controlled infrastructure for the collaborative
development of all Kosmos applications, as well as related and unrelated
free software
</li>
<li class="mb-2">
Provide a professional, reliable hosting environment for research,
development, testing, and demonstration of all Kosmos applications
</li>
<li>
Provide, on a not-for-profit basis, easy-to-use services surrounding Kosmos
applications to end users, both individual and organizations
</li>
<li>
Help other organizations with both self-hosting and providing hosted
services to their own users or the wider public
</li>
</ul>
## Board of Directors
{{< partial "kif/board" >}}
## Contact
<div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
<div>
### Snail Mail
Stichting Kosmos Infrastructure Foundation
Herengracht 449A
1017 BR Amsterdam
Netherlands
</div>
<div>
### E-Mail
[foundation@kosmos.org](mailto:foundation@kosmos.org)
</div>
</div>

View File

@@ -0,0 +1,10 @@
---
title: Projects
menu:
main:
identifier: projects
name: Projects
weight: 3
---
{{< partial "projects" >}}

View File

@@ -0,0 +1,12 @@
---
title: Services
menu:
main:
identifier: services
name: Services
weight: 5
---
## Community Services
{{< partial "services/community" >}}

10
data/kif/board.yaml Normal file
View File

@@ -0,0 +1,10 @@
- name: Sebastian Kippe
role: Chairman
- name: Garret Alfert
role: Secretary
- name: Michael Bumann
role: Treasurer
- name: Greg Karékinian
role: Director
- name: Nick Jennings
role: Director

70
data/projects.yaml Normal file
View File

@@ -0,0 +1,70 @@
- name: Kosmos Chat
description: >-
Kosmos Chat is a group chat application, based
exclusively on open protocols, standards, and data
formats. All of its components can be either
self-hosted or connected to hosted services. No user
data is ever locked into hosted silos.
status: >-
An alpha version of the client app is in use by developers, and a public
beta version is planned for 2022.
links:
- section: Links
items:
- title: Overview & planned features (partially outdated)
url: https://wiki.kosmos.org/Kosmos_Chat
- title: Web client (alpha version)
url: https://hyperchannel.kosmos.org
- section: Source code
items:
- title: Hyperchannel (Web client)
url: https://github.com/67P/hyperchannel
- title: Sockethub (Protocol proxy)
url: https://github.com/sockethub/sockethub/
- name: Kosmos Accounts & Services
description: >-
Kosmos Accounts give people access to our hosted
services. An account dashboard and control panel
offers account management functionality and
additional integrations.
status: >-
Accounts are in beta and already in use by some
developers and other users. Registration is
currently by invitation only.
links:
- section: Links
items:
- title: Account dashboard (beta version)
url: https://accounts.kosmos.org
- title: Services
url: "/services"
- section: Source code
items:
- title: Akkounts (account dashboard/control panel)
url: https://gitea.kosmos.org/kosmos/akkounts
- title: Chef cookbooks (infrastructure automation)
url: https://gitea.kosmos.org/kosmos/chef
- name: Kredits
description: >-
Kredits are a system for tracking opensource project
contributions, enabling and facilitating the fair
and transparent use of project funds, as well as
improving project management and governance.
status: >-
We have been experimenting with the system in
pre-production for a while, and have run multiple
trials for development grant payouts. Currently
working on production migration/launch.
links:
- section: Links
items:
- title: Overview & technical details
url: https://wiki.kosmos.org/Kredits
- title: Contribution Dashboard
url: https://kredits.kosmos.org
- section: Source code
items:
- title: List of software and repositories
url: https://wiki.kosmos.org/Kredits#Software

View File

@@ -0,0 +1,36 @@
- category: Communication
items:
- name: Chat
url: https://wiki.kosmos.org/Services:Chat
description: Chat rooms and instant messaging (XMPP/Jabber)
- name: Social
url: https://kosmos.social
description: Social media (micro-blogging on the fediverse)
- name: Forums
url: https://community.kosmos.org
description: Kosmos community forums and user support/help site
- category: Software development
items:
- name: Gitea
url: https://gitea.kosmos.org
description: Code hosting and collaboration for software projects
- name: Drone CI
url: https://drone.kosmos.org
description: Continuous integration and build pipelines
- category: Account & Auxiliary services
items:
- name: Accounts
url: https://accounts.kosmos.org
description: Manage your Kosmos account, and invite new users
- name: Sockethub
url: https://sockethub.org
description: Access other Internet protocols from Web apps
- name: IPFS Gateway
url: https://wiki.kosmos.org/Kredits:IPFS
description: Web gateway for the IPFS decentralized filesystem
- category: Documentation
items:
- name: Wiki
url: https://wiki.kosmos.org
description: Kosmos documentation and knowledge base

1
node_modules/.bin/acorn generated vendored
View File

@@ -1 +0,0 @@
../acorn/bin/acorn

1
node_modules/.bin/autoprefixer generated vendored
View File

@@ -1 +0,0 @@
../autoprefixer/bin/autoprefixer

1
node_modules/.bin/browserslist generated vendored
View File

@@ -1 +0,0 @@
../browserslist/cli.js

1
node_modules/.bin/cssesc generated vendored
View File

@@ -1 +0,0 @@
../cssesc/bin/cssesc

1
node_modules/.bin/detective generated vendored
View File

@@ -1 +0,0 @@
../detective/bin/detective.js

1
node_modules/.bin/nanoid generated vendored
View File

@@ -1 +0,0 @@
../nanoid/bin/nanoid.cjs

1
node_modules/.bin/resolve generated vendored
View File

@@ -1 +0,0 @@
../resolve/bin/resolve

1
node_modules/.bin/tailwind generated vendored
View File

@@ -1 +0,0 @@
../tailwindcss/lib/cli.js

1
node_modules/.bin/tailwindcss generated vendored
View File

@@ -1 +0,0 @@
../tailwindcss/lib/cli.js

740
node_modules/.package-lock.json generated vendored
View File

@@ -1,740 +0,0 @@
{
"name": "website",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "2.0.5",
"run-parallel": "^1.1.9"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.stat": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"dev": true,
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.walk": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
"dev": true,
"dependencies": {
"@nodelib/fs.scandir": "2.1.5",
"fastq": "^1.6.0"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/acorn": {
"version": "7.4.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
"dev": true,
"bin": {
"acorn": "bin/acorn"
},
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/acorn-node": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
"integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
"dev": true,
"dependencies": {
"acorn": "^7.0.0",
"acorn-walk": "^7.0.0",
"xtend": "^4.0.2"
}
},
"node_modules/acorn-walk": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
"integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
"dev": true,
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/anymatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
"integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
"dev": true,
"dependencies": {
"normalize-path": "^3.0.0",
"picomatch": "^2.0.4"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/arg": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz",
"integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==",
"dev": true
},
"node_modules/binary-extensions": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/braces": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
"dev": true,
"dependencies": {
"fill-range": "^7.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/camelcase-css": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
"dev": true,
"engines": {
"node": ">= 6"
}
},
"node_modules/chokidar": {
"version": "3.5.3",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
"dev": true,
"funding": [
{
"type": "individual",
"url": "https://paulmillr.com/funding/"
}
],
"dependencies": {
"anymatch": "~3.1.2",
"braces": "~3.0.2",
"glob-parent": "~5.1.2",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
"normalize-path": "~3.0.0",
"readdirp": "~3.6.0"
},
"engines": {
"node": ">= 8.10.0"
},
"optionalDependencies": {
"fsevents": "~2.3.2"
}
},
"node_modules/chokidar/node_modules/glob-parent": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"dependencies": {
"is-glob": "^4.0.1"
},
"engines": {
"node": ">= 6"
}
},
"node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
"node_modules/cssesc": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
"dev": true,
"bin": {
"cssesc": "bin/cssesc"
},
"engines": {
"node": ">=4"
}
},
"node_modules/defined": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
"integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
"dev": true
},
"node_modules/detective": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
"integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
"dev": true,
"dependencies": {
"acorn-node": "^1.6.1",
"defined": "^1.0.0",
"minimist": "^1.1.1"
},
"bin": {
"detective": "bin/detective.js"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/didyoumean": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
"integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
"dev": true
},
"node_modules/dlv": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
"integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
"dev": true
},
"node_modules/fast-glob": {
"version": "3.2.11",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
"integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
"glob-parent": "^5.1.2",
"merge2": "^1.3.0",
"micromatch": "^4.0.4"
},
"engines": {
"node": ">=8.6.0"
}
},
"node_modules/fast-glob/node_modules/glob-parent": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"dependencies": {
"is-glob": "^4.0.1"
},
"engines": {
"node": ">= 6"
}
},
"node_modules/fastq": {
"version": "1.13.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
"dev": true,
"dependencies": {
"reusify": "^1.0.4"
}
},
"node_modules/fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
"dev": true
},
"node_modules/glob-parent": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
"integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
"dev": true,
"dependencies": {
"is-glob": "^4.0.3"
},
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"dev": true,
"dependencies": {
"function-bind": "^1.1.1"
},
"engines": {
"node": ">= 0.4.0"
}
},
"node_modules/is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
"dev": true,
"dependencies": {
"binary-extensions": "^2.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/is-core-module": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
"integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
"dev": true,
"dependencies": {
"has": "^1.0.3"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dev": true,
"dependencies": {
"is-extglob": "^2.1.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"dev": true,
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/lilconfig": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz",
"integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==",
"dev": true,
"engines": {
"node": ">=10"
}
},
"node_modules/merge2": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
"dev": true,
"engines": {
"node": ">= 8"
}
},
"node_modules/micromatch": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
"integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
"dev": true,
"dependencies": {
"braces": "^3.0.2",
"picomatch": "^2.3.1"
},
"engines": {
"node": ">=8.6"
}
},
"node_modules/minimist": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
"integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
"dev": true
},
"node_modules/nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"dev": true,
"bin": {
"nanoid": "bin/nanoid.cjs"
},
"engines": {
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
"node_modules/normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/object-hash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
"dev": true,
"engines": {
"node": ">= 6"
}
},
"node_modules/path-parse": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"dev": true
},
"node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"dev": true,
"engines": {
"node": ">=8.6"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/postcss": {
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
"dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss"
}
],
"dependencies": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
},
"engines": {
"node": "^10 || ^12 || >=14"
}
},
"node_modules/postcss-js": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
"integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
"dev": true,
"dependencies": {
"camelcase-css": "^2.0.1"
},
"engines": {
"node": "^12 || ^14 || >= 16"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": "^8.3.3"
}
},
"node_modules/postcss-load-config": {
"version": "3.1.4",
"resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz",
"integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==",
"dev": true,
"dependencies": {
"lilconfig": "^2.0.5",
"yaml": "^1.10.2"
},
"engines": {
"node": ">= 10"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": ">=8.0.9",
"ts-node": ">=9.0.0"
},
"peerDependenciesMeta": {
"postcss": {
"optional": true
},
"ts-node": {
"optional": true
}
}
},
"node_modules/postcss-nested": {
"version": "5.0.6",
"resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
"integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
"dev": true,
"dependencies": {
"postcss-selector-parser": "^6.0.6"
},
"engines": {
"node": ">=12.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": "^8.2.14"
}
},
"node_modules/postcss-selector-parser": {
"version": "6.0.10",
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
"integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
"dev": true,
"dependencies": {
"cssesc": "^3.0.0",
"util-deprecate": "^1.0.2"
},
"engines": {
"node": ">=4"
}
},
"node_modules/postcss-value-parser": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
"dev": true
},
"node_modules/queue-microtask": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
]
},
"node_modules/quick-lru": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
"integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
"dev": true,
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/readdirp": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
"dev": true,
"dependencies": {
"picomatch": "^2.2.1"
},
"engines": {
"node": ">=8.10.0"
}
},
"node_modules/resolve": {
"version": "1.22.0",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
"integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
"dev": true,
"dependencies": {
"is-core-module": "^2.8.1",
"path-parse": "^1.0.7",
"supports-preserve-symlinks-flag": "^1.0.0"
},
"bin": {
"resolve": "bin/resolve"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"dev": true,
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
],
"dependencies": {
"queue-microtask": "^1.2.2"
}
},
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/supports-preserve-symlinks-flag": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
"dev": true,
"engines": {
"node": ">= 0.4"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/tailwindcss": {
"version": "3.0.24",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.24.tgz",
"integrity": "sha512-H3uMmZNWzG6aqmg9q07ZIRNIawoiEcNFKDfL+YzOPuPsXuDXxJxB9icqzLgdzKNwjG3SAro2h9SYav8ewXNgig==",
"dev": true,
"dependencies": {
"arg": "^5.0.1",
"chokidar": "^3.5.3",
"color-name": "^1.1.4",
"detective": "^5.2.0",
"didyoumean": "^1.2.2",
"dlv": "^1.1.3",
"fast-glob": "^3.2.11",
"glob-parent": "^6.0.2",
"is-glob": "^4.0.3",
"lilconfig": "^2.0.5",
"normalize-path": "^3.0.0",
"object-hash": "^3.0.0",
"picocolors": "^1.0.0",
"postcss": "^8.4.12",
"postcss-js": "^4.0.0",
"postcss-load-config": "^3.1.4",
"postcss-nested": "5.0.6",
"postcss-selector-parser": "^6.0.10",
"postcss-value-parser": "^4.2.0",
"quick-lru": "^5.1.1",
"resolve": "^1.22.0"
},
"bin": {
"tailwind": "lib/cli.js",
"tailwindcss": "lib/cli.js"
},
"engines": {
"node": ">=12.13.0"
},
"peerDependencies": {
"postcss": "^8.0.9"
}
},
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dev": true,
"dependencies": {
"is-number": "^7.0.0"
},
"engines": {
"node": ">=8.0"
}
},
"node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"dev": true
},
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
"integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
"dev": true,
"engines": {
"node": ">=0.4"
}
},
"node_modules/yaml": {
"version": "1.10.2",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
"dev": true,
"engines": {
"node": ">= 6"
}
}
}
}

1560
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -4,8 +4,15 @@
"private": true, "private": true,
"description": "The website on kosmos.org", "description": "The website on kosmos.org",
"scripts": { "scripts": {
"build:css": "", "clean": "rm -rf public/*",
"dev": "tailwindcss -i ./themes/kosmos-22/source/main.css -o ./themes/kosmos-22/static/css/main.css --watch" "build:css": "tailwindcss -i ./themes/kosmos-22/source/main.css -o ./themes/kosmos-22/assets/css/main.css",
"build:site": "hugo",
"build:release": "npm-run-all clean prod:css prod:site",
"prod:css": "npm run build:css -- --minify",
"prod:site": "hugo --gc --minify",
"dev": "npm-run-all --parallel dev:*",
"dev:css": "npm run build:css -- --watch",
"dev:site": "hugo server --disableFastRender"
}, },
"repository": { "repository": {
"type": "git", "type": "git",

File diff suppressed because one or more lines are too long

91
public/css/style.css Normal file
View File

@@ -0,0 +1,91 @@
* {
margin: 0;
padding: 0;
}
body, html {
box-sizing: border-box;
height: 100%;
font-size: 16px;
}
*, *:before, *:after {
box-sizing: inherit;
}
body {
background-color: #fff;
color: #232323;
font-family: 'Open Sans', sans-serif;
text-rendering: optimizeLegibility;
text-align: center;
}
html, body, #wrapper {
min-height: 100%;
}
#wrapper {
min-height: 100%;
margin: 0 auto;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
header {
height: 100%;
max-width: 90%;
margin: 0 auto 10vh;
text-align: center;
}
header h1 {
display: inline-block;
margin-bottom: 2rem;
margin-right: -0.25em; /* fix trailing space from letter-spacing */
font-size: 7vw;
font-weight: 700;
letter-spacing: 0.5em;
text-transform: uppercase;
background: #232323 url(https://kredits.kosmos.org/img/bg-947d3bf6bb15a1a3b07afcba4c307690.jpg);
background-size: cover;
background-repeat: no-repeat;
-webkit-text-fill-color: transparent;
-webkit-background-clip: text;
}
header h2 {
font-weight: 300;
font-size: 1.4rem;
}
main {
width: 768px;
max-width: 90%;
text-align: left;
}
main p {
line-height: 1.6em;
margin-bottom: 1em;
}
.hidden {
display: none !important;
}
@media screen and (max-width: 760px) {
header {
margin-top: 4rem;
}
header h1 {
font-size: 8vw;
}
footer {
margin-bottom: 4rem;
}
}

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

1
public/img/comet.svg Normal file
View File

@@ -0,0 +1 @@
<svg width="65.364" height="55.773" enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 65.364 55.773" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><g id="layer1" transform="translate(28.868 20.259)" fill="#000"><path id="path2" d="m22.81-9.2546-0.0137-0.0072c-0.0445-0.0196-0.0895-0.04052-0.13335-0.06078l-23.822-10.937s2.0034 9.219 2.914 11.778c0 0-27.292-8.1582-30.623-8.9354 1.0916 4.2618 20.006 40.848 20.006 40.848 3.8225 7.7608 12.677 12.083 21.912 12.083 12.949 0 23.446-10.497 23.446-23.446 6.6e-4 -9.4655-5.609-17.62-13.685-21.323z" fill="#fff" stroke-width=".65365"/></g></svg>

After

Width:  |  Height:  |  Size: 611 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

BIN
public/img/network-01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 KiB

BIN
public/img/servers-01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB

BIN
public/img/servers-02.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 KiB

14
public/index.html Normal file
View File

@@ -0,0 +1,14 @@
<!doctype html><html lang=en><head><meta name=generator content="Hugo 0.101.0"><meta charset=utf-8><title>Kosmos</title><meta content="width=device-width,minimum-scale=1,maximum-scale=1" name=viewport><link href=https://assets.kosmos.org/fonts/open-sans/open-sans.css rel=stylesheet><link href=/css/style.css rel=stylesheet></head><body><div id=wrapper><header><h1>Kosmos</h1><h2>Group communication for the 21st century</h2></header><main><p>We are an open co-operative of people, who are developing a free,
open-source, and user-centric alternative to centralized group chat
platforms, based on widely used protocols and standards.
<a href=/projects>Learn more about our projects</a>.</p><p>We also offer <a href=/services>hosted services</a> for a variety of
applications on a not-for-profit basis. And we have recently created a
community-led <a href=/foundation>foundation</a> for this purpose.</p><p>We collaborate on source code on
<a href=https://github.com/67P rel=me>GitHub</a>
as well as our own
<a href=https://gitea.kosmos.org/kosmos rel=me>Gitea</a>.
For announcements and other news, you can follow us on the
<a href=https://kosmos.social/@kosmos rel=me>fediverse</a>
(recommended) or on
<a href=https://twitter.com/KosmosHQ rel=me>Twitter</a>.</p><p class=hidden>For status and incident updates regarding Kosmos infrastructure, please follow
<a href=https://kosmos.social/@ops rel=me>ops@kosmos.social</a>.</p></main><footer></footer></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
shortcodes/partial.html Normal file
View File

@@ -0,0 +1 @@
{{ partial (.Get 0) }}

BIN
static/img/network-01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 KiB

BIN
static/img/servers-01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB

BIN
static/img/servers-02.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 KiB

View File

@@ -1,11 +1,15 @@
module.exports = { module.exports = {
content: [ content: [
"./content/**/*.{html,js}", "./content/**/*.{md,html}",
"./layouts/**/*.{html,js}", "./layouts/**/*.{html,js}",
"./themes/**/*.{html,js}" "./themes/**/*.{html,js}"
], ],
theme: { theme: {
extend: {}, extend: {
fontFamily: {
sans: ['Open Sans', 'sans-serif']
}
},
}, },
plugins: [], plugins: [],
} }

File diff suppressed because one or more lines are too long

View File

@@ -4,10 +4,12 @@
{{ partial "meta.html" . }} {{ partial "meta.html" . }}
<title>{{ block "title" . }}{{ .Title }} | {{ .Site.Title }}{{ end }}</title> <title>{{ block "title" . }}{{ .Title }} | {{ .Site.Title }}{{ end }}</title>
<link href='https://assets.kosmos.org/fonts/open-sans/open-sans.css' rel='stylesheet'> <link href='https://assets.kosmos.org/fonts/open-sans/open-sans.css' rel='stylesheet'>
<link href="/css/main.css" rel="stylesheet" /> {{ $css := resources.Get "css/main.css" | resources.Fingerprint }}
<link rel="stylesheet" href="{{ $css.RelPermalink }}" />
</head> </head>
<body> <body class="text-center">
<main> {{ partial "topnav" . }}
<main class="text-left">
{{- block "main" . }}{{- end }} {{- block "main" . }}{{- end }}
</main> </main>
<footer> <footer>

View File

@@ -0,0 +1,23 @@
{{ define "main" }}
{{ if .Params.HeaderImage }}
<!-- <div class="w&#45;full h&#45;32 bg&#45;[center_bottom_23rem] bg&#45;cover" -->
<!-- style="background&#45;image: url(/img/{{ .Params.HeaderImage }})"> -->
<div class="w-full h-32 bg-[center] bg-cover"
style="background-image: url(/img/{{ .Params.HeaderImage }})">
</div>
{{ else }}
<div class="w-full h-32 bg-[url('/img/lagoon-close-02.jpg')]
bg-[center_top_30rem] bg-cover">
</div>
{{ end }}
<div class="max-w-5xl mx-auto -mt-12 py-8 px-8 text-left bg-white">
<header class="mb-8">
<h1 class="text-2xl font-bold">{{ .Title }}</h1>
{{ if .Description }}
<p class="mt-2 text-lg text-zinc-500">{{ .Description }}</p>
{{ end }}
</header>
<div class="content">
{{ .Content }}
</div>
{{ end }}

View File

@@ -1,6 +1,13 @@
{{ define "main" }} {{ define "main" }}
<header> <div class="w-full h-32 bg-[url('/img/lagoon-close-02.jpg')]
<h2>{{ .Title }}</h1> bg-[center_top_30rem] bg-cover">
</div>
<div class="max-w-5xl mx-auto -mt-12 py-8 px-8 text-left bg-white">
<header class="mb-8">
<h1 class="text-2xl font-bold">{{ .Title }}</h1>
{{ if .Description }}
<p class="mt-2 text-lg text-zinc-500">{{ .Description }}</p>
{{ end }}
</header> </header>
<div class="content"> <div class="content">
{{ .Content }} {{ .Content }}

View File

@@ -1,10 +0,0 @@
{{ define "title" }}{{ .Title }} | KIF{{ end }}
{{ define "main" }}
<header>
<h2>{{ .Title }}</h1>
</header>
<div class="content">
{{ .Content }}
</div>
{{ end }}

View File

@@ -18,15 +18,14 @@
We are an open co-operative of people, who are developing a free, We are an open co-operative of people, who are developing a free,
open-source, and user-centric alternative to centralized group chat open-source, and user-centric alternative to centralized group chat
platforms, based on widely used protocols and standards. platforms, based on widely used protocols and standards.
<a href="/projects">Learn more about our projects</a>.
</p> </p>
<p> <p>
We also develop a system for rewarding contributors and enabling We also offer <a href="/services">hosted services</a> for a variety of
governance based on contributions, called Kredits, which we started applications on a not-for-profit basis. And we have recently created a
using in production recently. community-led <a href="/foundation">foundation</a> for this purpose.
</p> </p>
<p> <p>
You can find all relevant information and further links in our
<a href="https://wiki.kosmos.org">wiki</a>.
We collaborate on source code on We collaborate on source code on
<a href="https://github.com/67P" rel="me">GitHub</a> <a href="https://github.com/67P" rel="me">GitHub</a>
as well as our own as well as our own

View File

@@ -0,0 +1,8 @@
<ul class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-5 gap-6 mb-8">
{{ range site.Data.kif.board }}
<li>
{{ .name }}<br>
<span class="text-discreet text-sm">{{ .role }}</span>
</li>
{{ end }}
</ul>

View File

@@ -0,0 +1,19 @@
{{ range site.Data.projects }}
<h2>{{ .name }}</h2>
<p>{{ .description | markdownify }}</p>
<p class="text-discreet">
<strong>Status:</strong> {{ .status | markdownify }}
</p>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
{{ range .links }}
<div>
<h3 class="mt-6">{{ .section }}</h3>
<ul class="list-disc list-inside leading-relaxed">
{{ range .items }}
<li><a href="{{ .url }}">{{ .title | markdownify }}</a></li>
{{ end }}
</ul>
</div>
{{ end }}
</div>
{{ end }}

View File

@@ -0,0 +1,13 @@
{{ range site.Data.services.community }}
<h3>{{ .category }}</h3>
<ul class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6 mb-8">
{{ range .items }}
<li>
<h4 class="text-lg font-bold mb-2">
<a href="{{ .url }}" class="!text-black">{{ .name }}</a>
</h4>
<p>{{ .description }}</p>
</li>
{{ end }}
</ul>
{{ end }}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{{ partial (.Get 0) (.Get 1) }}

View File

@@ -1,3 +1,51 @@
@tailwind base; @tailwind base;
@tailwind components; @tailwind components;
@tailwind utilities; @tailwind utilities;
@layer base {
h2 {
@apply text-lg font-bold mb-6 mt-8;
}
h3 {
@apply mb-4 text-sm uppercase text-zinc-500;
}
h3:not(:first-child) {
@apply mt-6;
}
p + p,
p + ul {
@apply mt-6;
}
/* ul { */
/* @apply list-disc list-inside leading-relaxed; */
/* } */
}
@layer components {
.text-discreet {
@apply text-zinc-500;
}
.content {
@apply pb-20;
}
.content a { @apply text-sky-600 border-b border-zinc-300; }
.content a:hover { @apply text-sky-700 border-b border-zinc-400; }
.content a:visited { @apply text-indigo-600 }
.content a:active { @apply text-sky-500; }
input#mobile-nav-is-open + div > a svg:last-of-type { @apply hidden; }
input#mobile-nav-is-open:checked + div > a svg:first-of-type { @apply hidden; }
input#mobile-nav-is-open:checked + div > a svg:last-of-type { @apply block; }
input#mobile-nav-is-open + div > div.backdrop { @apply hidden; }
input#mobile-nav-is-open:checked + div > div.backdrop { @apply block; }
input#mobile-nav-is-open + div > nav { @apply hidden; }
input#mobile-nav-is-open:checked + div > nav { @apply block }
}

View File

@@ -1,477 +0,0 @@
/*
! tailwindcss v3.0.24 | MIT License | https://tailwindcss.com
*/
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
box-sizing: border-box;
/* 1 */
border-width: 0;
/* 2 */
border-style: solid;
/* 2 */
border-color: #e5e7eb;
/* 2 */
}
::before,
::after {
--tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
*/
html {
line-height: 1.5;
/* 1 */
-webkit-text-size-adjust: 100%;
/* 2 */
-moz-tab-size: 4;
/* 3 */
-o-tab-size: 4;
tab-size: 4;
/* 3 */
font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
/* 4 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
margin: 0;
/* 1 */
line-height: inherit;
/* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
height: 0;
/* 1 */
color: inherit;
/* 2 */
border-top-width: 1px;
/* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
font-size: inherit;
font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
color: inherit;
text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
font-weight: bolder;
}
/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
/* 1 */
font-size: 1em;
/* 2 */
}
/*
Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
text-indent: 0;
/* 1 */
border-color: inherit;
/* 2 */
border-collapse: collapse;
/* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
font-family: inherit;
/* 1 */
font-size: 100%;
/* 1 */
line-height: inherit;
/* 1 */
color: inherit;
/* 1 */
margin: 0;
/* 2 */
padding: 0;
/* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
-webkit-appearance: button;
/* 1 */
background-color: transparent;
/* 2 */
background-image: none;
/* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
-webkit-appearance: textfield;
/* 1 */
outline-offset: -2px;
/* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
-webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button;
/* 1 */
font: inherit;
/* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
margin: 0;
}
fieldset {
margin: 0;
padding: 0;
}
legend {
padding: 0;
}
ol,
ul,
menu {
list-style: none;
margin: 0;
padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
opacity: 1;
/* 1 */
color: #9ca3af;
/* 2 */
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
opacity: 1;
/* 1 */
color: #9ca3af;
/* 2 */
}
input::placeholder,
textarea::placeholder {
opacity: 1;
/* 1 */
color: #9ca3af;
/* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
display: block;
/* 1 */
vertical-align: middle;
/* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
max-width: 100%;
height: auto;
}
/*
Ensure the default browser behavior of the `hidden` attribute.
*/
[hidden] {
display: none;
}
*, ::before, ::after {
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-rotate: 0;
--tw-skew-x: 0;
--tw-skew-y: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-pan-x: ;
--tw-pan-y: ;
--tw-pinch-zoom: ;
--tw-scroll-snap-strictness: proximity;
--tw-ordinal: ;
--tw-slashed-zero: ;
--tw-numeric-figure: ;
--tw-numeric-spacing: ;
--tw-numeric-fraction: ;
--tw-ring-inset: ;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: rgb(59 130 246 / 0.5);
--tw-ring-offset-shadow: 0 0 #0000;
--tw-ring-shadow: 0 0 #0000;
--tw-shadow: 0 0 #0000;
--tw-shadow-colored: 0 0 #0000;
--tw-blur: ;
--tw-brightness: ;
--tw-contrast: ;
--tw-grayscale: ;
--tw-hue-rotate: ;
--tw-invert: ;
--tw-saturate: ;
--tw-sepia: ;
--tw-drop-shadow: ;
--tw-backdrop-blur: ;
--tw-backdrop-brightness: ;
--tw-backdrop-contrast: ;
--tw-backdrop-grayscale: ;
--tw-backdrop-hue-rotate: ;
--tw-backdrop-invert: ;
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
}
.block {
display: block;
}
.hidden {
display: none;
}

View File

@@ -0,0 +1 @@
<svg width="65.364" height="55.773" enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 65.364 55.773" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><g id="layer1" transform="translate(28.868 20.259)" fill="#000"><path id="path2" d="m22.81-9.2546-0.0137-0.0072c-0.0445-0.0196-0.0895-0.04052-0.13335-0.06078l-23.822-10.937s2.0034 9.219 2.914 11.778c0 0-27.292-8.1582-30.623-8.9354 1.0916 4.2618 20.006 40.848 20.006 40.848 3.8225 7.7608 12.677 12.083 21.912 12.083 12.949 0 23.446-10.497 23.446-23.446 6.6e-4 -9.4655-5.609-17.62-13.685-21.323z" fill="#fff" stroke-width=".65365"/></g></svg>

After

Width:  |  Height:  |  Size: 611 B