This repository contains the source code for my personal portfolio and blog: asierortiz.com.
My personal website showcases my work, projects, and technical blog.
It features:
- Hero Section: Brief introduction and call to action.
- Background: Overview of my experience, skills, and technologies that I use.
- Projects: Selected portfolio projects with detailed descriptions and repository links.
- Blog: A space for articles about web development, machine learning, and more.
- Newsletter Subscription: Visitors can subscribe via Buttondown.
- Contact: Includes links to my email and social media profiles for easy connection.
- Astro
- Vue 3 (for interactive islands)
- Fuse.js (for full-text fuzzy search within the blog)
- Tailwind CSS
- TypeScript
- Netlify (Continuous Deployment is set up through GitHub integration)
This project uses GitHub Actions to ensure code quality and automate deployment:
- Semantic Release: Automatically determines the next version, updates the changelog, tags the release, and publishes it to GitHub based on commit messages.
- Validate RSS Feed: Checks that the generated RSS feed (
/feed.xml
) is valid after each push. - Check Broken Links: Scans the site for broken links after each build to ensure reliability.
- Continuous Deployment: If all validations pass, the site is automatically deployed to Netlify.
Clone and Run Locally:
git clone https://github.com/yourusername/asierortiz.com.git
cd asierortiz.com
npm install
npm run dev
Command | Action |
---|---|
npm install |
Install dependencies |
npm run dev |
Start local development server at localhost:3000 |
npm run build |
Build the production site into ./dist/ |
npm run preview |
Preview the production build locally |
npm run format |
Format code using Prettier |
npm run astro ... |
Run CLI commands like astro add , astro check |
npm run astro -- --help |
Get help using the Astro CLI |
|
|
|
This project is licensed under the MIT License.
If you have any questions, suggestions, or just want to say hello:
Thank you for visiting my portfolio and blog! 🙌