Skip to content

Instantly share code, notes, and snippets.

View tq-bit's full-sized avatar
🏠
Working from home

tq-bit

🏠
Working from home
View GitHub Profile
@tq-bit
tq-bit / index.html
Last active December 12, 2020 12:53
Make API requests with Javascript - index.html - start
View index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Learn to make API calls - My Pokedex</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css" />
<link rel="stylesheet" href="styles.css" />
</head>
<body>
@tq-bit
tq-bit / docker-compose.yaml
Created September 3, 2021 14:09
Docker compose file to setup a basic nextcloud instance that runs on postgres.
View docker-compose.yaml
version: "3.8"
volumes:
nc_data:
nc_conf:
services:
db:
image: postgres
restart: always
@tq-bit
tq-bit / AppContainer.vue
Created March 17, 2022 18:29
A vue composition API functional component for a Tailwind powered contained
View AppContainer.vue
<script setup lang="ts">
import { h, defineProps, withDefaults, Component } from 'vue';
interface AppContainerProps {
tag?: keyof HTMLElementTagNameMap;
flex?: boolean;
page?: boolean;
center?: boolean;
cols?: number;
}
@tq-bit
tq-bit / AppAudioPlayer.vue
Last active April 13, 2022 13:18
Empty boilerplate for an audio player Vue component
View AppAudioPlayer.vue
<script setup lang="ts">
import { onMounted, ref, computed } from 'vue';
import iPlay from './icons/iPlay.vue';
import iPause from './icons/iPause.vue';
const DEFAULT_AUDIO_ADDRESS = 'https://www.americanrhetoric.com/mp3clips/politicalspeeches/gettysburgaddressjohnnycash.mp3';
const currentAudioFileSource = null;
const previousAudioFileSource = null;
View vue3-ts-lint-setup.sh
npm create vite@latest .
npm install
npm i -D eslint prettier @vue/eslint-config-typescript @rushstack/eslint-patch eslint-config-prettier eslint-plugin-prettier
echo """{
\"bracketSpacing\": true,
\"semi\": true,
\"singleQuote\": true,
\"trailingComma\": \"all\",
\"printWidth\": 80,
View docker-compose.yml
version: "3.5"
services:
reverse-proxy:
# The official v2 Traefik docker image
image: traefik:v2.9
# Enables the web UI and tells Traefik to listen to docker
command: --providers.docker
ports:
# The HTTP port
View docker-compose-calibre.yaml
version: "2.1"
services:
calibre:
image: lscr.io/linuxserver/calibre:latest
container_name: calibre
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- PASSWORD= #optional
@tq-bit
tq-bit / a_setup_nginx.sh
Last active April 28, 2023 08:44
Nginx Configuration with SSL, HTTP2, Load Balancing, Caching, Security headers, disabled caching, Gzip
View a_setup_nginx.sh
#!/bin/bash
# Add your server's username & domain here
USER_NAME=tqbit
SERVER_DOMAIN=test.q-bit.me
SERVER_FRONTEND_PATH=/var/www/html # static, don't change
SERVER_API_PATH=/api # Adjust to your backend's API path
SERVER_API_CACHE_NAME=api_cache # Adjust to your cache key
SERVER_API_CACHE_PATH=/var/tmp/nginx # Change if you have a specific place for your cache
@tq-bit
tq-bit / prompt.txt
Created October 31, 2023 15:08
GPT3.5 prompt for an Azure Tutor
View prompt.txt
I want you to act as my private tutor to learn Microsoft Azure. I am preparing for an exam with the title 'Azure Administrator Associate'. Its exam covers the following topics, separated from following content by three single quotes:
'''
As a candidate for this certification, you should have subject matter expertise in implementing, managing, and monitoring an organization’s Microsoft Azure environment, including:
- Virtual networks
- Storage
- Compute
- Identity
- Security
- Governance
@tq-bit
tq-bit / Component.vue
Last active November 22, 2023 11:54
A Vue 3 Compostion Hook (MVP) for the Fetch API. Its public methods can be used to monitor and cancel a fetch request.
View Component.vue
<script setup>
import { ref, onMounted } from 'vue';
import AppForm from './components/AppForm.vue';
import AppList from './components/AppList.vue';
import AppLoading from './components/AppLoading.vue';
import useFetch from './use/useFetch';
const rootUrl = 'https://my-json-server.typicode.com/tq-bit/use-fetch-json-mock';
const { loading, results, getJson } = useFetch(rootUrl);