Initial commit

This commit is contained in:
Darkn Neko 2023-06-15 20:16:57 +03:00
commit b5535b9b03
No known key found for this signature in database
GPG Key ID: 4691A1BE3CAD0162
7 changed files with 258 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
dst/
site/
update
swege
.manifest

57
Makefile Normal file
View File

@ -0,0 +1,57 @@
CC = swege
SOURCE = src
DESTINATION = dst
PYHTON = python3
PORT = 8000
BIND = 127.0.0.1
RS_USER = root
RS_HOST = darkn.space
RS_PATH = /var/www/html
CSSDIR = ${SOURCE}/assets/styles
SCRIPTS_DIR = ./scripts
all:
${CC}
rebuild:
${CC} rebuild
post:
@@${SCRIPTS_DIR}/newpost
mincss:
@find ${CSSDIR} -type f -not -name '*.min.css' | ${SCRIPTS_DIR}/mincss
urlcheck:
@find ${SOURCE} -type f -name '*.md' -exec cat {} \+ | ${SCRIPTS_DIR}/urlcheck
perm:
find ./${DESTINATION} -type d -exec chmod 755 {} \;
find ./${DESTINATION} -type f -exec chmod 644 {} \;
serve: all
${PYHTON} -m http.server --bind ${BIND} -d ./${DESTINATION} ${PORT}
entr:
find ./${SOURCE} | entr make
deploy: all perm
rsync -rtvzP ./${DESTINATION}/* ${RS_USER}@${RS_HOST}:${RS_PATH}/
clean:
rm -rf ./${DESTINATION} ./.manifest
help:
@echo 'make # build site'
@echo 'make rebuild # forcefully rebuild site'
@echo 'make post # write a new article'
@echo 'make mincss # minify CSS, invoke each time you modify CSS files'
@echo 'make urlcheck # check Markdown source files for dead URLs'
@echo 'make perm # set correct file permissions for output site files'
@echo 'make serve # launch a local HTTP server to see changes, requires python 3'
@echo 'make entr # check for file changes, and rebuild site automatically'
@echo 'make deploy # upload site to the server'
@echo 'make clean # delete the built site'
@echo 'make help # print this text'
.PHONY: all rebuild post mincss urlcheck perm serve entr deploy clean

9
src/_footer.html Normal file
View File

@ -0,0 +1,9 @@
<hr>
<p class="f7">
&copy; 2022
<a href="/">Darkn Neko</a>&nbsp;&mdash;
<a href="https://creativecommons.org/licenses/by/4.0/">CC-BY 4.0 License</a></br>
Built with <a href="https://github.com/sakhmatd/swege">swege and some catgirls</a></br>
</p>
</body>
</html>

8
src/_header.html Normal file
View File

@ -0,0 +1,8 @@
<!DOCTYPE html>
<html lang="en" class="black bg-white serif lh-copy pa3">
<meta charset="UTF-8">
<meta name="generator" content="github.com/sakhmatd/swege">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" href="/assets/img/favicon.png">
<link rel="stylesheet" href="/assets/style.css">
<body class="mw6 w-100 center">

171
src/assets/style.css Normal file
View File

@ -0,0 +1,171 @@
a { background-color: transparent; color: #565656; }
a:visited { background-color: transparent; color: #565656; }
a:hover { background-color: transparent; color: #8C8C8C; }
a, blockquote, body, code, div, form, h1, h2, h3, html, input, li, ol, p, pre, table, td, textarea, th, tr, ul { box-sizing: border-box; }
button, input { overflow: visible; -webkit-appearance: none; -moz-appearance: none; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 1rem; line-height: 1.15; margin: 0; }
button, select { text-transform: none; }
img { border-style: none; }
textarea { overflow: auto; }
.b--yellow, .hover-b--yellow:hover, .hover-b--yellow:focus { border-color: #ffc439; }
.b--dark-gray, .hover-b--dark-gray:hover { border-color: #333; }
.b--black, .hover-b--black:hover { border-color: #000; }
.b--white-60, .hover-b--white-60 { border-color: rgba(255, 255, 255, .6); }
.bg-black, .hover-bg-black:hover, .hover-bg-black:focus { background-color: #000; }
.bg-blue, .hover-bg-blue:hover, .hover-bg-blue:focus { background-color: #334f83; }
.bg-gold, .hover-bg-gold:hover, .hover-bg-gold:focus { background-color: #ffb700; }
.bg-light-yellow, .hover-bg-light-yellow:hover, .hover-bg-light-yellow:focus { background-color: #ffeeaa; }
.bg-navy, .hover-bg-navy:hover, .hover-bg-navy:focus { background-color: #001b44; }
.bg-near-white { background-color: #f4f4f4; }
.bg-oams, .hover-bg-oams:hover, .hover-bg-oams:focus { background-color: #ec0000; }
.bg-payp, .hover-bg-payp:hover, .hover-bg-payp:focus { background-color: #0070ba; }
.bg-ptrn, .hover-bg-ptrn:hover, .hover-bg-ptrn:focus { background-color: #f96854; }
.bg-vltr, .hover-bg-vltr:hover, .hover-bg-vltr:focus { background-color: #1e88e5; }
.bg-white, .hover-bg-white:hover, .hover-bg-white:focus { background-color: #fff; }
.bg-xrpb, .hover-bg-xrpb:hover, .hover-bg-xrpb:focus { background-color: #808080; }
.bg-yellow, .hover-bg-yellow:hover, .hover-bg-yellow:focus { background-color: #ffc439; }
.black, .hover-black:hover, .hover-black:hover:visited, .hover-black:focus, .hover-black:hover:focus { color: #000; }
.black-60, .black-60:visited { color: rgba(0, 0, 0, .6); }
.dark-gray, .hover-dark-gray:hover { color: #333; }
.gray, .hover-gray:hover { color: #777; }
.dark-red { color: #e7040f; }
.hover-b--gold:hover { border-color: #ffb700; }
.hover-b--navy:hover { border-color: #001b44; }
.hover-b--oams:hover { border-color: #ec0000; }
.hover-b--payp:hover { border-color: #0070ba; }
.hover-b--ptrn:hover { border-color: #f96854; }
.hover-b--vltr:hover { border-color: #1e88e5; }
.hover-b--xrpb:hover { border-color: #808080; }
.near-white { color: #f4f4f4; }
.white, .hover-white:hover, .hover-white:hover:visited, .hover-white:focus, .hover-white:hover:focus { color: #fff; }
.white-60 { color: rgba(255, 255, 255, .6); }
.b { font-weight: bold; }
.ba { border-width: 1px; border-style: solid; }
.bb { border-bottom-style: solid; border-bottom-width: 1px; }
.bn { border-width: 0; border-style: none; }
.br-100 { border-radius: 100%; }
.br-sq { border-radius: 15px; }
.cb { clear: both; }
.center { margin-right: auto; margin-left: auto; }
.cf { *zoom: 1; }
.cf:after { clear: both; }
.cf:before, .cf:after { content: " "; display: table; }
.code, pre, code { font-family: Consolas, monaco, monospace; }
.dib { display: inline-block; }
.dim { opacity: 1; transition: opacity .15s ease-in; }
.dim:active { opacity: .8; transition: opacity .15s ease-out; }
.dim:hover, .dim:focus { opacity: .5; transition: opacity .15s ease-in; }
.f1 { font-size: 3rem; }
.f2 { font-size: 2.25rem; }
.f3 { font-size: 1.5rem; }
.f4 { font-size: 1.25rem; }
.f5 { font-size: 1rem; }
.f6 { font-size: .875rem; }
.f7 { font-size: .75rem; }
.fl { float: left; }
.flexbox { display: flex; align-items: center }
.fs-normal{ font-style: normal; }
.h2 { height: 2rem; }
.h3 { height: 4rem; }
.h4 { height: 8rem; }
.i { font-style: italic; }
.lh-copy { line-height: 1.5; }
.lh-solid, h1 { line-height: 1; }
.lh-title, h2, h3, pre { line-height: 1.25; }
.link { text-decoration: none; }
.link:focus, .outline:focus { outline: 1px solid #333; }
.mb2 { margin-bottom: .5rem; }
.mb3 { margin-bottom: 1rem; }
.mb4 { margin-bottom: 1.5rem; }
.ml0 { margin-left: 0; }
.mr1 { margin-right: .25rem; }
.mr2 { margin-right: .5rem; }
.mr3 { margin-right: 1rem; }
.mr4 { margin-right: 2rem; }
.mt2 { margin-top: .5rem; }
.mt3 { margin-top: 1rem; }
.mt4 { margin-top: 2rem; }
.mw-100 { max-width: 100%; }
.mw6 { max-width: 32rem; }
.mw7 { max-width: 48rem; }
.mw8 { max-width: 64rem; }
.ni { text-indent: -.5rem; }
.normal { font-weight: normal; }
.pa2 { padding: .5rem; }
.pa3 { padding: 1rem; }
.pb3 { padding-bottom: 1rem; }
.pb4 { padding-bottom: 2rem; }
.ph1 { padding-left: .25rem; padding-right: .25rem; }
.ph2 { padding-left: .5rem; padding-right: .5rem; }
.ph3 { padding-left: 1rem; padding-right: 1rem; }
.ph4 { padding-left: 2rem; padding-right: 2rem; }
.pointer:hover { cursor: pointer; }
.pv1 { padding-top: .25rem; padding-bottom: .25rem; }
.pv2 { padding-top: .5rem; padding-bottom: .5rem; }
.pv3 { padding-top: 1rem; padding-bottom: 1rem; }
.pv4 { padding-top: 2rem; padding-bottom: 2rem; }
.sans-serif { font-family: sans-serif; }
.serif { font-family: "noto serif", georgia, times, serif; }
.tc { text-align: center; }
.tl { text-align: left; }
.tracked-tight { letter-spacing: -.05em; }
.underline { text-decoration: underline; }
.vam { vertical-align: middle; }
.w-100 { width: 100%; }
.w-50 { width: 50%; }
.w2 { width: 2rem; }
.w3 { width: 3rem; }
.w4 { width: 8rem; }
.w5 { width: 16rem; }
.w6 { width: 32rem; }
.w8 { width: 64rem; }
@media screen and (min-width: 30em) {
.f3-ns, h1 { font-size: 1.5rem; }
.f4-ns, h2 { font-size: 1.25rem; }
.f5-ns, h3 { font-size: 1rem; }
}
@media screen and (min-width: 30em) and (max-width: 60em) {
.f1-m { font-size: 3rem; }
.f2-m { font-size: 2.25rem; }
.f3-m, h1 { font-size: 1.5rem; }
.f4-m, h2 { font-size: 1.25rem; }
.f5-m, h3 { font-size: 1rem; }
.f6-m { font-size: .875rem; }
.f7-m { font-size: .75rem; }
.h3-m { height: 4rem; }
.h4-m { height: 8rem; }
.mw6-m { max-width: 32rem; }
.pb3-m { padding-bottom: 1rem; }
.pl2-m { padding-left: .5rem; }
.pr2-m { padding-right: .5rem; }
.w-100-m { width: 100%; }
.w-25-m { width: 25%; }
.w-50-m { width: 50%; }
.w-third-m { width: 33.33%; }
.w4-m { width: 8rem; }
.w5-m { width: 16rem; }
}
@media screen and (min-width: 60em) {
.f1-l { font-size: 3rem; }
.f2-l, h1 { font-size: 2.25rem; }
.f3-l, h2 { font-size: 1.5rem; }
.f4-l, h3 { font-size: 1.25rem; }
.f5-l { font-size: 1rem; }
.f6-l { font-size: .875rem; }
.f7-l { font-size: .75rem; }
.h3-l { height: 4rem; }
.h4-l { height: 8rem; }
.pb3-l { padding-bottom: 1rem; }
.ph2-l { padding-left: .5rem; padding-right: .5rem; }
.pl2-l { padding-left: .5rem; }
.pr2-l { padding-right: .5rem; }
.w-100-l { width: 100%; }
.w-25-l { width: 25%; }
.w-50-l { width: 50%; }
.w-third-l { width: 33.33%; }
.w4-l { width: 8rem; }
.w5-l { width: 16rem; }
}

3
src/index.md Normal file
View File

@ -0,0 +1,3 @@
# Initial commit
I had to write something there, you know.

5
swege.cfg Normal file
View File

@ -0,0 +1,5 @@
title:Darkn Neko
source:src
destination:site
header:src/_header.html
footer:src/_footer.html