Optimize images (PNG → AVIF)
Before Width: | Height: | Size: 536 KiB After Width: | Height: | Size: 536 KiB |
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
Before Width: | Height: | Size: 738 KiB After Width: | Height: | Size: 738 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 96 KiB |
After Width: | Height: | Size: 139 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 18 KiB |
|
@ -1,6 +1,6 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import sky from '~/assets/images/textures/sky.png'
|
import sky from 'assets/images/textures/sky.png'
|
||||||
import particles from '~/assets/images/textures/particles.png'
|
import particles from 'assets/images/textures/particles.png'
|
||||||
|
|
||||||
const { $local } = useNuxtApp()
|
const { $local } = useNuxtApp()
|
||||||
const config = useAppConfig()
|
const config = useAppConfig()
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
import { storeToRefs } from 'pinia'
|
import { storeToRefs } from 'pinia'
|
||||||
import { usePageStore } from '~/stores/pages'
|
import { usePageStore } from '~/stores/pages'
|
||||||
|
|
||||||
import logo from '~/assets/images/logo.gif'
|
import logo from 'assets/images/logo.avif'
|
||||||
|
|
||||||
const pageStore = usePageStore()
|
const pageStore = usePageStore()
|
||||||
const { pages } = storeToRefs(pageStore)
|
const { pages } = storeToRefs(pageStore)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import cogIcon from '~/assets/images/icons/cog.png'
|
import cogIcon from 'assets/images/icons/cog.avif'
|
||||||
import pearlIcon from '~/assets/images/icons/pearl.gif'
|
import pearlIcon from 'assets/images/icons/pearl.avif'
|
||||||
|
|
||||||
const config = useAppConfig()
|
const config = useAppConfig()
|
||||||
const { animate } = storeToRefs(usePageStore())
|
const { animate } = storeToRefs(usePageStore())
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { PropType } from 'vue'
|
import type { PropType } from 'vue'
|
||||||
|
|
||||||
import warningIcon from '~/assets/images/icons/accent/warning.png'
|
import warningIcon from 'assets/images/icons/accent/warning.avif'
|
||||||
import errorIcon from '~/assets/images/icons/accent/error.png'
|
import errorIcon from 'assets/images/icons/accent/error.avif'
|
||||||
import infoIcon from '~/assets/images/icons/accent/info.png'
|
import infoIcon from 'assets/images/icons/accent/info.avif'
|
||||||
import helpIcon from '~/assets/images/icons/accent/help.png'
|
import helpIcon from 'assets/images/icons/accent/help.avif'
|
||||||
import checkIcon from '~/assets/images/icons/accent/checkmark.png'
|
import checkIcon from 'assets/images/icons/accent/checkmark.avif'
|
||||||
import ideaIcon from '~/assets/images/icons/accent/idea.png'
|
import ideaIcon from 'assets/images/icons/accent/idea.avif'
|
||||||
|
|
||||||
type IconOptions = 'warning' | 'error' | 'info' | 'help' | 'checkmark' | 'idea'
|
type IconOptions = 'warning' | 'error' | 'info' | 'help' | 'checkmark' | 'idea'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,3 @@
|
||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
index:
|
index:
|
||||||
container_name: frontend-index
|
container_name: frontend-index
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { formatDate } from 'date-fns'
|
import { formatDate } from 'date-fns'
|
||||||
import chestAnimation from '~/assets/images/chest.webp'
|
import chestAnimation from 'assets/images/chest.avif'
|
||||||
import { render } from 'vue'
|
import { render } from 'vue'
|
||||||
import { CodeControls } from '#components'
|
import { CodeControls } from '#components'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import aboutIcon from '~/assets/images/icons/accent/info.png'
|
import aboutIcon from 'assets/images/icons/accent/info.avif'
|
||||||
import projectIcon from '~/assets/images/icons/defrag.png'
|
import projectIcon from 'assets/images/icons/defrag.avif'
|
||||||
import socialIcon from '~/assets/images/icons/user.png'
|
import socialIcon from 'assets/images/icons/user.avif'
|
||||||
import blogIcon from '~/assets/images/icons/book.png'
|
import blogIcon from 'assets/images/icons/book.avif'
|
||||||
|
|
||||||
export const usePageStore = defineStore('page', () => {
|
export const usePageStore = defineStore('page', () => {
|
||||||
const title: string = 'Enderman'
|
const title: string = 'Enderman'
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
/** @type {import("stylelint").Config} */
|
/** @type {import("stylelint").Config} */
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
defaultSeverity: 'warning',
|
defaultSeverity: 'warning',
|
||||||
formatter: 'compact',
|
formatter: 'compact',
|
||||||
|
|