Thank you for your interest in contributing! This guide will help you get started.
- New articles - Analysis, insights on AI/dev world
- New guides - Tutorials, setup guides, cheatsheets
- Improvements - Corrections, updates, translations
- Bug fixes - Code/styling errors
- Check existing Issues to avoid duplicates
- For significant contributions, open an Issue first to discuss your idea
- Ensure content is agnostic (no personal/company-specific references)
main → Production (protected, deploy automatico)
develop → Development (target per le PR)
Important: All Pull Requests must target the develop branch, NOT main.
# Fork via GitHub UI, then:
git clone https://github.com/YOUR-USERNAME/software-engineering-3.0.git
cd software-engineering-3.0
npm install# Start from develop
git checkout develop
git pull origin develop
# Create your feature branch
git checkout -b feature/docker-guide
# or
git checkout -b fix/typo-readme
# or
git checkout -b article/llm-analysis-2026- Use
kebab-case.mdxnaming - Include required frontmatter (see below)
- Use Astro components for styling
- Use
kebab-case.mdxnaming - Follow existing guide structure
- Include TOC for longer guides
---
title: "Your Title"
description: "Brief description shown on cards"
icon: "🎯" # Emoji icon
tag: "Category" # Optional: Analisi, Tutorial, Cheatsheet, etc.
date: 2026-01-05 # Optional
---Import components at the top of your MDX file:
import InfoBox from '../../components/InfoBox.astro';
import ProsCons from '../../components/ProsCons.astro';
import Quote from '../../components/Quote.astro';
import StepHeader from '../../components/StepHeader.astro';
import StatCard from '../../components/StatCard.astro';
import ComparisonTable from '../../components/ComparisonTable.astro';
import VersionBadge from '../../components/VersionBadge.astro';Example usage:
<InfoBox type="info" title="Note">
Content here...
</InfoBox>
<InfoBox type="warning" title="Attention">
Warning content...
</InfoBox>
<InfoBox type="success" title="Done">
Success message...
</InfoBox>
<ProsCons
pros={["Pro 1", "Pro 2"]}
cons={["Con 1", "Con 2"]}
/>
<Quote author="Author Name">
Quote text here...
</Quote>npm run dev # Start dev server at localhost:4321Verify:
- Page renders without errors
- Links work correctly
- Style is consistent with the rest of the site
- Responsive on mobile
npm run build # Generate static site
npm run preview # Preview production buildgit add .
git commit -m "add: Docker guide for developers"
git push origin feature/docker-guideadd: description # New content
fix: description # Bug fixes
update: description # Updates to existing content
style: description # Style/formatting changes only
docs: description # README, CONTRIBUTING, etc.
- Go to GitHub and open a PR
- Target branch:
develop(NOT main!) - Fill out the PR template
- Wait for review
# Or via CLI:
gh pr create --base develop --title "Add: Docker guide"- You open PR → targeting
develop - Maintainer reviews → may request changes
- PR approved and merged → into
develop - Periodically, maintainer merges
develop→main - Auto-deploy → site updated
- Clear and concise - Avoid unnecessary words
- Practical - Concrete examples > abstract theory
- Up-to-date - Verify information is current
- Agnostic - No references to specific people/companies
- Promotional or advertising content
- Outdated or unverified information
- Untested code
- Copyright violations
- Italian for articles and guides (primary audience)
- English accepted for technical content
- Code and commands always in English
PRs are reviewed for:
- Content quality - Accuracy, usefulness, clarity
- Style consistency - Alignment with existing design
- Functionality - Links work, responsive, no errors
- Build passes -
npm run buildsucceeds
Open an Issue with question or help wanted label.
Thank you for contributing!