diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..8492eda --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,25 @@ +/** @type {import("eslint").Linter.Config} */ +module.exports = { + plugins: ['jsx-a11y'], + extends: ['plugin:astro/recommended', 'plugin:jsx-a11y/recommended'], + parser: '@typescript-eslint/parser', + parserOptions: { + tsconfigRootDir: __dirname, + sourceType: 'module', + ecmaVersion: 'latest' + }, + overrides: [ + { + files: ['*.astro'], + parser: 'astro-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser', + extraFileExtensions: ['.astro'] + }, + rules: { + // override/add rules settings here, such as: + // "astro/no-set-html-directive": "error" + } + } + ] +} diff --git a/.husky/pre-push b/.husky/pre-push new file mode 100755 index 0000000..ba03d19 --- /dev/null +++ b/.husky/pre-push @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +bun lint diff --git a/.vscode/settings.json b/.vscode/settings.json index 95e375d..bd98135 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -7,5 +7,25 @@ }, "yaml.schemas": { "https://json.schemastore.org/github-workflow.json": "file:///home/jamerrq/dev/astro/jamerrq.dev/.github/workflows/deploy.yml" - } + }, + "eslint.validate": [ + "javascript", + "javascriptreact", + "astro", + "typescript", + "typescriptreact" + ], + "editor.formatOnSave": true, + "cSpell.words": [ + "astro" + ], + "cSpell.ignorePaths": [ + "package-lock.json", + "node_modules", + "vscode-extension", + ".git/objects", + ".vscode", + ".vscode-insiders", + "package.json" + ] } diff --git a/bun.lockb b/bun.lockb index d1f3b17..8d1a565 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 236859f..1468f8c 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,18 @@ "build": "astro check && astro build", "preview": "deno run --allow-net --allow-read --allow-env ./dist/server/entry.mjs", "astro": "astro", - "lint": "eslint --ext .js,.astro src" + "lint": "prettier --write \"**/*.{js,jsx,ts,tsx,md,mdx,astro}\" && eslint --fix \"src/**/*.{js,ts,jsx,tsx,astro}\"" }, "type": "module", "devDependencies": { + "@typescript-eslint/parser": "^6.17.0", + "eslint": "^8.56.0", + "eslint-plugin-astro": "^0.31.0", + "eslint-plugin-jsx-a11y": "^6.8.0", + "husky": "^8.0.3", + "prettier": "^3.1.1", + "prettier-config-standard": "^7.0.0", + "prettier-plugin-astro": "^0.12.3", "sass": "^1.69.6", "tailwindcss-debug-screens": "^2.2.1" } diff --git a/prettier.config.cjs b/prettier.config.cjs new file mode 100644 index 0000000..875f451 --- /dev/null +++ b/prettier.config.cjs @@ -0,0 +1,14 @@ +/** @type {import("prettier").Config} */ +module.exports = { + // i am just using the standard config, change if you need something else + ...require('prettier-config-standard'), + plugins: [require.resolve('prettier-plugin-astro')], + overrides: [ + { + files: '*.astro', + options: { + parser: 'astro' + } + } + ] +} diff --git a/public/fonts/FiraMonoNerd/readme.md b/public/fonts/FiraMonoNerd/readme.md index 9f2e700..5a5f195 100644 --- a/public/fonts/FiraMonoNerd/readme.md +++ b/public/fonts/FiraMonoNerd/readme.md @@ -1,8 +1,8 @@ - # Nerd Fonts This is an archived font from a Nerd Fonts release. For more information see: -* https://github.com/ryanoasis/nerd-fonts/ -* https://github.com/ryanoasis/nerd-fonts/releases/latest/ + +- https://github.com/ryanoasis/nerd-fonts/ +- https://github.com/ryanoasis/nerd-fonts/releases/latest/ diff --git a/src/components/about-me-card.astro b/src/components/about-me-card.astro index a32ffe5..11c9989 100644 --- a/src/components/about-me-card.astro +++ b/src/components/about-me-card.astro @@ -28,45 +28,54 @@ const ABOUT_ME_STYLES = [ '[&>p]:font-fira', '[&>p]:text-base', 'text-slate-900', - 'dark:text-slate-300', + 'dark:text-slate-300' ].join(' ') --- -
+

About Me

-
+
-

-

-  -

+

+

My name is Jamer José, I'm a Math Engineer from - + EAFIT University .

-

- 󰜐 -

+

󰜐

Currently working as part time Backend Developer at - + Dium .

-

- 󰮮 -

- Big fan of the open source and the web, as well as the great possibilities they offer. +

󰮮

+ Big fan of the open source and the web, as well as the great possibilities + they offer.

-

-  -

+

My goal is to build quality software that is secure and scalable.

- +
diff --git a/src/components/bento.astro b/src/components/bento.astro index 2e2391d..681e75b 100644 --- a/src/components/bento.astro +++ b/src/components/bento.astro @@ -1,32 +1,32 @@ --- -import AboutMe from './about-me-card.astro'; -import Title from './title.astro'; -import Experience from './experience.astro'; -import Buttons from './buttons.astro'; -import TechStack from './tech-stack.astro'; -import Featured from './featured.astro'; -import Blog from './blog.astro'; -import Socials from './socials.astro'; +import AboutMe from './about-me-card.astro' +import Title from './title.astro' +import Experience from './experience.astro' +import Buttons from './buttons.astro' +import TechStack from './tech-stack.astro' +import Featured from './featured.astro' +import Blog from './blog.astro' +import Socials from './socials.astro' const BENTO_STYLES = [ - 'bg-[#1b383c]', + 'bg-[#1b383c]', 'grid', - 'items-center', - 'justify-center', - 'w-[95dvw]', - 'h-[95dvh]', - 'content-center', - 'rounded-sm', - 'shadow-xl', - 'border-2', + 'items-center', + 'justify-center', + 'w-[95dvw]', + 'h-[95dvh]', + 'content-center', + 'rounded-sm', + 'shadow-xl', + 'border-2', 'grid-cols-6', 'grid-rows-6', 'gap-3', - 'p-3', -].join(' '); + 'p-3' +].join(' ') --- -
+
diff --git a/src/components/blog.astro b/src/components/blog.astro index 1bd52c7..27765aa 100644 --- a/src/components/blog.astro +++ b/src/components/blog.astro @@ -25,11 +25,11 @@ const BLOG_STYLES = [ 'dark:text-teal-300', 'hover:scale-[1.02]', 'hover:duration-200', - 'hover:ease-in-out', -].join(' '); + 'hover:ease-in-out' +].join(' ') --- - +

Blog

-

+

diff --git a/src/components/buttons.astro b/src/components/buttons.astro index 1bf022c..9d85cf2 100644 --- a/src/components/buttons.astro +++ b/src/components/buttons.astro @@ -22,112 +22,123 @@ const BUTTONS_STYLES = [ 'dark:bg-teal-900', 'dark:text-teal-100', 'bg-teal-400', - '[&>*]:font-fira', + '[&>*]:font-fira' // '[&>*]:hover:text-teal-300', -].join(' '); +].join(' ') const BUTTON_STYLES = [ 'dark:hover:text-teal-300', - 'hover:text-teal-100', + 'hover:text-teal-100' // 'hover:scale-110', -].join(' '); +].join(' ') --- -
- - - - - +
diff --git a/src/components/card.astro b/src/components/card.astro index 7298a12..c444fe8 100644 --- a/src/components/card.astro +++ b/src/components/card.astro @@ -1,61 +1,61 @@ --- interface Props { - title: string; - body: string; - href: string; + title: string + body: string + href: string } const { href, title, body } = Astro.props --- - diff --git a/src/components/experience.astro b/src/components/experience.astro index 623c2c6..ac054cf 100644 --- a/src/components/experience.astro +++ b/src/components/experience.astro @@ -31,109 +31,183 @@ const EXPERIENCE_STYLES = [ '[&>div>ul>li]:dark:bg-red-900', '[&>div>ul>li]:dark:text-red-200', '[&>div>ul>li>a]:bg-amber-700', - '[&>div>ul>li>a]:dark:bg-amber-700', + '[&>div>ul>li>a]:dark:bg-amber-700' ].join(' ') ---
- -
-

Working on

-

+
+
+

Working on

+

-
-
    -
  • - +
    + diff --git a/src/components/featured.astro b/src/components/featured.astro index fbbbfc6..b8eaf0c 100644 --- a/src/components/featured.astro +++ b/src/components/featured.astro @@ -1,5 +1,5 @@ --- -import NerdIcon from "./nerd-icon.astro"; +import NerdIcon from './nerd-icon.astro' const FEATURED_STYLES = [ 'col-span-1', 'row-span-2', @@ -26,22 +26,18 @@ const FEATURED_STYLES = [ 'dark:text-blue-400', 'hover:scale-[1.02]', 'hover:duration-200', - 'hover:ease-in-out', -].join(' '); + 'hover:ease-in-out' +].join(' ') --- - -
    + +

    Featured

    - - 󰂺 - + 󰂺

    &

    -
    - -  - +
    +

    Projects

    diff --git a/src/components/nerd-icon.astro b/src/components/nerd-icon.astro index b9b2b5a..b7d928f 100644 --- a/src/components/nerd-icon.astro +++ b/src/components/nerd-icon.astro @@ -1,7 +1,8 @@ --- -const { props="" } = Astro.props +const { props = '' } = Astro.props +const NERD_ICON_STYLE = ['font-fira', 'font-thin', props].join(' ') --- -

    - +

    +

    diff --git a/src/components/socials.astro b/src/components/socials.astro index 0199c6c..9ce42a5 100644 --- a/src/components/socials.astro +++ b/src/components/socials.astro @@ -30,28 +30,44 @@ const SOCIALS_STYLES: string = [ 'grid', 'grid-rows-2', 'grid-cols-1' -].join(' '); +].join(' ') --- -
    -
    -

    -

    - Contact -

    -

    +
    +
    +

    +

    Contact

    +

    -
    + diff --git a/src/components/spinner.astro b/src/components/spinner.astro index 2e785d2..2615ade 100644 --- a/src/components/spinner.astro +++ b/src/components/spinner.astro @@ -1,8 +1,17 @@ - -
    -
    + - Loading... + Loading...
    diff --git a/src/components/tech-stack.astro b/src/components/tech-stack.astro index 8ed9da6..aeb4e5b 100644 --- a/src/components/tech-stack.astro +++ b/src/components/tech-stack.astro @@ -29,72 +29,107 @@ const TECH_STACK_STYLES = [ ].join(' ') --- - -
    -

    - Tech Stack -

    -

    -  -

    +
    +
    +

    Tech Stack

    +

    -
    -
    -

    - Backend -

    -

    - 󰒍 -

    +
    +
    +

    Backend

    +

    󰒍

    -
    +
    - node js + node js - express js + express js - postgresql + postgresql - django + django
    -
    -

    - Languages -

    -

    -  -

    +
    +

    Languages

    +

    -
    +
    - typescript + typescript - javascript + javascript - python + python - c# + c#
    -
    -

    - Tools -

    -

    - 󱁤 -

    +
    +

    Tools

    +

    󱁤

    -
    +
    - git + git - vscode + vscode - docker + docker - linux + linux
    -

    - Among others... -

    +

    Among others...

    diff --git a/src/components/tech-stack/about.astro b/src/components/tech-stack/about.astro index 6f2c4a4..06b7d1c 100644 --- a/src/components/tech-stack/about.astro +++ b/src/components/tech-stack/about.astro @@ -28,20 +28,21 @@ const ABOUT_ME_STYLES = [ '[&>p]:font-fira', '[&>p]:text-base', 'text-slate-900', - 'dark:text-slate-300', + 'dark:text-slate-300' ].join(' ') ---

    About 

    -
    -

    - "If I have seen further [than others], it is by standing on the shoulders of giants" -

    -

    - - Isaac Newton +

    +

    + "If I have seen further [than others], it is by standing on the shoulders + of giants"

    -

    +

    - Isaac Newton

    +

    These are the tools I (love to) am familiar with in my day-to-day work:

    diff --git a/src/components/tech-stack/backend.astro b/src/components/tech-stack/backend.astro index 5c92788..ac9e763 100644 --- a/src/components/tech-stack/backend.astro +++ b/src/components/tech-stack/backend.astro @@ -26,12 +26,12 @@ const BACKEND_STYLES = [ // 'hover:transition-all', 'flex', 'flex-col', - 'p-1', + 'p-1' ].join(' ') ---
    - -
    -

    Web Development

    -

    󰜫

    -
    -
    diff --git a/src/components/tech-stack/bento.astro b/src/components/tech-stack/bento.astro index 64a4ec9..dc84702 100644 --- a/src/components/tech-stack/bento.astro +++ b/src/components/tech-stack/bento.astro @@ -1,32 +1,32 @@ --- -import Title from "./title.astro"; -import About from './about.astro'; -import Backend from './backend.astro'; -import Buttons from '../buttons.astro'; +import Title from './title.astro' +import About from './about.astro' +import Backend from './backend.astro' +import Buttons from '../buttons.astro' import DevTools from './dev-tools.astro' -import Os from './os.astro'; -import Testing from './testing.astro'; +import Os from './os.astro' +import Testing from './testing.astro' import Languages from './languages.astro' const BENTO_STYLES = [ - 'bg-[#1b383c]', + 'bg-[#1b383c]', 'grid', - 'items-center', - 'justify-center', - 'w-[95dvw]', - 'h-[95dvh]', - 'content-center', - 'rounded-sm', - 'shadow-xl', - 'border-2', + 'items-center', + 'justify-center', + 'w-[95dvw]', + 'h-[95dvh]', + 'content-center', + 'rounded-sm', + 'shadow-xl', + 'border-2', 'grid-cols-6', 'grid-rows-6', 'gap-3', - 'p-3', -].join(' '); + 'p-3' +].join(' ') --- -
    +
    diff --git a/src/components/tech-stack/dev-tools.astro b/src/components/tech-stack/dev-tools.astro index d97a98d..cfe5051 100644 --- a/src/components/tech-stack/dev-tools.astro +++ b/src/components/tech-stack/dev-tools.astro @@ -30,45 +30,64 @@ const DEV_TOOLS_STYLES = [ ].join(' ') --- -
    -
    -

    Dev Tools

    -

    󰄛

    +
    +
    +

    Dev Tools

    +

    󰄛

    -
      +
      • -
        +

        IDE

        -

        󰨞

        +

        󰨞

        - - VS Code + + VS Code
      • -
        +

        API

        -

        +

        - - Postman + + Postman
      • -
        +

        Linter

        -

        +

        -
        +
        - - EsLint + + EsLint - - Git + + Git
      • -
      • -
        +
      • +

        Others

        -

        +

        -
        +
        - - Markdown + + Markdown - - LaTeX + + LaTeX - - Notion + + Notion - - ZSH + + ZSH
      • diff --git a/src/components/tech-stack/languages.astro b/src/components/tech-stack/languages.astro index 14d13fa..584dd10 100644 --- a/src/components/tech-stack/languages.astro +++ b/src/components/tech-stack/languages.astro @@ -30,33 +30,63 @@ const SOCIALS_STYLES: string = [ 'grid', 'grid-rows-2', 'grid-cols-1' -].join(' '); +].join(' ') --- -
        -
        -

        Languages

        -

        󰌝

        +
        +
        +

        Languages

        +

        󰌝

        -
        + diff --git a/src/components/tech-stack/os.astro b/src/components/tech-stack/os.astro index 2149f34..e0d3a53 100644 --- a/src/components/tech-stack/os.astro +++ b/src/components/tech-stack/os.astro @@ -22,19 +22,19 @@ const OS_STYLES = [ 'dark:border-blue-300', 'border-2', 'dark:bg-blue-900', - 'dark:text-blue-400', + 'dark:text-blue-400' // 'hover:scale-[1.02]', // 'hover:duration-200', // 'hover:ease-in-out', -].join(' '); +].join(' ') --- -
        -
        +
        +

        OS

        -

        +

        -

        Ubuntu 20.04.6 LTS

        +

        Ubuntu 20.04.6 LTS

        diff --git a/src/components/tech-stack/testing.astro b/src/components/tech-stack/testing.astro index 161a217..a142dfc 100644 --- a/src/components/tech-stack/testing.astro +++ b/src/components/tech-stack/testing.astro @@ -22,34 +22,52 @@ const OS_STYLES = [ 'dark:border-red-300', 'border-2', 'dark:bg-red-900', - 'dark:text-red-400', + 'dark:text-red-400' // 'hover:scale-[1.02]', // 'hover:duration-200', // 'hover:ease-in-out', -].join(' '); +].join(' ') --- -
        -
        + diff --git a/src/components/tech-stack/title.astro b/src/components/tech-stack/title.astro index 337166e..14af88c 100644 --- a/src/components/tech-stack/title.astro +++ b/src/components/tech-stack/title.astro @@ -19,11 +19,7 @@ const TITLE_STYLES: string = [ ].join(' ') --- - -

        - Tech Stack  -

        -

        - Artists have brushes. I have these. -

        +
        +

        Tech Stack 

        +

        Artists have brushes. I have these.

        diff --git a/src/components/title.astro b/src/components/title.astro index d81f7e3..22338d0 100644 --- a/src/components/title.astro +++ b/src/components/title.astro @@ -1,11 +1,11 @@ --- -import Typed from './typed.astro'; +import Typed from './typed.astro' --- -
        -

        - @jamerrq.dev -

        +
        +

        @jamerrq.dev

        @@ -13,22 +13,22 @@ import Typed from './typed.astro';
        diff --git a/src/components/typed.astro b/src/components/typed.astro index f51a783..40b5e9a 100644 --- a/src/components/typed.astro +++ b/src/components/typed.astro @@ -1,1927 +1,2308 @@ -
        - +
        +
        diff --git a/src/layouts/layout.astro b/src/layouts/layout.astro index 99df6a6..c25fecf 100644 --- a/src/layouts/layout.astro +++ b/src/layouts/layout.astro @@ -1,56 +1,56 @@ --- interface Props { - title: string; + title: string } -const { title } = Astro.props; -import '@fontsource/merriweather'; -import '../index.css'; +const { title } = Astro.props +import '@fontsource/merriweather' +import '../index.css' // import { ViewTransitions } from 'astro:transitions' --- - - - - - - - - - {title} - - - - - + + + + + + + + + {title} + + + + + diff --git a/src/pages/404.astro b/src/pages/404.astro index 7f0a908..a7e078b 100644 --- a/src/pages/404.astro +++ b/src/pages/404.astro @@ -1,55 +1,57 @@ --- -import Layout from "../layouts/layout.astro"; +import Layout from '../layouts/layout.astro' --- - -
        -
        + +
        +

        Page Not Found!

        -

        Sorry, the resource you are looking for does not exist (yet?).

        -

        Please check the URL and try again.

        - - Go Home - +

        + Sorry, the resource you are looking for does not exist (yet?). +

        +

        Please check the URL and try again.

        + Go Home
        diff --git a/src/pages/index.astro b/src/pages/index.astro index c446c31..86d2dc1 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -4,7 +4,10 @@ import Bento from '../components/bento.astro' --- -
        - -
        +
        + +
        diff --git a/src/pages/tech-stack.astro b/src/pages/tech-stack.astro index d1c6047..387bc50 100644 --- a/src/pages/tech-stack.astro +++ b/src/pages/tech-stack.astro @@ -4,7 +4,10 @@ import TechStackBento from '../components/tech-stack/bento.astro' --- -
        - -
        +
        + +