mirror of
https://github.com/jessebot/tiny_personal_website.git
synced 2025-10-01 01:48:43 +00:00
updating formatting, colors, and removing old stuff from pages that we probably won't add back
This commit is contained in:
parent
bb6012eced
commit
6bcd4d3ab2
19 changed files with 210 additions and 601 deletions
|
@ -42,7 +42,7 @@ social_links:
|
||||||
# Full URL to your social link
|
# Full URL to your social link
|
||||||
URL: 'https://github.com/jessebot'
|
URL: 'https://github.com/jessebot'
|
||||||
# can be any glyph in nerdfonts
|
# can be any glyph in nerdfonts
|
||||||
icon: 'nf-fa-github_alt'
|
icon: 'nf-fa-github_alt_link'
|
||||||
gitlab:
|
gitlab:
|
||||||
URL: 'https://gitlab.com/jessebot'
|
URL: 'https://gitlab.com/jessebot'
|
||||||
icon: "nf-fa-gitlab"
|
icon: "nf-fa-gitlab"
|
||||||
|
|
|
@ -1,50 +0,0 @@
|
||||||
<VirtualHost *:80>
|
|
||||||
ServerName example.com
|
|
||||||
ServerAdmin example_user@gmail.com
|
|
||||||
WSGIDaemonProcess example_process_name user=example_user group=example_group processes=1 threads=5
|
|
||||||
WSGIScriptAlias / /path/to/web/root/adapter.wsgi
|
|
||||||
|
|
||||||
<Directory /path/to/web/root>
|
|
||||||
WSGIProcessGroup example_group
|
|
||||||
WSGIApplicationGroup %{GLOBAL}
|
|
||||||
# comment out next two lines if getting "forbidden" errors
|
|
||||||
Order deny,allow
|
|
||||||
Allow from all
|
|
||||||
# uncomment if getting "forbidden" errors
|
|
||||||
# Require all granted
|
|
||||||
</Directory>
|
|
||||||
</VirtualHost>
|
|
||||||
|
|
||||||
# If you need want an SSL, which I recommend, then delete the above content
|
|
||||||
# and use the below as your starting point. You can use
|
|
||||||
# https://letsencrypt.org/howitworks/ to get a free SSL. Thanks, EFF <3
|
|
||||||
<VirtualHost *:80>
|
|
||||||
ServerName example.com
|
|
||||||
# rewriting things to force https traffic
|
|
||||||
RewriteEngine on
|
|
||||||
RewriteCond %{HTTPS} off
|
|
||||||
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
|
|
||||||
</VirtualHost>
|
|
||||||
<VirtualHost *:443>
|
|
||||||
ServerName example.com
|
|
||||||
ServerAdmin example_user@gmail.com
|
|
||||||
# ssl stuff, you can change these paths to where ever you keep your own SSL files
|
|
||||||
SSLEngine on
|
|
||||||
SSLProtocol all -SSLv2 -SSLv3
|
|
||||||
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
|
|
||||||
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
|
|
||||||
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
|
|
||||||
# wsgi stuff
|
|
||||||
WSGIDaemonProcess example_process_name user=example_user group=example_group processes=1 threads=5
|
|
||||||
WSGIScriptAlias / /path/to/web/root/adapter.wsgi
|
|
||||||
|
|
||||||
<Directory /path/to/web/root>
|
|
||||||
WSGIProcessGroup example_group
|
|
||||||
WSGIApplicationGroup %{GLOBAL}
|
|
||||||
# comment out next two lines if getting "forbidden" errors
|
|
||||||
Order deny,allow
|
|
||||||
Allow from all
|
|
||||||
# uncomment if getting "forbidden" errors
|
|
||||||
# Require all granted
|
|
||||||
</Directory>
|
|
||||||
</VirtualHost>
|
|
100
personal_routes.py
Executable file
100
personal_routes.py
Executable file
|
@ -0,0 +1,100 @@
|
||||||
|
#!/usr/bin/env python3.10
|
||||||
|
# JesseBot@Linux.com
|
||||||
|
# last update 2022-10-07 17:06:07.0 +0200
|
||||||
|
from flask import Flask
|
||||||
|
from flask import render_template
|
||||||
|
import logging as log
|
||||||
|
import sys
|
||||||
|
import yaml
|
||||||
|
|
||||||
|
# set logging
|
||||||
|
log.basicConfig(stream=sys.stderr, level=log.INFO)
|
||||||
|
log.info("logging config loaded")
|
||||||
|
# flask app init
|
||||||
|
app = Flask(__name__, static_folder='static')
|
||||||
|
|
||||||
|
|
||||||
|
def get_config_variables():
|
||||||
|
"""
|
||||||
|
Gets config.yaml variables from YAML file. Returns dict.
|
||||||
|
"""
|
||||||
|
with open('./config/config.yaml', 'r') as yml_file:
|
||||||
|
doc = yaml.safe_load(yml_file)
|
||||||
|
return doc
|
||||||
|
|
||||||
|
|
||||||
|
def get_ld_variables(ld_var):
|
||||||
|
"""
|
||||||
|
Gets global variables from YAML file. Returns dict.
|
||||||
|
"""
|
||||||
|
with open('./config/config_likes_dislikes.yaml', 'r') as f:
|
||||||
|
doc = yaml.load(f)
|
||||||
|
txt = doc[ld_var]
|
||||||
|
return txt
|
||||||
|
|
||||||
|
|
||||||
|
def sorted_vars(some_dict):
|
||||||
|
"""
|
||||||
|
Iterates through a dict and fixes list values to be alphabitized
|
||||||
|
takes a dict.
|
||||||
|
"""
|
||||||
|
for key, value in some_dict.items():
|
||||||
|
value.sort()
|
||||||
|
some_dict[key] = value
|
||||||
|
return some_dict
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/like')
|
||||||
|
def love():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
likes = get_ld_variables("likes")
|
||||||
|
sorted_likes = sorted_vars(likes)
|
||||||
|
return render_template('like', config_vars=config_vars, likes=sorted_likes)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/dislike')
|
||||||
|
def hate():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
dislikes = get_ld_variables("dislikes")
|
||||||
|
sorted_dislikes = sorted_vars(dislikes)
|
||||||
|
return render_template('dislike', config_vars=config_vars,
|
||||||
|
dislikes=sorted_dislikes)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/health')
|
||||||
|
def nutrition():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
return render_template('health', config_vars=config_vars)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/health/nutrition')
|
||||||
|
def nutrition():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
return render_template('nutrition', config_vars=config_vars)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/health/trans')
|
||||||
|
def trans():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
return render_template('trans', config_vars=config_vars)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/tech')
|
||||||
|
def tech():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
return render_template('tech', config_vars=config_vars)
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/resources')
|
||||||
|
def hate():
|
||||||
|
# Grab site specific information - YAML
|
||||||
|
globals = get_global_variables()
|
||||||
|
dislikes = get_ld_variables("dislikes")
|
||||||
|
sorted_dislikes = sorted_vars(dislikes)
|
||||||
|
return render_template('resources', config_vars=config_vars)
|
|
@ -1,67 +0,0 @@
|
||||||
#!/usr/bin/env python
|
|
||||||
# script by jessebot@linux.com to get the bands and do the things
|
|
||||||
# 1/7/19 -- 2019? D:
|
|
||||||
import argparse
|
|
||||||
import subprocess
|
|
||||||
import sqlite3
|
|
||||||
|
|
||||||
|
|
||||||
def add_new_band(band):
|
|
||||||
"""
|
|
||||||
Takes a str of a bands name and adds it to a sqlite3 db
|
|
||||||
returns the string "Success" if all went well.
|
|
||||||
"""
|
|
||||||
# create the band art!
|
|
||||||
bashCommand = "./generate_band_art.py --band {0}".format(band)
|
|
||||||
print bashCommand
|
|
||||||
process = subprocess.Popen(bashCommand.split(), stdout=subprocess.PIPE)
|
|
||||||
output, error = process.communicate()
|
|
||||||
print output
|
|
||||||
|
|
||||||
# uh, idunno
|
|
||||||
return "Success"
|
|
||||||
|
|
||||||
|
|
||||||
def get_all_bands():
|
|
||||||
"""
|
|
||||||
grabs all the bands from sqlite3 db
|
|
||||||
- returns a list of tuples with 2 strings of band_name, and time_stamp
|
|
||||||
"""
|
|
||||||
conn = sqlite3.connect('my-next-band.db')
|
|
||||||
|
|
||||||
c = conn.cursor()
|
|
||||||
|
|
||||||
# Insert a row of data
|
|
||||||
get = '''SELECT * FROM bands'''
|
|
||||||
c.execute(get)
|
|
||||||
|
|
||||||
# print(c.fetchall())
|
|
||||||
all_bands = c.fetchall()
|
|
||||||
|
|
||||||
# close connection
|
|
||||||
conn.close()
|
|
||||||
|
|
||||||
return all_bands
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""
|
|
||||||
Let's get it on! *cracks whip*
|
|
||||||
"""
|
|
||||||
parser = argparse.ArgumentParser(description='Document cool band names.')
|
|
||||||
parser.add_argument('--add-band', dest='band', nargs='?', type=str,
|
|
||||||
help='a COOL band name')
|
|
||||||
parser.add_argument('--get-all', dest='get_all', action='store_true',
|
|
||||||
help='list all cool band names')
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
if args.band:
|
|
||||||
print(add_new_band(args.band))
|
|
||||||
|
|
||||||
if args.get_all:
|
|
||||||
print(get_all_bands())
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
|
@ -1,49 +0,0 @@
|
||||||
#!/usr/bin/env python
|
|
||||||
# script by jessebot@linux.com to get the bands and do the things
|
|
||||||
# 1/10/19 -- 2019? D:
|
|
||||||
import argparse
|
|
||||||
import sqlite3
|
|
||||||
import datetime
|
|
||||||
import time
|
|
||||||
|
|
||||||
def adapt_datetime(ts):
|
|
||||||
"""
|
|
||||||
Internet says I need dis
|
|
||||||
"""
|
|
||||||
return time.mktime(ts.timetuple())
|
|
||||||
|
|
||||||
def main ():
|
|
||||||
"""
|
|
||||||
Let's get it on! *cracks whip*
|
|
||||||
"""
|
|
||||||
parser = argparse.ArgumentParser(description='Document cool band names.')
|
|
||||||
parser.add_argument('--band', nargs='?', type=str,
|
|
||||||
help='a COOL band name')
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
print((args.band))
|
|
||||||
|
|
||||||
now = str(datetime.datetime.now())
|
|
||||||
|
|
||||||
conn = sqlite3.connect('my-next-band.db')
|
|
||||||
|
|
||||||
c = conn.cursor()
|
|
||||||
|
|
||||||
# Create table
|
|
||||||
c.execute('''CREATE TABLE bands (name text, time text, image text)''')
|
|
||||||
|
|
||||||
# Insert a row of data
|
|
||||||
insert = '''INSERT INTO bands VALUES ('{0}','{1}','{2}')'''.format(args.band,
|
|
||||||
now,
|
|
||||||
"placeholder")
|
|
||||||
c.execute(insert)
|
|
||||||
|
|
||||||
# Save (commit) the changes
|
|
||||||
conn.commit()
|
|
||||||
|
|
||||||
# We can also close the connection if we are done with it.
|
|
||||||
# Just be sure any changes have been committed or they will be lost.
|
|
||||||
conn.close()
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
|
@ -1,58 +0,0 @@
|
||||||
#!/usr/bin/env python3
|
|
||||||
# script by jessebot@linux.com to get the bands' art and do the things
|
|
||||||
# 1/10/19 -- 2019? D:
|
|
||||||
import argparse
|
|
||||||
import datetime
|
|
||||||
from google_images_download import google_images_download
|
|
||||||
import sqlite3
|
|
||||||
|
|
||||||
|
|
||||||
def generate_band_art(band):
|
|
||||||
# change image results by making different key words
|
|
||||||
band_list = band.split()
|
|
||||||
last_item = len(band_list) - 1
|
|
||||||
keywd = band_list[last_item]
|
|
||||||
# google image
|
|
||||||
response = google_images_download.googleimagesdownload()
|
|
||||||
absolute_img_paths = response.download({"keywords":keywd, "size":"medium",
|
|
||||||
"output_directory":"./images/band",
|
|
||||||
"no_directory":"true",
|
|
||||||
"no_numbering":"true", "limit":1})
|
|
||||||
path = absolute_img_paths[keywd][0]
|
|
||||||
art = path.replace("/var/www/jessebot.io/images/band/","")
|
|
||||||
|
|
||||||
conn = sqlite3.connect('my-next-band.db')
|
|
||||||
c = conn.cursor()
|
|
||||||
|
|
||||||
# timestamp!
|
|
||||||
now = str(datetime.datetime.now())
|
|
||||||
|
|
||||||
# Insert a row of data
|
|
||||||
insert = '''INSERT INTO bands VALUES ('{0}','{1}','{2}')'''.format(band,
|
|
||||||
now,
|
|
||||||
art)
|
|
||||||
print(insert)
|
|
||||||
c.execute(insert)
|
|
||||||
# Save (commit) the changes
|
|
||||||
conn.commit()
|
|
||||||
|
|
||||||
# close db connection
|
|
||||||
conn.close()
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
parser = argparse.ArgumentParser(description='Document cool band names.')
|
|
||||||
parser.add_argument('--band', type=str, nargs='+', help='a COOL band name')
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
if args.band:
|
|
||||||
if type(args.band) == list:
|
|
||||||
band = " ".join(args.band)
|
|
||||||
else:
|
|
||||||
band = args.band
|
|
||||||
# make art
|
|
||||||
generate_band_art(band)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main()
|
|
|
@ -1,36 +0,0 @@
|
||||||
#!/usr/bin/python3
|
|
||||||
import argparse
|
|
||||||
from PIL import Image
|
|
||||||
from PIL import ImageFont
|
|
||||||
from PIL import ImageDraw
|
|
||||||
import sqlite3
|
|
||||||
|
|
||||||
|
|
||||||
def add_text():
|
|
||||||
img = Image.open(image_name)
|
|
||||||
draw = ImageDraw.Draw(img)
|
|
||||||
# font = ImageFont.truetype(<font-file>, <font-size>)
|
|
||||||
font = ImageFont.truetype("sans-serif.ttf", 16)
|
|
||||||
# draw.text((x, y),"Sample Text",(r,g,b))
|
|
||||||
draw.text((0, 0),"Sample Text",(255,255,255),font=font)
|
|
||||||
img.save('sample-out.jpg')
|
|
||||||
|
|
||||||
def main():
|
|
||||||
parser = argparse.ArgumentParser(description='Document cool band names.')
|
|
||||||
parser.add_argument('--band', type=str, nargs='+', help='a COOL band name')
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
if args.band:
|
|
||||||
if type(args.band) == list:
|
|
||||||
band = " ".join(args.band)
|
|
||||||
else:
|
|
||||||
band = args.band
|
|
||||||
# make art
|
|
||||||
generate_band_art(band)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,146 +0,0 @@
|
||||||
#!/usr/bin/python
|
|
||||||
# Jesse Hitch - JesseBot@Linux.com
|
|
||||||
# 1/10/19 Production Web Routing File -- Personal Routes
|
|
||||||
import bottle
|
|
||||||
from bottle import redirect, request, response, route
|
|
||||||
from bottle import run, static_file, template
|
|
||||||
import logging as log
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
import yaml
|
|
||||||
import band_names_db
|
|
||||||
|
|
||||||
|
|
||||||
def get_global_variables():
|
|
||||||
"""
|
|
||||||
Gets global variables from YAML file. Returns dict.
|
|
||||||
"""
|
|
||||||
with open('./config/config.yaml', 'r') as f:
|
|
||||||
doc = yaml.load(f)
|
|
||||||
txt = doc["Globals"]
|
|
||||||
return txt
|
|
||||||
|
|
||||||
|
|
||||||
def get_ld_variables(ld_var):
|
|
||||||
"""
|
|
||||||
Gets global variables from YAML file. Returns dict.
|
|
||||||
"""
|
|
||||||
with open('./config/config_likes_dislikes.yaml', 'r') as f:
|
|
||||||
doc = yaml.load(f)
|
|
||||||
txt = doc[ld_var]
|
|
||||||
return txt
|
|
||||||
|
|
||||||
|
|
||||||
def sorted_vars(some_dict):
|
|
||||||
"""
|
|
||||||
Iterates through a dict and fixes list values to be alphabitized
|
|
||||||
takes a dict.
|
|
||||||
"""
|
|
||||||
for key, value in some_dict.items():
|
|
||||||
value.sort()
|
|
||||||
some_dict[key] = value
|
|
||||||
return some_dict
|
|
||||||
|
|
||||||
|
|
||||||
# Web routes below this line...
|
|
||||||
# full path to HTML templates
|
|
||||||
WEB_ROOT = get_global_variables()['web_root']
|
|
||||||
bottle.TEMPLATE_PATH.insert(0, '{0}/views/'.format(WEB_ROOT))
|
|
||||||
|
|
||||||
|
|
||||||
@route('/google1ab5c73d1f31729d.html')
|
|
||||||
def goog():
|
|
||||||
# allow google to crawl me harder
|
|
||||||
return static_file('google1ab5c73d1f31729d.html', root=WEB_ROOT+'/views/')
|
|
||||||
|
|
||||||
|
|
||||||
@route('/next-band')
|
|
||||||
def next_band():
|
|
||||||
log.info("oh hi, you must be here to see the name of my next band")
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
|
|
||||||
all_bands = band_names_db.get_all_bands()
|
|
||||||
log.info("received band.db response: {0}".format(all_bands))
|
|
||||||
|
|
||||||
return template('next-band', globals=globals, bands=all_bands)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/next-band', method='POST')
|
|
||||||
def next_band_submit():
|
|
||||||
# get band from post
|
|
||||||
inputBand = request.forms.get('inputBand')
|
|
||||||
log.info("received band name: {0}".format(inputBand))
|
|
||||||
|
|
||||||
# add new band to db
|
|
||||||
add_new_band = band_names_db.add_new_band(inputBand)
|
|
||||||
|
|
||||||
# if success redirect back to main page
|
|
||||||
if add_new_band == "Success":
|
|
||||||
redirect("/next-band")
|
|
||||||
else:
|
|
||||||
return "<p>THERE WAS AN ERROR: {0}</p>".format(add_new_band)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/love')
|
|
||||||
def love():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
likes = get_ld_variables("likes")
|
|
||||||
sorted_likes = sorted_vars(likes)
|
|
||||||
return template('love', globals=globals, likes=sorted_likes)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/hate')
|
|
||||||
def hate():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
dislikes = get_ld_variables("dislikes")
|
|
||||||
sorted_dislikes = sorted_vars(dislikes)
|
|
||||||
return template('hate', globals=globals, dislikes=sorted_dislikes)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/resources')
|
|
||||||
def hate():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
dislikes = get_ld_variables("dislikes")
|
|
||||||
sorted_dislikes = sorted_vars(dislikes)
|
|
||||||
return template('hate', globals=globals, dislikes=sorted_dislikes)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/nutrition')
|
|
||||||
def nutrition():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
return template('nutrition', globals=globals)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/trans')
|
|
||||||
def trans():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
return template('trans', globals=globals)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/tech')
|
|
||||||
def tech():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
return template('tech', globals=globals)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/resources')
|
|
||||||
def hate():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
dislikes = get_ld_variables("dislikes")
|
|
||||||
sorted_dislikes = sorted_vars(dislikes)
|
|
||||||
return template('resources', globals=globals, dislikes=sorted_dislikes)
|
|
||||||
|
|
||||||
|
|
||||||
@route('/dev')
|
|
||||||
def dev():
|
|
||||||
# Grab site specific information - YAML
|
|
||||||
globals = get_global_variables()
|
|
||||||
return template('dev', globals=globals)
|
|
|
@ -7,32 +7,37 @@
|
||||||
|
|
||||||
[class^="nf-"]:before {
|
[class^="nf-"]:before {
|
||||||
font-family: 'Mononoki';
|
font-family: 'Mononoki';
|
||||||
|
font-size: 1.3rem;
|
||||||
|
color: cornflowerblue;
|
||||||
|
/* Better Font Rendering (from devicons, et al) */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* ------- social icons ----------- */
|
/* ------- social icons ----------- */
|
||||||
|
|
||||||
.nf-fa-github_alt:before {
|
.nf-fa-github_alt:before {
|
||||||
content: "\f113";
|
content: "\f113";
|
||||||
font-size: 4rem;
|
}
|
||||||
color: cornflowerblue;
|
|
||||||
|
.nf-fa-github_alt_link:before {
|
||||||
|
content: "\f113";
|
||||||
|
font-size: 4rem !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nf-fa-gitlab:before {
|
.nf-fa-gitlab:before {
|
||||||
content: "\f296";
|
content: "\f296";
|
||||||
font-size: 4rem;
|
font-size: 4rem !important;
|
||||||
color: cornflowerblue;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.nf-fa-linkedin_square:before {
|
.nf-fa-linkedin_square:before {
|
||||||
content: "\f08c";
|
content: "\f08c";
|
||||||
font-size: 4rem;
|
font-size: 4rem !important;
|
||||||
color: cornflowerblue;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* ------- user icons ----------- */
|
/* ------- user icons ----------- */
|
||||||
.nf-fa-user_secret:before {
|
|
||||||
content: "\f21b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.nf-mdi-human:before {
|
.nf-mdi-human:before {
|
||||||
content: "\f7e5";
|
content: "\f7e5";
|
||||||
|
@ -41,3 +46,7 @@
|
||||||
.nf-mdi-account:before {
|
.nf-mdi-account:before {
|
||||||
content: "\f503";
|
content: "\f503";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.nf-mdi-forklift:before {
|
||||||
|
content: "\fcc7";
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
/* This was originally built on:
|
/* Forked from:
|
||||||
BLOCKS - Responsive Dashboard Theme - Copyright 2013
|
BLOCKS - Copyright 2013 - Carlos Alvarez
|
||||||
Which was designed and built based on Twitter Bootstrap and created by:
|
|
||||||
Carlos Alvarez
|
|
||||||
|
|
||||||
Since BLOCKS is dead since 2013, this is now a basic user linktree
|
Since BLOCKS is dead since 2013, this is now a basic user linktree
|
||||||
designed and maintained by jessebot[at]linux[dot]com
|
designed and maintained by jessebot[at]linux[dot]com
|
||||||
|
@ -11,7 +9,7 @@
|
||||||
| Color | Used for |
|
| Color | Used for |
|
||||||
|:-------:|:---------------------------------------|
|
|:-------:|:---------------------------------------|
|
||||||
| #1f1f1f | Background Color |
|
| #1f1f1f | Background Color |
|
||||||
| #3d3d3d | Dash-unit and half-unit Section |
|
| #3d3d3d | cardclone and half-unit Section |
|
||||||
| #262626 | Footer |
|
| #262626 | Footer |
|
||||||
| #fa1d2d | Red - Used in selectors and paragraphs |
|
| #fa1d2d | Red - Used in selectors and paragraphs |
|
||||||
| #b2c831 | Green - Used in titles |
|
| #b2c831 | Green - Used in titles |
|
||||||
|
@ -73,7 +71,8 @@ h5 {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ----------------------- Dash Unit -------------------------- */
|
/* ----------------------- Dash Unit -------------------------- */
|
||||||
.dash-unit {
|
|
||||||
|
.cardclone {
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
padding-bottom: 10px;
|
padding-bottom: 10px;
|
||||||
background-image: url('../images/sep-half.png');
|
background-image: url('../images/sep-half.png');
|
||||||
|
@ -91,21 +90,21 @@ h5 {
|
||||||
filter: alpha(opacity=97);
|
filter: alpha(opacity=97);
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit:hover {
|
.cardclone:hover {
|
||||||
background-color: #3a3a3a;
|
background-color: #3a3a3a;
|
||||||
-moz-box-shadow: 3px 3px 2px 0px #151515;
|
-moz-box-shadow: 3px 3px 2px 0px #151515;
|
||||||
-webkit-box-shadow: 3px 3px 2px 0px #151515;
|
-webkit-box-shadow: 3px 3px 2px 0px #151515;
|
||||||
box-shadow: 3px 3px 2px 0px #151515;
|
box-shadow: 3px 3px 2px 0px #151515;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit hr {
|
.cardclone hr {
|
||||||
border: 0;
|
border: 0;
|
||||||
border-top: 1px solid #151515;
|
border-top: 1px solid #151515;
|
||||||
border-top-style: dashed;
|
border-top-style: dashed;
|
||||||
margin-top: 3px;
|
margin-top: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit p {
|
.cardclone p {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: 200;
|
font-weight: 200;
|
||||||
line-height: 16px;
|
line-height: 16px;
|
||||||
|
@ -117,27 +116,47 @@ h5 {
|
||||||
padding-right: 20px;
|
padding-right: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit bold {
|
.cardclone bold {
|
||||||
font-family: 'Open Sans', sans-serif;
|
|
||||||
font-size: 26px;
|
font-size: 26px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit dtitle {
|
.c-title {
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
margin: 8px;
|
margin: 1px;
|
||||||
padding-top: 4px;
|
padding-top: 0px;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
padding-left: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.c-title-social {
|
||||||
|
margin: 5px;
|
||||||
|
font-size: 11px;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: #ffffff;
|
||||||
|
padding: 0px;
|
||||||
|
height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.c-footer-link {
|
||||||
|
font-size: 11px;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: #ffffff;
|
||||||
|
margin: 2px;
|
||||||
|
padding-top: 3px;
|
||||||
padding-bottom: 0px;
|
padding-bottom: 0px;
|
||||||
padding-left: 0px;
|
padding-left: 0px;
|
||||||
padding-right: 0px;
|
padding-right: 0px;
|
||||||
height: inherit;
|
height: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit h1 {
|
.cardclone h1 {
|
||||||
font-family: 'Raleway', sans-serif;
|
font-family: 'Raleway', sans-serif;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
|
@ -150,7 +169,7 @@ h5 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit h2 {
|
.cardclone h2 {
|
||||||
font-family: 'Open Sans', sans-serif;
|
font-family: 'Open Sans', sans-serif;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-size: 30px;
|
font-size: 30px;
|
||||||
|
@ -163,7 +182,7 @@ h5 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit h3 {
|
.cardclone h3 {
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
line-height: 2px;
|
line-height: 2px;
|
||||||
|
@ -175,14 +194,14 @@ h5 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dash-unit h4 {
|
.cardclone h4 {
|
||||||
padding-left: 5px;
|
padding-left: 5px;
|
||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
font-weight: lighter;
|
font-weight: lighter;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
letter-spacing: 0px;
|
letter-spacing: 0px;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -216,11 +235,11 @@ h5 {
|
||||||
font-family: 'Open Sans', sans-serif;
|
font-family: 'Open Sans', sans-serif;
|
||||||
font-size: 26px;
|
font-size: 26px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
.half-unit dtitle {
|
.half-unit c-title {
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
|
@ -249,7 +268,7 @@ h5 {
|
||||||
font-weight: lighter;
|
font-weight: lighter;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
letter-spacing: 0px;
|
letter-spacing: 0px;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**********Styling Elements**********/
|
/**********Styling Elements**********/
|
||||||
|
@ -300,14 +319,14 @@ h5 {
|
||||||
.modal-header {
|
.modal-header {
|
||||||
background-image: url('../images/sep-half.png');
|
background-image: url('../images/sep-half.png');
|
||||||
background-color: #4f4f4f;
|
background-color: #4f4f4f;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type=submit] {
|
input[type=submit] {
|
||||||
font-family: 'Open Sans', sans-serif;
|
font-family: 'Open Sans', sans-serif;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
background: #b2c831;
|
background: #b2c831;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
border: none;
|
border: none;
|
||||||
padding: 8px 28px 10px 26px;
|
padding: 8px 28px 10px 26px;
|
||||||
*-webkit-border-radius: 4px;
|
*-webkit-border-radius: 4px;
|
||||||
|
@ -439,25 +458,6 @@ a:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/********** FooterWrap Section **********/
|
|
||||||
#footerwrap {
|
|
||||||
background: #262626;
|
|
||||||
background-image: url('../images/sep-half.png');
|
|
||||||
padding-top: 25px;
|
|
||||||
padding-bottom: 40px;
|
|
||||||
border-top-style: solid;
|
|
||||||
border-top-width: 8px;
|
|
||||||
border-top-color: #1d1d1d;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#footerwrap p {
|
|
||||||
color: white;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/********** Media Styles **********/
|
/********** Media Styles **********/
|
||||||
|
|
||||||
/* portrait tablet */
|
/* portrait tablet */
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
<?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 48 48;" version="1.1" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
|
|
||||||
.st0{opacity:0.3;fill:#29ABE2;enable-background:new ;}
|
|
||||||
.st1{fill:#29ABE2;}
|
|
||||||
</style><title/><g id="LinkedIn"><path class="st0" d="M38,8H16c-1.1,0-2,0.9-2,2v22c0,1.1,0.9,2,2,2h22c1.1,0,2-0.9,2-2V10C40,8.9,39.1,8,38,8z M23,30.5 c0,0.3-0.2,0.5-0.5,0.5h-4c-0.3,0-0.5-0.2-0.5-0.5v-12c0-0.3,0.2-0.5,0.5-0.5h4c0.3,0,0.5,0.2,0.5,0.5V30.5z M20.5,17 c-1.4,0-2.5-1.1-2.5-2.5s1.1-2.5,2.5-2.5s2.5,1.1,2.5,2.5S21.9,17,20.5,17z M37,30.5c0,0.3-0.2,0.5-0.5,0.5h-4 c-0.3,0-0.5-0.2-0.5-0.5v-7c0-0.8-0.7-1.5-1.5-1.5S29,22.7,29,23.5v7c0,0.3-0.2,0.5-0.5,0.5h-4c-0.3,0-0.5-0.2-0.5-0.5v-12 c0-0.3,0.2-0.5,0.5-0.5h4c0.3,0,0.5,0.2,0.5,0.5V19c0.9-0.7,1.9-1,3-1c2.8,0,5,2.2,5,5V30.5z"/><path class="st1" d="M12,22c-1.1,0-2,0.9-2,2s0.9,2,2,2s2-0.9,2-2S13.1,22,12,22z M12,25c-0.6,0-1-0.4-1-1s0.4-1,1-1s1,0.4,1,1 S12.6,25,12,25z"/><path class="st1" d="M13.5,27h-3c-0.3,0-0.5,0.2-0.5,0.5v10c0,0.3,0.2,0.5,0.5,0.5h3c0.3,0,0.5-0.2,0.5-0.5v-10 C14,27.2,13.8,27,13.5,27z M13,37h-2v-9h2V37z"/><path class="st1" d="M21.5,27c-0.9,0-1.8,0.3-2.5,0.8v-0.3c0-0.3-0.2-0.5-0.5-0.5h-3c-0.3,0-0.5,0.2-0.5,0.5v10 c0,0.3,0.2,0.5,0.5,0.5h3c0.3,0,0.5-0.2,0.5-0.5V32c0-1.3,0.6-2,1.5-2s1.5,0.8,1.5,2v5.5c0,0.3,0.2,0.5,0.5,0.5h3 c0.3,0,0.5-0.2,0.5-0.5V32C26,29,24.2,27,21.5,27z M25,37h-2v-5c0-2.1-1.3-3-2.5-3S18,29.9,18,32v5h-2v-9h2v1 c0,0.3,0.2,0.5,0.5,0.5c0.1,0,0.3-0.1,0.4-0.2c0.6-0.9,1.6-1.4,2.6-1.3c2.2,0,3.5,1.5,3.5,4V37z"/><path class="st1" d="M27,19H9c-1.1,0-2,0.9-2,2v18c0,1.1,0.9,2,2,2h18c1.1,0,2-0.9,2-2V21C29,19.9,28.1,19,27,19z M28,39 c0,0.6-0.4,1-1,1H9c-0.6,0-1-0.4-1-1V21c0-0.6,0.4-1,1-1h18c0.6,0,1,0.4,1,1V39z"/></g></svg>
|
|
Before Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 10 KiB |
|
@ -25,4 +25,5 @@
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
<footer>Fork me on Github <3</footer>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -8,6 +8,6 @@
|
||||||
$('[data-toggle="tooltip"]').tooltip()
|
$('[data-toggle="tooltip"]').tooltip()
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
||||||
<meta name="description" content="Input the name of your next band and get some cool cover art.">
|
|
||||||
<meta name="author" content="Jesse Hitch">
|
|
||||||
<meta name="theme-color" content="#1f1f1f" />
|
|
||||||
<link rel="icon" type="image/x-icon" href="/images/{{globals['favicon']}}">
|
|
||||||
|
|
||||||
<meta property="og:url" content="https://jessebot.io/next-band">
|
|
||||||
<meta property="og:image" content="/images/noun_rock_monster.png">
|
|
||||||
<meta property="og:title" content="NAME OF MY NEXT BAND">
|
|
||||||
<meta property="og:description" content="Input the name of your next band and get some cool cover art.">
|
|
||||||
<!-- <meta property="og:type" content="profile"> -->
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<title>MY NEXT BAND</title>
|
|
||||||
|
|
||||||
<!-- Bootstrap core CSS -->
|
|
||||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
|
|
||||||
<!-- Custom styles for this template -->
|
|
||||||
<link href="/css/main.css" rel="stylesheet">
|
|
||||||
<link href="css/tabs.css" rel="stylesheet">
|
|
||||||
<link href="css/font-style.css" rel="stylesheet">
|
|
||||||
|
|
||||||
<style type="text/css">
|
|
||||||
body {
|
|
||||||
padding-top: 60px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
% if globals['fork_me']:
|
|
||||||
<a href="https://github.com/jessebot/tiny_personal_website" class="github-corner" aria-label="View source on Github"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#1f1f1f; position: absolute; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)']}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out']}}</style>
|
|
||||||
% end
|
|
|
@ -34,6 +34,6 @@
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
% if globals['fork_me']:
|
{% if globals['fork_me'] %}
|
||||||
<a href="https://github.com/jessebot/tiny_personal_website" class="github-corner" aria-label="View source on Github"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#1f1f1f; position: absolute; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)']}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out']}}</style>
|
<a href="https://github.com/jessebot/tiny_personal_website" class="github-corner" aria-label="View source on Github"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#1f1f1f; position: absolute; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0{%,100{%{transform:rotate(0)}20{%,60{%{transform:rotate(-25deg)}40{%,80{%{transform:rotate(10deg)']}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out']}}</style>
|
||||||
% end
|
{% endif %}
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
{% include('header_main.html') %}
|
{% include('header_main.html') %}
|
||||||
<div class="container d-flex align-items-center vh-100">
|
|
||||||
|
|
||||||
|
<div class="container d-flex align-items-center vh-100">
|
||||||
<!-- user photo, name, and blurb -->
|
<!-- user photo, name, and blurb -->
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<div class="dash-unit">
|
<div class="cardclone">
|
||||||
<dtitle>
|
<div class='c-title'>
|
||||||
<span class="nf-mdi-account" style="font-size: 1.2rem;"></span>
|
<span class="nf-mdi-account">
|
||||||
|
</span>
|
||||||
About {{ config_vars['name'] }}
|
About {{ config_vars['name'] }}
|
||||||
</dtitle>
|
</div>
|
||||||
<hr style="margin-bottom: 0;">
|
<hr style="margin-bottom: 0;">
|
||||||
<img class="main-img"
|
<img class="main-img"
|
||||||
src="/static/img/{{ config_vars['profile_image'] }}"
|
src="/static/img/{{ config_vars['profile_image'] }}"
|
||||||
|
@ -17,7 +18,7 @@
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
title="{{ config_vars['name'] }}">
|
title="{{ config_vars['name'] }}">
|
||||||
<br />
|
<br />
|
||||||
<dtitle>
|
<div class='c-title'>
|
||||||
<a href="https://pronouns.org/what-and-why"
|
<a href="https://pronouns.org/what-and-why"
|
||||||
class="pronouns"
|
class="pronouns"
|
||||||
style="color: cornflowerblue;">
|
style="color: cornflowerblue;">
|
||||||
|
@ -26,14 +27,15 @@
|
||||||
<a href="https://pronouns.org/they-them">
|
<a href="https://pronouns.org/they-them">
|
||||||
{{ config_vars['pronouns'] }}
|
{{ config_vars['pronouns'] }}
|
||||||
</a>
|
</a>
|
||||||
</dtitle>
|
</div>
|
||||||
<p>{{ config_vars['blurb'] }}</p>
|
<p>{{ config_vars['blurb'] }}</p>
|
||||||
</div><!-- /.dash-unit -->
|
</div>
|
||||||
</div><!-- /.col -->
|
</div>
|
||||||
</div><!-- /.row -->
|
</div>
|
||||||
|
|
||||||
<div class="dash-unit">
|
<!-- social links -->
|
||||||
<dtitle>Social Links</dtitle>
|
<div class="cardclone">
|
||||||
|
<div class='c-title-social'>Social Links</div>
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
{% for lnk in social_links %}
|
{% for lnk in social_links %}
|
||||||
|
@ -47,15 +49,15 @@
|
||||||
</a>
|
</a>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<hr>
|
<hr>
|
||||||
<dtitle>
|
<div class='c-footer-link'>
|
||||||
<a href="{{ config_vars['resume_pdf_URL'] }}"
|
<a href="{{ config_vars['resume_pdf_URL'] }}"
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
title="Download Resume as a PDF"
|
title="Download Resume as a PDF">
|
||||||
style="box-shadow: none;">
|
|
||||||
Download Resume
|
Download Resume
|
||||||
</a>
|
</a>
|
||||||
</dtitle>
|
</div>
|
||||||
</div><!-- /.dash-unit -->
|
</div><!-- /.cardclone -->
|
||||||
|
|
||||||
</div><!-- /.container MAIN-->
|
</div><!-- /.container MAIN-->
|
||||||
|
|
||||||
{% include('footer_main.html') %}
|
{% include('footer_main.html') %}
|
||||||
|
|
|
@ -1,57 +0,0 @@
|
||||||
% include('header_band.html')
|
|
||||||
<div class="container">
|
|
||||||
<div class="row">
|
|
||||||
|
|
||||||
<!-- Input section -->
|
|
||||||
<div class="col-xl-11 col-lg-11 col-md-11 col-sm-11 col-xs-12">
|
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
|
||||||
<dtitle>
|
|
||||||
<span aria-hidden="true" class="li_star fs1"></span>
|
|
||||||
The Name of My Next Band
|
|
||||||
</dtitle>
|
|
||||||
<hr>
|
|
||||||
<center>
|
|
||||||
<div class="col-xl-11 col-lg-11 col-md-11 col-sm-11 col-xs-12">
|
|
||||||
<form action="/next-band" method="post">
|
|
||||||
<center>
|
|
||||||
<div class="form-row align-items-center">
|
|
||||||
<div class="col-md-5">
|
|
||||||
<img class="img-responsive img-rounded center-block main-img" src="/images/noun_rock_monster.png" alt="Band Monster >:3" style="height:250px;" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Band Monster">
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-6">
|
|
||||||
Submit a band name, and it'll generate some cool art for you. Currently under construction.
|
|
||||||
<label for="inputBand" class="sr-only">Input Band Name Here</label>
|
|
||||||
<input type="text" class="form-control" id="inputBand" name="inputBand" placeholder="Band Name">
|
|
||||||
<button type="submit" class="btn btn-primary btn-sm mb-2">Submit</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</center>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</center>
|
|
||||||
</div> <!-- /.dash-unit -->
|
|
||||||
</div> <!-- /.col -->
|
|
||||||
|
|
||||||
<!-- Previous bands -->
|
|
||||||
<div class="col-xl-11 col-lg-11 col-md-11 col-sm-11 col-xs-12">
|
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
|
||||||
<dtitle>
|
|
||||||
<span aria-hidden="true" class="li_star fs1"></span>
|
|
||||||
Previous Potential Band Names
|
|
||||||
</dtitle>
|
|
||||||
<hr>
|
|
||||||
<center>
|
|
||||||
<div class="col-xl-11 col-lg-11 col-md-11 col-sm-11 col-xs-12">
|
|
||||||
% for band_set in bands:
|
|
||||||
<li>{{band_set[0]}}</li><br />
|
|
||||||
% end
|
|
||||||
</div>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
</div><!-- /.dash-unit -->
|
|
||||||
</div><!-- /.col -->
|
|
||||||
|
|
||||||
</div><!-- /.row ALL CARDS-->
|
|
||||||
</div><!-- /.container MAIN-->
|
|
||||||
|
|
||||||
% include('footer_main.html')
|
|
|
@ -1,59 +1,63 @@
|
||||||
% include('header_resources.html')
|
{% include('header_resources.html') %}
|
||||||
<div class="container">
|
|
||||||
|
<div class="container">
|
||||||
<h3>Come learn about things!</h3>
|
<h3>Come learn about things!</h3>
|
||||||
<br />
|
<br />
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
<div class="dash-unit">
|
||||||
<dtitle>
|
<div class="c-title">
|
||||||
Health
|
Health
|
||||||
</dtitle>
|
</div>
|
||||||
<hr style="margin-bottom: 0;">
|
<hr style="margin-bottom: 0;">
|
||||||
<img class="img-responsive img-rounded center-block main-img"
|
<img class="img-responsive img-rounded center-block main-img"
|
||||||
src="/images/noun_Health_1993730.png"
|
src="/img/noun_Health_1993730.png"
|
||||||
alt="Boop."
|
alt="Boop."
|
||||||
style="height:250px;"
|
style="height:250px;"
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
title="Nutrition stuff">
|
title="Nutrition stuff">
|
||||||
</div><!-- /.dash-unit -->
|
</div><!-- /.dash-unit -->
|
||||||
</div><!-- /.col -->
|
</div><!-- /.col -->
|
||||||
|
|
||||||
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
<div class="dash-unit">
|
||||||
<dtitle>
|
<div class='c-title'>
|
||||||
Tech Stuff
|
Tech Stuff
|
||||||
</dtitle>
|
</div>
|
||||||
<hr style="margin-bottom: 0;">
|
<hr style="margin-bottom: 0;">
|
||||||
<img class="img-responsive img-rounded center-block main-img"
|
<img class="img-responsive img-rounded center-block main-img"
|
||||||
src="/images/noun_Robot_771023.png"
|
src="/img/noun_Robot_771023.png"
|
||||||
alt="Boop."
|
alt="Boop."
|
||||||
style="height:250px;"
|
style="height:250px;"
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
title="Tech stuff">
|
title="Tech stuff">
|
||||||
</div><!-- /.dash-unit -->
|
</div><!-- /.dash-unit -->
|
||||||
</div><!-- /.col -->
|
</div><!-- /.col -->
|
||||||
|
|
||||||
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
<div class="dash-unit">
|
||||||
<dtitle>
|
<div class='c-title'>
|
||||||
Trans Data
|
Trans Data
|
||||||
</dtitle>
|
</div>
|
||||||
<hr style="margin-bottom: 0;">
|
<hr style="margin-bottom: 0;">
|
||||||
<img class="img-responsive img-rounded center-block main-img"
|
<img class="img-responsive img-rounded center-block main-img"
|
||||||
src="/images/noun_gender_pill.png"
|
src="/img/noun_gender_pill.png"
|
||||||
alt="Boop."
|
alt="Boop."
|
||||||
style="height:250px;"
|
style="height:250px;"
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
title="Transgender words.">
|
title="Transgender words.">
|
||||||
</div><!-- /.dash-unit -->
|
</div><!-- /.dash-unit -->
|
||||||
</div><!-- /.col -->
|
</div><!-- /.col -->
|
||||||
|
|
||||||
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
<div class="col-xs-8 col-sm-4 col-md-3 col-lg-3">
|
||||||
<div class="dash-unit bhoechie-tab-container">
|
<div class="dash-unit">
|
||||||
<dtitle>
|
<div class='c-title'>
|
||||||
The name of my next band
|
The name of my next band
|
||||||
</dtitle>
|
</div>
|
||||||
<hr style="margin-bottom: 0;">
|
<hr style="margin-bottom: 0;">
|
||||||
<a href="/next-band">
|
<a href="/next-band">
|
||||||
<img class="img-responsive img-rounded center-block main-img"
|
<img class="img-responsive img-rounded center-block main-img"
|
||||||
src="/images/noun_rock_monster.png"
|
src="/img/noun_rock_monster.png"
|
||||||
alt="Boop."
|
alt="Boop."
|
||||||
style="height:250px;"
|
style="height:250px;"
|
||||||
data-toggle="tooltip" data-placement="bottom"
|
data-toggle="tooltip" data-placement="bottom"
|
||||||
|
@ -63,8 +67,7 @@
|
||||||
</div><!-- /.col -->
|
</div><!-- /.col -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div><!-- /.row ALL CARDS-->
|
</div><!-- /.row ALL CARDS-->
|
||||||
</div><!-- /.container MAIN-->
|
</div><!-- /.container MAIN-->
|
||||||
|
|
||||||
% include('footer_main.html')
|
{% include('footer_main.html') %}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue