mirror of
https://github.com/BradNut/personal-website-sveltekit
synced 2025-09-08 23:20:18 +00:00
Adding layout header and footer, postcss, and base pages.
This commit is contained in:
parent
f6aea0542d
commit
68828905b3
54 changed files with 2688 additions and 51 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -8,3 +8,6 @@ node_modules
|
|||
!.env.example
|
||||
vite.config.js.timestamp-*
|
||||
vite.config.ts.timestamp-*
|
||||
|
||||
.fleet
|
||||
.idea
|
||||
16
package.json
16
package.json
|
|
@ -14,18 +14,34 @@
|
|||
"format": "prettier --plugin-search-dir . --write ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"@iconify-icons/material-symbols": "^1.2.25",
|
||||
"@iconify-icons/radix-icons": "^1.2.8",
|
||||
"@leveluptuts/svelte-side-menu": "^1.0.5",
|
||||
"@leveluptuts/svelte-toy": "^2.0.3",
|
||||
"@playwright/test": "^1.28.1",
|
||||
"@sveltejs/adapter-auto": "^1.0.0",
|
||||
"@sveltejs/adapter-vercel": "^1.0.5",
|
||||
"@sveltejs/kit": "^1.0.0",
|
||||
"@types/postcss-preset-env": "^8.0.0",
|
||||
"@typescript-eslint/eslint-plugin": "^5.45.0",
|
||||
"@typescript-eslint/parser": "^5.45.0",
|
||||
"autoprefixer": "^10.4.7",
|
||||
"eslint": "^8.28.0",
|
||||
"eslint-config-prettier": "^8.5.0",
|
||||
"eslint-plugin-svelte3": "^4.0.0",
|
||||
"iconify-icon": "^1.0.3",
|
||||
"postcss": "^8.4.14",
|
||||
"postcss-load-config": "^4.0.1",
|
||||
"postcss-nested": "^6.0.0",
|
||||
"postcss-preset-env": "^8.0.1",
|
||||
"prettier": "^2.8.0",
|
||||
"prettier-plugin-svelte": "^2.8.1",
|
||||
"sass": "^1.57.1",
|
||||
"scrape-it": "^5.3.2",
|
||||
"svelte": "^3.54.0",
|
||||
"svelte-check": "^3.0.1",
|
||||
"svelte-lazy-loader": "^1.0.0",
|
||||
"svelte-preprocess": "^4.10.7",
|
||||
"tslib": "^2.4.1",
|
||||
"typescript": "^4.9.3",
|
||||
"vite": "^4.0.0",
|
||||
|
|
|
|||
2093
pnpm-lock.yaml
2093
pnpm-lock.yaml
File diff suppressed because it is too large
Load diff
8
postcss.config.cjs
Normal file
8
postcss.config.cjs
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
const autoprefixer = require('autoprefixer');
|
||||
const postcssNested = require('postcss-nested');
|
||||
|
||||
const config = {
|
||||
plugins: [autoprefixer, postcssNested]
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
36
src/app.html
36
src/app.html
|
|
@ -2,10 +2,42 @@
|
|||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="description" content="Bored? Find a game! Bored Game!" />
|
||||
<link rel="icon" href="%sveltekit.assets%/b_shell_nut_favicon.gif" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<script>
|
||||
const htmlElement = document.documentElement;
|
||||
const userTheme = localStorage.theme;
|
||||
const userFont = localStorage.font;
|
||||
|
||||
const prefersDarkMode = window.matchMedia('prefers-color-scheme: dark').matches;
|
||||
const prefersLightMode = window.matchMedia('prefers-color-scheme: light').matches;
|
||||
|
||||
// check if the user set a theme
|
||||
if (userTheme) {
|
||||
htmlElement.dataset.theme = userTheme;
|
||||
}
|
||||
|
||||
// otherwise check for user preference
|
||||
if (!userTheme && prefersDarkMode) {
|
||||
htmlElement.dataset.theme = '🌛 Night';
|
||||
localStorage.theme = '🌛 Night';
|
||||
}
|
||||
|
||||
if (!userTheme && prefersLightMode) {
|
||||
htmlElement.dataset.theme = '☀️ Light';
|
||||
localStorage.theme = '☀️ Light';
|
||||
}
|
||||
|
||||
// if nothing is set default to dark mode
|
||||
if (!userTheme && !prefersDarkMode && !prefersLightMode) {
|
||||
htmlElement.dataset.theme = '🌛 Night';
|
||||
localStorage.theme = '🌛 Night';
|
||||
}
|
||||
</script>
|
||||
%sveltekit.head%
|
||||
</head>
|
||||
|
||||
<body data-sveltekit-preload-data="hover">
|
||||
<div style="display: contents">%sveltekit.body%</div>
|
||||
</body>
|
||||
|
|
|
|||
1
src/app.postcss
Normal file
1
src/app.postcss
Normal file
|
|
@ -0,0 +1 @@
|
|||
/* Write your global styles here, in PostCSS syntax */
|
||||
0
src/lib/components/articles/index.svelte
Normal file
0
src/lib/components/articles/index.svelte
Normal file
84
src/lib/components/footer/index.svelte
Normal file
84
src/lib/components/footer/index.svelte
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
<script lang="ts">
|
||||
import { page } from '$app/stores';
|
||||
import github from '@iconify-icons/radix-icons/github-logo';
|
||||
import linkedin from '@iconify-icons/radix-icons/linkedin-logo';
|
||||
import email from '@iconify-icons/material-symbols/mail';
|
||||
const userNames = {
|
||||
github: 'BradNut',
|
||||
linkedIn: 'bradley-shellnut',
|
||||
email: 'bradleyshellnut@pm.me',
|
||||
};
|
||||
</script>
|
||||
|
||||
<footer>
|
||||
<div>
|
||||
<iconify-icon icon={github} width="24" height="24" />
|
||||
<iconify-icon icon={linkedin} width="24" height="24" />
|
||||
<iconify-icon icon={email} width="24" height="24" />
|
||||
</div>
|
||||
<nav class="footer-list" aria-label="footer navigation">
|
||||
<a class:active={$page.url.pathname === '/'} href="/">Home</a>
|
||||
<a class:active={$page.url.pathname === '/about'} href="/about">About</a>
|
||||
<a class:active={$page.url.pathname === '/portfolio'} href="/portfolio">Portfolio</a>
|
||||
<a class:active={$page.url.pathname === '/uses'} href="/uses">Uses</a>
|
||||
<a class:active={$page.url.pathname === '/privacy'} href="/privacy">Privacy</a>
|
||||
<a class:active={$page.url.pathname === '/articles'} href="/articles">Favorite Articles</a>
|
||||
</nav>
|
||||
<!-- <p className="center"> -->
|
||||
<p>
|
||||
Bradley Shellnut © 2012 - {new Date().getFullYear()}
|
||||
</p>
|
||||
</footer>
|
||||
<!--
|
||||
<style lang="postcss">
|
||||
display: grid;
|
||||
grid-template-rows: repeat(2, 1fr);
|
||||
background: var(--footerBackground);
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
gap: 1rem;
|
||||
|
||||
margin-top: 6rem;
|
||||
padding: 2rem;
|
||||
|
||||
@media (max-width: 800px) {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: 0;
|
||||
max-height: 0;
|
||||
border: solid;
|
||||
width: 100%;
|
||||
border-width: thin 0 0 0;
|
||||
transition: inherit;
|
||||
/* border-color: var(--lightShade);
|
||||
color: var(--lightShade); */
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0.2rem;
|
||||
font-weight: 600;
|
||||
/* color: var(--lightShade); */
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0.5rem;
|
||||
}
|
||||
|
||||
nav .footer-list {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
flex-direction: row;
|
||||
justify-content: space-evenly;
|
||||
gap: 1rem;
|
||||
}
|
||||
|
||||
a {
|
||||
margin: 1rem;
|
||||
line-height: 1rem;
|
||||
}
|
||||
</style> -->
|
||||
46
src/lib/components/header/index.svelte
Normal file
46
src/lib/components/header/index.svelte
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<!-- import React from 'react';
|
||||
import styled from 'styled-components';
|
||||
import Logo from './Logo';
|
||||
import Nav from './Nav'; -->
|
||||
|
||||
<script lang="ts">
|
||||
import Nav from '$lib/components/nav/index.svelte';
|
||||
</script>
|
||||
|
||||
|
||||
<header>
|
||||
<!-- <Logo /> -->
|
||||
<h1>Test</h1>
|
||||
<Nav />
|
||||
</header>
|
||||
|
||||
|
||||
<style lang="postcss">
|
||||
header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
//height: var(--headerHeight);
|
||||
align-items: center;
|
||||
/* color: black; */
|
||||
background-color: var(--darkGrey);
|
||||
background: var(--headerBackground);
|
||||
box-shadow: var(--level-2);
|
||||
padding: 0 var(--containerPadding);
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
@media (max-width: 1000px) {
|
||||
header {
|
||||
padding-top: 1.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 650px) {
|
||||
header {
|
||||
align-content: center;
|
||||
display: grid;
|
||||
justify-items: center;
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
47
src/lib/components/nav/index.svelte
Normal file
47
src/lib/components/nav/index.svelte
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
<script lang="ts">
|
||||
import { page } from '$app/stores';
|
||||
</script>
|
||||
|
||||
<header aria-label="header navigation">
|
||||
<nav>
|
||||
<a href="/" class:active={$page.url.pathname === '/'}>Home</a>
|
||||
<a
|
||||
href="/about"
|
||||
class:active={$page.url.pathname === '/about'}
|
||||
>
|
||||
About
|
||||
</a>
|
||||
<a
|
||||
href="/portfolio"
|
||||
class:active={$page.url.pathname === '/portfolio'}
|
||||
>
|
||||
Portfolio
|
||||
</a>
|
||||
<a
|
||||
href="/uses"
|
||||
class:active={$page.url.pathname === '/uses'}
|
||||
>
|
||||
Uses
|
||||
</a>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<style lang="postcss">
|
||||
nav {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, auto);
|
||||
justify-content: right;
|
||||
align-content: center;
|
||||
|
||||
@media (max-width: 650px) {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
margin: 0.5rem;
|
||||
padding: 2rem;
|
||||
|
||||
a + a {
|
||||
margin-left: 25px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
13
src/lib/types/contactTypes.ts
Normal file
13
src/lib/types/contactTypes.ts
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
export enum SocialContact {
|
||||
FACEBOOK,
|
||||
INSTAGRAM,
|
||||
TWITTER,
|
||||
LINKEDIN,
|
||||
REDDIT,
|
||||
GITHUB,
|
||||
YOUTUBE,
|
||||
EMAIL,
|
||||
USERNAMES,
|
||||
SHOWTEXT,
|
||||
JUSTIFY
|
||||
}
|
||||
10
src/lib/util/environmentVariables.json
Normal file
10
src/lib/util/environmentVariables.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"environment-variables": {
|
||||
"--xsmall-viewport": "500px",
|
||||
"--small-viewport": "600px",
|
||||
"--medium-viewport": "700px",
|
||||
"--large-viewport": "1000px",
|
||||
"--xlarge-viewport": "1200px",
|
||||
"--xxlarge-viewport": "1500px"
|
||||
}
|
||||
}
|
||||
11
src/routes/+layout.svelte
Normal file
11
src/routes/+layout.svelte
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<script lang="ts">
|
||||
import '../app.postcss';
|
||||
import Header from '$lib/components/header/index.svelte';
|
||||
import Footer from '$lib/components/footer/index.svelte';
|
||||
</script>
|
||||
|
||||
<Header />
|
||||
<main>
|
||||
<slot />
|
||||
</main>
|
||||
<Footer />
|
||||
|
|
@ -1,2 +1,88 @@
|
|||
<h1>Welcome to SvelteKit</h1>
|
||||
<p>Visit <a href="https://kit.svelte.dev">kit.svelte.dev</a> to read the documentation</p>
|
||||
<script lang="ts">
|
||||
import type { PageData } from "./$types";
|
||||
|
||||
export let data: PageData;
|
||||
const userNames = {
|
||||
github: 'BradNut',
|
||||
linkedIn: 'bradley-shellnut',
|
||||
email: 'bradleyshellnut@pm.me',
|
||||
};
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<title>Bored Game | Home</title>
|
||||
</svelte:head>
|
||||
|
||||
<div class="home">
|
||||
<div>
|
||||
<h1>Hello! I'm Bradley Shellnut.</h1>
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
I'm a full stack software engineer currently working on Java Spring,
|
||||
PostgreSQL, and React / Angular JS.
|
||||
</p>
|
||||
<p>
|
||||
At home you can usually find me learning new things and working with
|
||||
Gatsby, Svelte Kit, and NextJS.
|
||||
</p>
|
||||
<p>
|
||||
Or you may find me jamming out to music 🎶, hiking ⛰️, making{' '}
|
||||
<a
|
||||
target="_blank"
|
||||
href="https://kindredcocktails.com"
|
||||
rel="noreferrer"
|
||||
>
|
||||
cocktails
|
||||
</a>{' '}
|
||||
🍸, or having fun with my cats. 🐈
|
||||
</p>
|
||||
<p>
|
||||
Check me out on{' '}
|
||||
<a
|
||||
href={`https://www.linkedin.com/in/${userNames.linkedIn}`}
|
||||
target="_blank"
|
||||
aria-label="Contact through LinkedIn"
|
||||
rel="noreferrer"
|
||||
>
|
||||
LinkedIn
|
||||
</a>
|
||||
,{' '}
|
||||
<a
|
||||
href={`https://www.github.com/${userNames.github}`}
|
||||
target="_blank"
|
||||
aria-label="Contact through Github"
|
||||
rel="noreferrer"
|
||||
>
|
||||
Github
|
||||
</a>
|
||||
, or read more <a href="/about">about me</a>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="social-info">
|
||||
<!-- <Bandcamp /> -->
|
||||
<!-- <Articles /> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style lang="postcss">
|
||||
.home {
|
||||
display: grid;
|
||||
grid-gap: 2rem;
|
||||
}
|
||||
|
||||
.social-info {
|
||||
margin-top: 2rem;
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 0.5fr;
|
||||
gap: 3rem;
|
||||
|
||||
@media (max-width: 1000px) {
|
||||
grid-template-columns: 1fr 0.4fr;
|
||||
}
|
||||
|
||||
@media (max-width: 800px) {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
0
src/routes/about/+page.svelte
Normal file
0
src/routes/about/+page.svelte
Normal file
0
src/routes/articles/+page.svelte
Normal file
0
src/routes/articles/+page.svelte
Normal file
0
src/routes/portfolio/+page.svelte
Normal file
0
src/routes/portfolio/+page.svelte
Normal file
0
src/routes/privacy/+page.svelte
Normal file
0
src/routes/privacy/+page.svelte
Normal file
0
src/routes/uses/+page.svelte
Normal file
0
src/routes/uses/+page.svelte
Normal file
BIN
static/b_shell_nut_favicon.gif
Normal file
BIN
static/b_shell_nut_favicon.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
BIN
static/b_shell_nut_favicon.ico
Normal file
BIN
static/b_shell_nut_favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 727 KiB |
BIN
static/b_shell_nut_favicon.png
Normal file
BIN
static/b_shell_nut_favicon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.5 KiB |
0
static/fonts/.gitkeep
Normal file
0
static/fonts/.gitkeep
Normal file
BIN
static/fonts/Fira_Code/FiraCode-VariableFont_wght.ttf
Normal file
BIN
static/fonts/Fira_Code/FiraCode-VariableFont_wght.ttf
Normal file
Binary file not shown.
93
static/fonts/Fira_Code/OFL.txt
Normal file
93
static/fonts/Fira_Code/OFL.txt
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
Copyright 2014-2020 The Fira Code Project Authors (https://github.com/tonsky/FiraCode)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
67
static/fonts/Fira_Code/README.txt
Normal file
67
static/fonts/Fira_Code/README.txt
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
Fira Code Variable Font
|
||||
=======================
|
||||
|
||||
This download contains Fira Code as both a variable font and static fonts.
|
||||
|
||||
Fira Code is a variable font with this axis:
|
||||
wght
|
||||
|
||||
This means all the styles are contained in a single file:
|
||||
Fira_Code/FiraCode-VariableFont_wght.ttf
|
||||
|
||||
If your app fully supports variable fonts, you can now pick intermediate styles
|
||||
that aren’t available as static fonts. Not all apps support variable fonts, and
|
||||
in those cases you can use the static font files for Fira Code:
|
||||
Fira_Code/static/FiraCode-Light.ttf
|
||||
Fira_Code/static/FiraCode-Regular.ttf
|
||||
Fira_Code/static/FiraCode-Medium.ttf
|
||||
Fira_Code/static/FiraCode-SemiBold.ttf
|
||||
Fira_Code/static/FiraCode-Bold.ttf
|
||||
|
||||
Get started
|
||||
-----------
|
||||
|
||||
1. Install the font files you want to use
|
||||
|
||||
2. Use your app's font picker to view the font family and all the
|
||||
available styles
|
||||
|
||||
Learn more about variable fonts
|
||||
-------------------------------
|
||||
|
||||
https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts
|
||||
https://variablefonts.typenetwork.com
|
||||
https://medium.com/variable-fonts
|
||||
|
||||
In desktop apps
|
||||
|
||||
https://theblog.adobe.com/can-variable-fonts-illustrator-cc
|
||||
https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts
|
||||
|
||||
Online
|
||||
|
||||
https://developers.google.com/fonts/docs/getting_started
|
||||
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide
|
||||
https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts
|
||||
|
||||
Installing fonts
|
||||
|
||||
MacOS: https://support.apple.com/en-us/HT201749
|
||||
Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
|
||||
Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
|
||||
|
||||
Android Apps
|
||||
|
||||
https://developers.google.com/fonts/docs/android
|
||||
https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts
|
||||
|
||||
License
|
||||
-------
|
||||
Please read the full license text (OFL.txt) to understand the permissions,
|
||||
restrictions and requirements for usage, redistribution, and modification.
|
||||
|
||||
You can use them freely in your products & projects - print or digital,
|
||||
commercial or otherwise.
|
||||
|
||||
This isn't legal advice, please consider consulting a lawyer and see the full
|
||||
license for all details.
|
||||
BIN
static/fonts/Fira_Code/static/FiraCode-Bold.ttf
Normal file
BIN
static/fonts/Fira_Code/static/FiraCode-Bold.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Code/static/FiraCode-Light.ttf
Normal file
BIN
static/fonts/Fira_Code/static/FiraCode-Light.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Code/static/FiraCode-Medium.ttf
Normal file
BIN
static/fonts/Fira_Code/static/FiraCode-Medium.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Code/static/FiraCode-Regular.ttf
Normal file
BIN
static/fonts/Fira_Code/static/FiraCode-Regular.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Code/static/FiraCode-SemiBold.ttf
Normal file
BIN
static/fonts/Fira_Code/static/FiraCode-SemiBold.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Black.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Black.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-BlackItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-BlackItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Bold.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Bold.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-BoldItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-ExtraBold.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-ExtraBold.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-ExtraBoldItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-ExtraBoldItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-ExtraLight.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-ExtraLight.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-ExtraLightItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-ExtraLightItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Italic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Italic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Light.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Light.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-LightItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-LightItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Medium.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Medium.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-MediumItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Regular.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Regular.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-SemiBold.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-SemiBold.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-SemiBoldItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-SemiBoldItalic.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-Thin.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-Thin.ttf
Normal file
Binary file not shown.
BIN
static/fonts/Fira_Sans/FiraSans-ThinItalic.ttf
Normal file
BIN
static/fonts/Fira_Sans/FiraSans-ThinItalic.ttf
Normal file
Binary file not shown.
93
static/fonts/Fira_Sans/OFL.txt
Normal file
93
static/fonts/Fira_Sans/OFL.txt
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
Copyright (c) 2012-2015, The Mozilla Foundation and Telefonica S.A.
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
4
static/fonts/fonts.txt
Normal file
4
static/fonts/fonts.txt
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
Primary font: Fira Mono normal
|
||||
Bold: Khand 600
|
||||
Paragraphs: Open Sans normal
|
||||
"Fira Code", "Helvetica Neue", cursive, sans-serif
|
||||
2
static/robots.txt
Normal file
2
static/robots.txt
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
User-agent: *
|
||||
Disallow:
|
||||
|
|
@ -1,14 +1,28 @@
|
|||
import adapter from '@sveltejs/adapter-auto';
|
||||
import { vitePreprocess } from '@sveltejs/kit/vite';
|
||||
// import { vitePreprocess } from '@sveltejs/kit/vite';
|
||||
import preprocess from 'svelte-preprocess';
|
||||
|
||||
/** @type {import('@sveltejs/kit').Config} */
|
||||
const config = {
|
||||
// Consult https://kit.svelte.dev/docs/integrations#preprocessors
|
||||
// for more information about preprocessors
|
||||
preprocess: vitePreprocess(),
|
||||
|
||||
preprocess: [
|
||||
preprocess({
|
||||
postcss: true
|
||||
})
|
||||
],
|
||||
kit: {
|
||||
adapter: adapter()
|
||||
adapter: adapter(),
|
||||
alias: {
|
||||
$root: './src'
|
||||
}
|
||||
},
|
||||
vitePlugin: {
|
||||
experimental: {
|
||||
inspector: {
|
||||
toggleKeyCombo: 'control-alt-shift'
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue