Compare commits

...

3 commits

27 changed files with 41 additions and 6785 deletions

View file

@ -1,8 +0,0 @@
[tool.commitizen]
name = "cz_conventional_commits"
tag_format = "$version"
version_scheme = "semver"
version_provider = "npm"
update_changelog_on_bump = true
major_version_zero = true
changelog_incremental = true

View file

@ -1,30 +0,0 @@
module.exports = {
env: {
browser: true,
es2021: true,
},
extends: [
'standard-with-typescript',
'plugin:react/recommended',
'plugin:cypress/recommended',
'prettier',
],
overrides: [
{
env: {
node: true,
},
files: ['.eslintrc.{js,cjs}'],
parserOptions: {
sourceType: 'script',
},
},
],
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
project: ['./tsconfig.json'],
},
plugins: ['react', 'cypress'],
rules: {},
};

View file

@ -1,16 +0,0 @@
module.exports = {
tabWidth: 2,
singleQuote: true,
endOfLine: 'auto',
'eol-last': 2,
trailingComma: 'all',
plugins: [require.resolve("prettier-plugin-astro")],
overrides: [
{
files: "*.astro",
options: {
parser: "astro",
},
},
],
};

View file

@ -1,2 +0,0 @@
[tools]
node = "20"

View file

@ -1,4 +0,0 @@
{
"recommendations": ["astro-build.astro-vscode"],
"unwantedRecommendations": []
}

11
.vscode/launch.json vendored
View file

@ -1,11 +0,0 @@
{
"version": "0.2.0",
"configurations": [
{
"command": "./node_modules/.bin/astro dev",
"name": "Development server",
"request": "launch",
"type": "node-terminal"
}
]
}

View file

@ -1,30 +0,0 @@
when:
- branch: main
steps:
build-and-publish:
when:
branch: main
image: node:20-alpine
secrets:
- codeberg_ssh_key
commands:
- apk add git openssh-client
- git config --global user.email "woodpecker@bot.net"
- git config --global user.name "woodpecker-bot"
- git remote add codeberg-ssh git@codeberg.org:aleidk/personal-page.git
- mkdir -p $HOME/.ssh
- ssh-keyscan -t rsa codeberg.org >> $HOME/.ssh/known_hosts
- echo "$CODEBERG_SSH_KEY" > $HOME/.ssh/id_rsa
- chmod 0600 $HOME/.ssh/id_rsa
- corepack enable
- corepack prepare pnpm@latest --activate
- pnpm install
- pnpm build
- |
cat >dist/.domains <<EOL
blog.panconpalta.win
personal-page.aleidk.codeberg.page
pages.personal-page.aleidk.codeberg.page
EOL
- pnpm exec gh-pages --dist dist --branch pages --dotfiles --remote codeberg-ssh

View file

@ -1,5 +0,0 @@
/** @type {import('astro-i18next').AstroI18nextConfig} */
export default {
defaultLocale: 'en',
locales: ['en', 'es'],
};

View file

@ -1,14 +0,0 @@
import { defineConfig } from 'astro/config';
import react from '@astrojs/react';
import astroI18next from 'astro-i18next';
// https://astro.build/config
export default defineConfig({
prefetch: true,
integrations: [react(), astroI18next()],
experimental: {},
redirects: {
'/projects': '/projects/1',
},
});

24
cog.toml Normal file
View file

@ -0,0 +1,24 @@
from_latest_tag = true
ignore_merge_commits = false
disable_changelog = false
disable_bump_commit = false
generate_mono_repository_global_tag = true
branch_whitelist = []
skip_ci = "[skip ci]"
skip_untracked = false
pre_bump_hooks = []
post_bump_hooks = []
pre_package_bump_hooks = []
post_package_bump_hooks = []
[git_hooks]
[commit_types]
[changelog]
path = "CHANGELOG.md"
authors = []
[bump_profiles]
[packages]

16
config.toml Normal file
View file

@ -0,0 +1,16 @@
# The URL the site will be built for
base_url = "https://alecodes.page"
# Whether to automatically compile all Sass files in the sass directory
compile_sass = true
# Whether to build a search index to be used later on by a JavaScript library
build_search_index = true
[markdown]
# Whether to do syntax highlighting
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
highlight_code = true
[extra]
# Put all your custom variables here

View file

@ -1,10 +0,0 @@
import { defineConfig } from 'cypress';
export default defineConfig({
e2e: {
baseUrl: 'http://localhost:3000',
setupNodeEvents(on, config) {
// implement node event listeners here
},
},
});

View file

@ -1,25 +0,0 @@
describe('The Home Page', () => {
beforeEach(() => {
cy.visit('/');
});
it('Successfully load', () => {
cy.get('h1')
.should('have.length', 1)
.should('have.text', 'Alexander Navarro');
});
it('Card components have content', () => {
cy.get('.card')
.should('have.length', 3)
.each(($card) => {
cy.wrap($card)
.find('li')
.should(($li) => expect($li).to.have.lengthOf.at.most(3))
.find('a')
.should('have.attr', 'href');
cy.wrap($card).contains('See more...');
});
});
});

View file

@ -1,5 +0,0 @@
{
"name": "Using fixtures to represent data",
"email": "hello@cypress.io",
"body": "Fixtures are a great way to mock data for responses to routes"
}

View file

@ -1,37 +0,0 @@
/// <reference types="cypress" />
// ***********************************************
// This example commands.ts shows you how to
// create various custom commands and overwrite
// existing commands.
//
// For more comprehensive examples of custom
// commands please read more here:
// https://on.cypress.io/custom-commands
// ***********************************************
//
//
// -- This is a parent command --
// Cypress.Commands.add('login', (email, password) => { ... })
//
//
// -- This is a child command --
// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... })
//
//
// -- This is a dual command --
// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... })
//
//
// -- This will overwrite an existing command --
// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... })
//
// declare global {
// namespace Cypress {
// interface Chainable {
// login(email: string, password: string): Chainable<void>
// drag(subject: string, options?: Partial<TypeOptions>): Chainable<Element>
// dismiss(subject: string, options?: Partial<TypeOptions>): Chainable<Element>
// visit(originalFn: CommandOriginalFn, url: string, options: Partial<VisitOptions>): Chainable<Element>
// }
// }
// }

View file

@ -1,20 +0,0 @@
// ***********************************************************
// This example support/e2e.ts is processed and
// loaded automatically before your test files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.
//
// You can change the location of this file or turn off
// automatically serving support files with the
// 'supportFile' configuration option.
//
// You can read more here:
// https://on.cypress.io/configuration
// ***********************************************************
// Import commands.js using ES2015 syntax:
import './commands'
// Alternatively you can use CommonJS syntax:
// require('./commands')

View file

@ -1,12 +0,0 @@
#!/bin/env bash
pnpm run build
## Add domain to codeberg pages
cat >dist/.domains <<EOL
blog.panconpalta.win
personal-page.aleidk.codeberg.page
pages.personal-page.aleidk.codeberg.page
EOL
pnpm exec gh-pages --dist dist --branch pages --dotfiles

View file

@ -2,42 +2,10 @@
"name": "personal-page",
"type": "module",
"version": "0.3.0",
"scripts": {
"dev": "astro dev --port 3000",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview",
"astro": "astro",
"localize": "astro-i18next generate"
},
"scripts": { },
"dependencies": {
"@astrojs/react": "^3.0.7",
"@astrojs/ts-plugin": "^1.3.1",
"@types/react": "^18.0.21",
"@types/react-dom": "^18.0.6",
"astro": "^4.0.6",
"astro-i18next": "1.0.0-beta.21",
"i18next": "^22.5.1",
"i18next-fs-backend": "^2.3.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"sass": "^1.71.1",
"sharp": "^0.32.6"
},
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^5.62.0",
"cypress": "^13.6.1",
"eslint": "^8.53.0",
"eslint-config-prettier": "^8.10.0",
"eslint-config-standard-with-typescript": "^35.0.0",
"eslint-plugin-cypress": "^2.15.1",
"eslint-plugin-import": "^2.29.0",
"eslint-plugin-n": "^15.7.0",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-react": "^7.33.2",
"gh-pages": "^5.0.0",
"prettier": "^2.8.8",
"prettier-plugin-astro": "^0.10.0",
"typescript": "^5.2.2"
}
}

6406
pnpm-lock.yaml generated

File diff suppressed because it is too large Load diff

View file

@ -1,9 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
<style>
path { fill: #000; }
@media (prefers-color-scheme: dark) {
path { fill: #FFF; }
}
</style>
</svg>

Before

Width:  |  Height:  |  Size: 749 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

View file

@ -1,32 +0,0 @@
Curious and self-taught by nature, my history with computing began in the late
2000s, tinkering with the family PC (sometimes with disastrous results). This
led me to always try to answer the "how does it work...?", "how can I do...?",
or "how can I fix...?", leading me to self-investigation and
exploration in various mediums that provide me with the knowledge to
**fix**, **create**, and **build** projects.
The area I like the most is **web programming** as a **fullstack
developer**, but it is not the only thing I can do, as I'm also good in creating
**terminal applications** and **scripts**. I can work to solve any problem in a
conventional way or invent new solutions.
My love for video games has played an important role in my life, not only in
enjoying playing them, but going beyond to understand how they work
under the hood in their different areas: game mechanics, narratives, level
design, music, art, among others. I find it fascinating to see how developers
overcome difficulties and invent innovative solutions to provide the best
experience for the players.
My philosophy is based on **always trying to improve**, though studies,
research and updates that have provided me with knowledge of various
technologies, such as: Javascript, Python, Rust, Lua, React, SASS, Bootstrap,
Flask, ExpressJS, SQL, NoSQL, among others. Because of this, I am always in an
infinite cycle of improvement and learning.
My love for computer science has led me to explore and investigate other areas
and interests, of which I can mention:
- Being an enthusiast of **Linux** operating systems, using it both on my personal computers and on servers.
- Special interest in maintaining my development environment **personalized and updated**, allowing me to develop in a comfortable, ergonomic and effective way.
- Being part of the **selfhost** community, managing a variety of applications for personal use on **small personal servers**.
- Being **passionate about video games**.

View file

@ -1,4 +0,0 @@
I'm a software developer from Chile.
<br />
I like to code, tinker and build things!

View file

@ -1,17 +0,0 @@
{
"titles": {
"featuredWork": "Featured Work",
"whatIveBeenUpTo": "What I've been up to...",
"whoAmI": "Who am I?",
"contact": "Contact"
},
"home": {
"moreProjects": "View more projects",
"viewCurriculum": "View full curriculum"
},
"misc": {
"seeMore": "See more..."
},
"blog": "blog",
"games": "games"
}

View file

@ -1,34 +0,0 @@
Curioso y autodidacta por naturaleza, mi historia con la computación parte a
finales de los 2000, jugueteando con la PC familiar (a veces con resultados
desastrosos). Esto me llevó a siempre tratar de responder el _"¿cómo
funciona…?"_, _"¿cómo puedo hacer…?"_, o _¿cómo puedo solucionar…?_, llevándome
a la auto-investigación y exploración en diversos medios que me entreguen el
conocimiento para poder **resolver**, **crear** y **construir** proyectos.
Lo que más me apasiona es la **programación web** como un **desarrollador
fullstack**, pero no es lo único que puedo realizar, ya que también me
desenvuelvo bien en la creación de **aplicaciones de terminal** y **scripts**.
Puedo trabajar buscando resolver cualquier problema de forma convencional o
inventar soluciones nuevas.
Mi amor por los videojuegos ha jugado un rol importante en mi, lo cuál no se
refiere tan solo disfrutar jugarlos, sino ir más allá, para lograr ver como
funcionan por dentro en sus distintas disciplinas: mecánicas de juego,
narrativas, diseño de niveles, música, arte, entre otros. Encuentro fascinate
ver como los desarrolladores logran sortear dificultades he inventar soluciones
innovadoras para lograr dar la mejor experiencia al jugador.
Mi filosofía se basa en **siempre intentar mejorar**, realizando
estudios, investigaciones y actualizaciones que me han proporcionado el
conocimiento de diversas tecnologías, tales como: Javascript, Python, Rust,
Lua, React, SASS, Bootstrap, Flask, ExpressJS, SQL, NoSQL, entre
otros. Debido a esto siempre estoy en un infinito ciclo de mejora y
aprendizaje.
Mi amor por la informática me ha llevado a extender he investigar otras areas e
intereses, de los cuales puedo nombrar:
- Ser un entusiasta de los sistemas operativos **linux**, usándolo tanto en mis computadores personales como en servidores.
- Interés especial en mantener mi **ambiente de desarrollo personalizado y actualizado**, permitiendome desarrollar de una manera cómoda, ergonómica y eficaz.
- Ser parte de la comunidad **selfhost**, administrando varias aplicaciones para uso personal en **pequeños servidores propios**.
- Ser **apasionado de los videojuegos**.

View file

@ -1,4 +0,0 @@
Soy un desarrollador de software de Chile.
<br />
Me gusta codear, probar y construír cosas!

View file

@ -1,17 +0,0 @@
{
"titles": {
"featuredWork": "Trabajo Destacado",
"whatIveBeenUpTo": "Que he estado haciendo...",
"whoAmI": "¿Quién soy?",
"contact": "Contacto"
},
"home": {
"moreProjects": "Ver más proyectos",
"viewCurriculum": "Ver curriculum completo"
},
"misc": {
"seeMore": "Ver más..."
},
"blog": "blog",
"games": "juegos"
}