AstroPortfolio

sorollaportfolio — Astro Portfolio Template

By jramma

An Astro-based personal portfolio template that uses block-style homepage sections and Markdown blog entries to present work, skills, and projects, under the MIT license.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-04View source

What stands out

A quick read of the recorded project description.

01

Astro static site structure with pages and content separated, making it easy to replace personal introductions by block

02

The homepage is composed of Astro components such as Hero, WhatIDo, Header, and Footer, which can be combined into portfolio sections

03

Blog posts are stored as Markdown in src/content/blog, with detail pages generated through content collections and dynamic routes

04

Built-in blog index page and rss.xml output make it convenient to publish written content

05

Uses Tailwind CSS and TypeScript, with style and type configuration centralized in the project root

06

The repository contains a standard MIT license file, clarifying the conditions for use and distribution at the code level

Template Details

Sorolla Portfolio is a personal portfolio demo project. In the README, the author states its purpose is to show what a personal portfolio could look like, covering work, skills, and projects. The page structure is organized into block sections; the homepage includes components such as Hero and WhatIDo, and there is also an about page. Blog content is stored as Markdown under src/content/blog, with article pages generated through content collections and the dynamic route [...slug].astro, and it provides a blog index page and rss.xml output.

On the technical side, the project is built with Astro and configured with Tailwind CSS (tailwind.config.mjs) and TypeScript (tsconfig.json). The source is divided into assets, components, content, icons, layouts, pages, and styles; icons are SVG files, and styles include global.css and hamburgers.css. The README gives the local run method as pnpm install followed by pnpm run dev, with the dev server at http://localhost:4321; deployment instructions target Cloudflare Pages using wrangler pages deploy dist.

Regarding licensing, the repository contains a standard MIT license file, allowing free use, modification, commercial use, and distribution of this version of the code, provided the copyright notice and license notice are retained when distributing. Authorization for third-party assets such as demo images, fonts, and icons must be checked separately, and external services such as domains and hosting may incur costs. The README does not provide information on design style, accessibility, or performance.

AstroPortfolio

Is it right for your project?

Use Cases

  • Build a personal portfolio site to present self-introduction, skills, and projects in sections
  • Write and publish project notes or blog posts in Markdown
  • Use as a starting point for learning and modifying an Astro + Tailwind CSS + TypeScript combination
  • Deploy to static hosting environments such as Cloudflare Pages

Suitable For

  • Developers and designers who need a personal portfolio or resume-style site
  • Users who are used to managing content in Markdown and want static generation
  • Front-end developers who are familiar with or willing to use Astro and Tailwind CSS

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After cloning the repository, run pnpm install to install dependencies

  2. 2

    Run pnpm run dev to start the development server, with the default address at http://localhost:4321

  3. 3

    Build output is generated with pnpm run build; the README example uses wrangler pages deploy dist to deploy to Cloudflare Pages

  4. 4

    When replacing images and icons in src/assets and src/icons, you must confirm asset authorization yourself

  5. 5

    The README does not specify a Node version requirement; refer to the project dependencies and actual runtime environment

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version in the public repository under the MIT license; the free scope is the code of this version and does not mean external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version of the code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
  • Deploying to Cloudflare Pages requires registering a Cloudflare account first, which is an external service account requirement.
  • Before using the wrangler deployment command, you must have a Cloudflare account, which is an external service dependency.
View Original Text Basis

Compiled by DeepSeek based on repository license and README ·2026-10-04. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
Astro Themes
Documentation and maintenance reference score
More documented · 87 / 100
Technologies
Astro
Website type
Portfolio
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-07-21
Screenshot last checked
2026-10-04

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-04

Inspect the recorded source material

SHA-256: 61d715117ac911cc2e61ceab156c1b35624fc91dbf861901670b3728ef72d019

2026-10-04T10:14:19.297Z

Source file / repository
# Sorolla Portfolio

![./preview.png](./preview.png)

Welcome to my personal portfolio demo repository! This project is a demonstration of what a personal portfolio could look like. It showcases various aspects of web development, including my work, skills, and projects.

- You can view the deployed project at the following URL: [https://sorolla.casset.cat/](https://sorolla.casset.cat/)
- Astro web templates: <https://astro.build/themes/details/sorollaportfolio/>

## 📂 Project Structure

- **public/**: Contains public assets like images and fonts.
- **src/**: Includes the source code for the portfolio.
- **.gitignore**: Specifies files and directories to be ignored by Git.
- **astro.config.mjs**: Configuration file for Astro.
- **package.json**: Lists project dependencies and scripts.
- **tailwind.config.mjs**: Configuration file for Tailwind CSS.
- **tsconfig.json**: TypeScript configuration file.

### 🧭 /src structure

The `/src` directory contains the main source code for the project. Below is an overview of its structure:

```bash
src
├── assets
│   ├── adriana.webp
│   ├── euro.webp
│   ├── fran.webp
│   └── hero.webp
├── components
│   ├── BaseHead.astro
│   ├── Footer.astro
│   ├── FormattedDate.astro
│   ├── Header.astro
│   ├── HeaderLink.astro
│   ├── Hero.astro
│   └── WhatIDo.astro
├── consts.ts
├── content
│   └── blog
│       └── content in markdown format
├── content.config.ts
├── icons
│   ├── 1.svg
│   ├── 2.svg
│   ├── 3.svg
│   ├── 4.svg
│   ├── 5.svg
│   ├── beach.svg
│   ├── github.svg
│   ├── linkedin.svg
│   ├── paint.svg
│   └── web.svg
├── layouts
│   └── BlogPost.astro
├── pages
│   ├── about.astro
│   ├── blog
│   │   ├── index.astro
│   │   └── [...slug].astro
│   ├── index.astro
│   └── rss.xml.js
└── styles
    ├── global.css
    └── hamburgers.css
```

#### Explanation

- **assets**: Contains image files used in the project.
- **components**: Contains reusable UI components built with Astro.
- **content**: Contains blog content in Markdown format.
- **content.config.ts**: Configuration file for content collections.
- **icons**: Contains SVG icon files used in the project.
- **layouts**: Contains layout components.
  - `BlogPost.astro`: Layout component for blog posts.
- **pages**: Contains the main pages of the site.
  - `blog/index.astro`: Blog index page.
  - `blog/[...slug].astro`: Dynamic route for individual blog posts.
- **styles**: Contains global and component-specific CSS files.
  - `global.css`: Global styles for the project.
  - `hamburgers.css`: Styles for the hamburger menu.

This structure helps in organizing the project files and makes it easier to maintain and scale the project.

## 🚀 Getting Started

To run this project locally:

1. **Clone the repository:**

   ```bash
   git clone https://github.com/jramma/sorollaportfolio.git
   cd sorollaportfolio
   ```

2. **Install dependencies:**

   ```bash
   pnpm install
   ```

3. **Start the development server:**

   ```bash
   pnpm run dev
   ```

   The application will be available at `http://localhost:4321`.

## 🛠️ Technologies Used

- **Astro**: A modern static site builder.
- **Tailwind CSS**: A utility-first CSS framework.
- **TypeScript**: A statically typed programming language.

## 📄 License

This project is licensed under the [MIT License](LICENSE).

## Deploy on Cloudfare

1. Create an account on Cloudfare

2. Execute:
 
  ```bash
  
  pnpm i
  
  pnpm run build
  
  # First you need a Cloudfare account  
  npx wrangler pages deploy dist --project-name=sorolla
  
  ```

3. Check settings on Cloudfare workers/pages
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.