AI Learning HubAI Tutorials › GitHub portfolio

Building and prototyping · Eighteen-part guide

Your first GitHub portfolio

You finished an AI course. You built a custom GPT, wrote prompts that work, automated something tedious. Now it lives in an email attachment and a folder on your desktop. This guide moves it somewhere people expect to look — in eighteen short parts, entirely through a browser, with no code at any point.

Start with part one Open GitHub (opens in a new tab) Back to the tutorials →
Format
Eighteen parts, each a few minutes to read and one thing to do
Written for
Complete beginners. No programming, no command line, no installation
What you need
A browser and a personal email address
Time to a live portfolio
An afternoon for the essentials; thirty days for the full plan in part seventeen

Why here rather than anywhere else? Because GitHub is where the technical world already looks. It works like LinkedIn, except that instead of asserting you know how to use AI, you show what you made with it. Recruiters look there. Collaborators find you there. And every part of it below happens by pointing and clicking on a web page.

You do not need to be finished to publish. The single most common reason a portfolio stays empty is waiting until the work is good enough. Part fourteen deals with that properly, but the short version is: publish it with a note saying what is unfinished.

Section one

Getting set up

An account, a profile, a front page, and your first project folder. By the end of part four you have something with a URL you can send to someone.

Part one

Understanding GitHub in plain English

Think of GitHub as four familiar things in one place:

When you put a project on GitHub you create a repository, or repo: a project folder that lives online and keeps its own history.

The seven words you actually need

Repository “repo”
Your project folder. It holds the files, the documentation, and the history of both.
README
The front page of a project. The first thing a visitor reads, and usually the only thing.
Commit
Saving your work with a note about what changed. A checkpoint you can return to.
Profile
Your own page. It lists your projects and says who you are.
Public and private
Public repositories are visible to everyone, which is the point of a portfolio. Private ones are visible only to people you invite.
Fork
Your own copy of someone else’s project, to change without touching theirs.
Star
A bookmark that the author can see. Half filing, half applause.

Who runs it

GitHub launched in 2008 and is now the default home of open-source software, with tens of millions of users. Microsoft acquired it in 2018. It runs on a freemium model: public repositories and the core features are free, and payment buys private collaboration, storage, and enterprise controls. Nothing in this guide requires a paid plan.

Before moving on

  • You can say what a repository and a README are without looking
  • You know that public is the setting a portfolio needs

Part two

Setting up your account

This is your storefront, and it takes about ten minutes to make it look considered rather than abandoned. A complete profile is the cheapest credibility available to you.

Create the account

The GitHub sign-up screen, with fields for email address, password, and username
The sign-up screen at github.com.
  1. Go to github.com (opens in a new tab) and click Sign up.
  2. Use a personal email address, not a work or university one. GitHub accounts last for decades and jobs do not. Losing access to the address means losing the account.
  3. Create a strong password and verify the address from your inbox.
  4. Answer the setup questions: Just me for team size, student or teacher if that applies, and interests such as collaborative coding and automation.

Choosing a username. It is public, it appears on everything you do, and changing it later breaks every link. Good: jane-smith, jane-ai-educator, ai-with-jane. Avoid: random digits (jane12345), jokes (coolcoder99), and anything temporary (stanford-temp).

Complete the profile

Click your avatar, top right, then SettingsProfile.

On the paid add-ons. GitHub will offer you Copilot and other AI tools during sign-up. You need none of them for this guide. Decline and revisit later if you start writing code.

Before moving on

  • Account created against an email address you will keep
  • Photo, real name, bio, location, and one link filled in

Part three

Your profile README

Here is the feature most people never find. Create a repository whose name is exactly your username, put a README in it, and GitHub displays that README at the top of your profile page. It is the one piece of writing on your account that every visitor sees.

Create the repository

The plus button in the top right of GitHub, used to create something new
The + button, top right.
The dropdown menu opened from the plus button, with New repository as the first option
Choose New repository.
  1. Click +New repository.
  2. Repository name: type your username exactly. GitHub confirms with a message when you get it right.
  3. Description: “My GitHub profile”.
  4. Set it to Public. This does not work otherwise.
  5. Tick Add a README file, then Create repository.
GitHub showing a special confirmation message after the repository name matches the username
The confirmation that the name matches your username.

Write it

Click the pencil icon on README.md and replace what is there. This template gives you every section worth having; delete any you cannot fill in honestly today.

README.md — profile template
# Hi, I'm [Your Name]

## About Me
I'm passionate about making AI accessible and practical for everyone.
Currently working at [Your Organization], where I [what you do].

## What I'm Working On
- Teaching AI literacy to legal professionals
- Building custom GPTs for [specific use case]
- Exploring [AI topic you're interested in]

## AI Tools I Use
- ChatGPT (advanced prompting, custom GPTs)
- Claude (research, document analysis)
- Harvey AI (legal-specific applications)
- [Other tools you use]

## AI Training Completed
- **Prompt Engineering Fundamentals** (Stanford Law School, 2026)
- **Building Custom GPTs** (OpenAI, 2026)
- **AI Ethics for Professionals** ([Organization], 2026)

## Featured Projects
Coming soon — currently documenting my AI work.

## Let's Connect
- LinkedIn: [Your LinkedIn URL]
- Email: your.email@domain.com
- Website: yourwebsite.com

## Fun Fact
[Something interesting about you or your AI journey]

Click the green Commit changes button, then visit your profile. The page is now yours.

Before moving on

  • A repository named exactly like your username, set to public
  • A profile README that says who you are and how to reach you

Part four

Your first project repository

Now a real project. Start with the training you have already finished, because you know that material and it needs no new work — only writing down.

Step one: create it

  1. Click +New repository.
  2. Name: ai-training-portfolio. Lowercase, hyphens, no spaces — the convention everywhere on GitHub.
  3. Description: “Documentation of my AI courses, certifications, and learning journey”.
  4. Public, and tick Add a README file.
  5. .gitignore: None for now. Part fourteen explains what this is for.
  6. License: MIT.
  7. Create repository.
What am I agreeing to with an MIT licence?

The MIT licence is short and permissive. In substance it says:

  • Anyone may use, change, and share your work.
  • They must credit you as the original author.
  • You are not liable if something goes wrong for them.

That fits educational material, where being reused is the point. The common alternatives:

  • Apache 2.0 — similar, with explicit patent and trademark terms.
  • GNU GPL — anyone who modifies your work must share their version too. More restrictive by design.
  • Creative Commons — built for documents, images, and media rather than code.

If the material is your employer’s rather than yours, the licence is their decision, not yours. Ask before publishing.

Step two: give it a shape

Click Add fileCreate new file and name it courses/README.md. The slash is doing something: it creates a folder called courses with that file inside. Repeat for projects/, resources/, and exercises/.

courses/README.md
# AI Courses & Certifications

This directory documents AI training and courses I have completed.

## 2026 Courses

### Prompt Engineering Fundamentals
- **Provider**: Stanford Law School
- **Completion date**: September 2026
- **Duration**: 8 weeks
- **Key topics**:
    - Effective prompt structure
    - Few-shot learning
    - Chain-of-thought prompting
- **What I learned**: [2–3 sentences]
- **Certificate**: [Link to certificate]

### [Your Next Course]
[Repeat the format above]

Step three: write the main README

Back on the repository’s front page, edit README.md. This is the document that decides whether anyone reads the rest.

README.md — project template
# AI Training Portfolio

Welcome. This repository documents my work with AI tools.

## About This Portfolio
I'm [Your Name], and I believe AI is a tool anyone can learn to use
well. This repository collects my formal training, hands-on projects,
and growing expertise.

## What's Inside

### [Courses & Certifications](/courses)
Formal AI training I have completed:
- Prompt engineering
- Custom GPT development
- AI ethics and responsible use

### [Projects](/projects)
Applications I have built:
- [Project 1 name and brief description]
- [Project 2 name and brief description]

### [Resources](/resources)
A curated collection of AI learning materials.

### [Practice Exercises](/exercises)
Hands-on work and experiments.

## Tools I Work With
**Large language models:** the current frontier models from OpenAI,
Anthropic, and Google.

**Specialised tools:** Harvey AI (legal research), [others you use].

## Skills I'm Developing
- Prompt engineering and optimization
- Custom GPT creation and deployment
- AI ethics and bias mitigation
- Workflow automation with AI

## Get In Touch
- **LinkedIn**: [Your LinkedIn URL]
- **Email**: your.email@domain.com

## License
MIT.

Name specific model versions only if you are prepared to keep the list current. “The frontier models from OpenAI, Anthropic, and Google” ages better than a version number, which dates the page the moment it changes.

Commit with a message that says what you did: Enhanced README with complete portfolio structure.

Before moving on

  • A public ai-training-portfolio repository with an MIT licence
  • Four folders, each with a README
  • A main README that explains the whole thing to a stranger

Section two

Filling it with work

Three projects you can build without writing a line of code, how to get images and PDFs into them, and how to document a course so that it reads as evidence rather than a claim.

Part five

Three projects that need no code

Each of these is documentation, screenshots, and examples — and each is genuinely useful to somebody else, which is what separates a portfolio from a folder.

Project one: a custom GPT showcase

Repository: my-custom-gpts. For each assistant you have built, include:

  1. Screenshots of it working.
  2. The instructions or system prompt you gave it.
  3. An example conversation showing what it does.
  4. Who it is for, and why you built it.
  5. What you learned making it.

Never built one? That is a skill, not a prerequisite. The hub’s guide to building custom GPTs (opens in a new tab) takes you end to end.

my-custom-gpts/README.md
# My Custom GPT Collection

A showcase of specialised assistants I built to solve real problems.

## Featured GPTs

### 1. [Legal Research Assistant]
**Purpose**: Helps legal professionals draft research queries and
analyse precedents

**Target users**: Law students, paralegals, junior associates

**Key features**:
- Structured research query generation
- Citation format assistance
- Case law summarisation
- Jurisdiction-specific guidance

**Prompt strategy**:
- Role: expert legal research librarian
- Constraints: always cite sources, flag jurisdictional differences
- Output format: structured research memos

**Example use case**: [Describe a specific problem this solved]

**Screenshots**: [Images showing the GPT in action]

**Lessons learned**:
- [What worked well]
- [What I'd improve]
- [Unexpected uses I discovered]

[Repeat for each GPT]

Project two: a prompt library

Repository: effective-prompts-library. Your best prompts, sorted by category, each with an explanation of why it works. The explanation is the valuable part — a prompt is easy to copy and hard to adapt without knowing what it is doing.

Add files as you go: research-prompts.md, creative-prompts.md, and so on.

effective-prompts-library/README.md
# Effective Prompts Library

Prompts I have tested and refined through real use.

## Categories
- Research & analysis
- Creative writing
- Data analysis
- Professional communication
- Learning & education

## How to Use This Library
1. Browse by category
2. Copy the prompt template
3. Replace [bracketed sections] with your specifics
4. Adjust based on what you get back

## Featured Prompt: Research Synthesis

**Purpose**: Synthesise multiple sources into a summary with citations

**Prompt**:

    You are a research analyst. I will provide [X] sources on [topic].

    Your task:
    1. Identify the 3-5 key themes across all sources
    2. Note where sources agree and disagree
    3. Synthesise findings into a 500-word summary
    4. Include inline citations in [APA/MLA/Chicago] format
    5. End with a "Key Takeaways" section

    Sources: [paste sources here]

**Why this works**:
- Defines the role and the task
- States exact output requirements
- Includes formatting instructions
- Asks for structured thinking

**When to use**: Literature reviews, due diligence, research memos

**Caveat**: Every citation it produces must be verified in a real
source before you rely on it.

Project three: tool comparisons

Repository: ai-tools-tested. Honest reviews of tools you have actually used, with the evidence attached. This one earns the most attention, because almost nobody does the comparison carefully.

1. Pick one standard task

Something you do often: summarise a complex article, draft a professional email, explain a technical concept simply.

2. Use the identical prompt

Exactly the same text in every tool. Any variation and you are comparing prompts, not tools.

3. Compare side by side

Which was more accurate? Clearer? Better in tone? Faster? Name the criterion before you judge.

4. Screenshot everything

The prompt and each result. This is your evidence, and without it the review is an opinion.

5. Write it up

Note the date and the version of each tool. A comparison without a date is worthless within months.

ai-tools-tested/README.md
# AI Tools I've Tested

Reviews and comparisons of AI tools for [your field].

## Purpose
I test and document AI tools so others can decide without repeating
the work.

## Review Criteria
Every tool is scored on:
- **Ease of use** (1-5)
- **Output quality** (1-5)
- **Cost** (free / paid tiers)
- **Use cases**: where it is strong
- **Limitations**: what it cannot do

## Tools Reviewed

### [Tool name]
**Tested**: [version, and the date you tested it]
**Best for**: [tasks]
**Rating**: [n]/5

**Strengths**:
- [Specific, with an example]

**Limitations**:
- [Specific, with an example]

**My use cases**:
- [How you actually use it]

[Repeat for each tool]

## Head-to-Head
[Comparison table: same task, same prompt, dated]

## Best Tool by Task
- **Creative writing**: [tool]
- **Data analysis**: [tool]

Before moving on

  • At least one of the three repositories created and public
  • Its README filled in with your own work, not the placeholder text

Part six

Adding files: screenshots, PDFs, images

A repository is not limited to text, and a screenshot does more for a reader than three paragraphs describing the same screen.

Uploading

  1. Open the repository, or the folder inside it, where the files belong.
  2. Click Add fileUpload files.
  3. Drag the files onto the page, or click choose your files.
  4. Scroll down and write a commit message: Added course certificate and project screenshots.
  5. Click Commit changes.

Keeping it tidy

Put media in its own folder. It keeps the front page of the repository readable, and it means a link never has to guess where an image lives.

a repository that stays readable
your-repository/
├── README.md
├── LICENSE
├── images/
│   ├── screenshot-custom-gpt.png
│   ├── certificate-prompt-engineering.pdf
│   └── profile-photo.jpg
│
└── courses/
    └── README.md

Showing them in a README

Uploading a file does not display it. Edit the README and point at it. An image uses an exclamation mark; a link does not.

displaying an image
## My Custom GPT in Action

![Screenshot of my legal research GPT](images/screenshot-custom-gpt.png)
linking to a file
## My Certification

You can view my prompt engineering certificate
[here](images/certificate-prompt-engineering.pdf).

The text in square brackets on an image is alternative text, read aloud by a screen reader and shown when the image fails to load. Describe what the image shows, not that it is a screenshot.

File sizes. GitHub starts complaining at 100 MB per file, and a repository full of uncompressed screenshots is slow for everyone. Compress images with something like TinyPNG (opens in a new tab), keep large datasets and high-resolution video elsewhere and link to them, and put video demos on YouTube or Vimeo rather than in the repository.

Before moving on

  • An images/ folder with at least one screenshot in it
  • That screenshot visible in a README, with real alternative text

Part seven

Linking LinkedIn, a CV, and the rest of you

Your profile does not exist on its own. Someone who finds a repository and likes it should be one click from the rest of your professional identity.

LinkedIn

In your profile README, a badge reads better than a bare URL:

a LinkedIn badge
## Connect With Me

[![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/your-profile)

In an individual project, a plain line of credit is enough:

author credit on a project
## About the Author

Created by [Your Name](https://www.linkedin.com/in/your-profile),
AI educator at [Organization].

Your CV

Two options, and the second is usually better. A CV PDF on a public repository is a permanent, indexed, downloadable copy of your home address and phone number.

the safer version

All of it at once

A row of badges near the top of your profile README, and a line about what you want to be contacted for:

professional links block

Before moving on

  • LinkedIn reachable from your profile README
  • A way to contact you that you are comfortable being public
  • One line saying what you want to hear about

Part eight

Making your work discoverable

Four settings, all in the same place, all ignored by most people. They are the difference between a repository somebody stumbles on and one that turns up when they search.

Topics

Topics are GitHub’s hashtags, and they are how people browse by subject. Open the repository, find About in the right sidebar, click the gear icon, and add them one at a time.

artificial-intelligence ai-education prompt-engineering chatgpt claude-ai gemini-ai legal-tech custom-gpt ai-portfolio learning-resources documentation

The description

One line, at the top of the repository, and it is what shows in search results. Make it specific enough that somebody could decide from it alone.

Works

  • Collection of tested ChatGPT prompts for legal professionals, with examples and documentation
  • Portfolio of custom GPTs built to automate research workflows in law firms
  • Beginner-friendly guide to AI tools with honest reviews and use cases

Says nothing

  • AI stuff
  • My project
  • Testing

The website field

Same About panel, same gear icon. Point it at your personal site, your LinkedIn, or a live demo of the project itself.

The social preview image

This is the picture that appears when the repository link is shared in Slack, LinkedIn, or a message. Without one you get a grey default. Go to SettingsSocial preview and upload an image around 1280 by 640 pixels.

Before moving on

  • Five or more relevant topics on each repository
  • A description that names the subject and the audience
  • The website field pointing somewhere

Part nine

Documenting training and certifications

A line on LinkedIn says you took a course. A page that shows the curriculum, your notes, a project you built, and what you would do differently shows that you learned something. That difference is the whole point of this part.

The structure: an overview and a deep dive

Make a repository called ai-certifications. Its main README is the table of contents. Each course then gets its own file — courses/prompt-engineering.md — where the real writing happens.

ai-certifications/README.md
# AI Training & Certifications

Professional development in artificial intelligence.

## Completed

### [Certificate Name] ([Organization])
- **Completion date**: Month Year
- **Verification**: [Link to credential]
- **Key skills**: Skill 1, Skill 2, Skill 3
- **[Detailed write-up](courses/certificate-name.md)**

### [Certificate Name 2] ([Organization])
- **Completion date**: Month Year
- **Verification**: [Link to credential]
- **Key skills**: Skill 1, Skill 2
- **[Detailed write-up](courses/certificate-name-2.md)**

## In Progress
- [Course name] ([Organization])

## Wishlist
- [Course] (why you're interested)

Now the deep dive. This is the page that sets you apart from a candidate who listed the same course.

courses/prompt-engineering-fundamentals.md
# [Course Name] ([Organization])

## Course Information
- **Provider**: [e.g. Stanford Law School]
- **Instructor**: [Name]
- **Completion date**: Month Year
- **Duration**: [e.g. 8 weeks, 40 hours]
- **Verification**: [Link to credential]

## Objectives
This course taught me to:
- [Objective 1 from the syllabus]
- [Objective 2 from the syllabus]

## Curriculum

### Week 1: Foundations
- [Topic]

### Week 2: Advanced Techniques
- [Topic]

## Key Concepts Mastered

### 1. [Skill, e.g. chain-of-thought prompting]
**Before**: [your old, simple prompt]
**After**: [your new prompt, showing the skill]

### 2. [Skill 2, e.g. bias detection]
[A concrete example of what you can now spot]

## Projects & Assignments

### Final Project: [Name]
- **Objective**: [the goal]
- **Repository**: [link, if it has its own]
- **What I built**: [description]
- **Challenges**: [what was hard]
- **Solutions**: [how you got past it]

## Skills Assessment

| Skill           | Before     | After        |
|-----------------|------------|--------------|
| Prompt writing  | Beginner   | Advanced     |
| Bias detection  | Novice     | Intermediate |
| Legal AI apps   | None       | Proficient   |

## Reflections
**Most valuable lesson**: [the insight that changed how you work]
**How I'm applying it**: [specific, current]

## Certificate
![Certificate of completion](../images/cert-name.png)

Check the certificate image before you upload it. Course certificates often carry a credential ID, a verification URL, and occasionally an email address. Anything on that image is public and permanent once committed.

How the repository ends up looking

ai-certifications/
ai-certifications/
├── README.md                 # the overview
│
├── images/
│   ├── cert-prompt-engineering.png
│   └── cert-ai-ethics.png
│
├── courses/
│   ├── prompt-engineering-fundamentals.md
│   └── ai-ethics-professionals.md
│
└── notes/
    ├── prompt-engineering-notes.md
    └── ai-ethics-notes.md

Before moving on

  • One course documented in full, with a before-and-after example
  • Nothing on the uploaded certificate you would mind being indexed

Section three

Making it good

What everyone else is doing on GitHub and what to borrow from them, the rules that make a portfolio read as professional, how to keep it alive, how to get useful feedback, and the six mistakes that cost the most.

Part ten

What else lives on GitHub

Your work is AI, but the platform holds far more than that, and the conventions worth copying come from the neighbours. Ten categories, with two examples each that are worth an actual look.

One

Software and applications

The most common use: the code behind websites, apps, desktop tools, and browser extensions.

  • RealWorld — the same application built in more than twenty frameworks, so you can compare them directly.
  • Spring PetClinic — the canonical full example for Java Spring, not a toy demo.

Two

Data science and analysis

Notebooks, models, and visualisations. Worth studying for how researchers document a process.

Three

Documentation and writing

Technical guides, API references, and entire books, all written in Markdown.

  • mdBook — turns Markdown into a searchable online book. It produces the official Rust book.
  • Bookdown — academic and technical writing to HTML, PDF, and e-book from one source.

Four

Learning resources

Tutorial series, cheat sheets, study notes. The category your certification repository belongs to.

Five

Design and creative work

Design systems, icon sets, illustration collections, templates. The best READMEs on the platform are often here.

Six

Configuration and tooling

More advanced: personal machine configurations, automation scripts, development setups.

Seven

Open-source projects

The libraries and frameworks other software is built on.

  • Visual Studio Code — a large corporate project run in public, with tens of thousands of extensions.
  • Kubernetes — the standard for running applications at scale, and a lesson in governance.

Eight

Personal projects

Where you fit. Portfolios, hobbies, experiments, and the occasional delightfully odd thing.

  • The Cookbook — a recipe collection that tracks recipes as issues and meals as a project board.
  • Knitting patterns — version control applied to knitting, entirely seriously.

Nine

Business and product

Public roadmaps, project templates, and standard operating procedures.

Ten

Research and academia

Code and data behind published papers, so results can be reproduced rather than trusted.

  • Free Law Project — open infrastructure for legal research, including millions of court opinions.
  • ReScience — a peer-reviewed journal where a submission is a pull request.

Where your work sits

Your AI repositories span four of those categories at once:

  • Learning resources — your certification documentation
  • Documentation and writing — prompt libraries, tool reviews
  • Data science — experiments and model testing
  • Personal projects — custom GPTs and workflows

What to steal from each

  • From developers: how to write an installation guide somebody can follow.
  • From designers: how a visual portfolio is laid out and paced.
  • From data scientists: how to document an experiment, including the ones that failed.
  • From educators: how to sequence material so difficulty rises gradually.

Part eleven

Best practices

Five rules

1. README first, always

Every repository needs one. Write it for somebody who knows nothing about the project, and update it whenever the project moves. An undocumented repository reads as abandoned.

2. Show, do not only tell

Screenshots, example outputs, specific use cases, before-and-after comparisons. A reader decides whether to keep reading in about five seconds, and an image is what buys the next thirty.

3. Be honest about limitations

What does not work yet. What is a known problem. What you are still learning. This reads as competence, not weakness — the alternative is somebody discovering it for themselves.

4. Keep it current

Put “Last updated: [date]” in each README. Archive projects that no longer represent your work. Update the profile when you learn something new.

5. Make it navigable

Clear folder structures, links between related projects, a table of contents on anything long, and descriptive file names — prompt-engineering-notes.md, never notes2.md.

Writing style

Specific

This custom GPT helps legal researchers by:
- Generating structured Westlaw queries
- Suggesting alternative search terms
- Identifying jurisdiction-specific issues

Vague

This is a GPT. It does legal stuff. It's good.

A real lessons-learned section

What worked: role-based prompting ("You are a senior
contracts attorney") sharply improved output quality.

What didn't: my first few-shot examples were too
complex. Simpler examples taught the model better.

Next: chain-of-thought prompting for multi-step
legal reasoning.

Not one

It was good. I learned stuff. Will do more later.

Commit messages

Every save carries a message. Together they are a permanent record of how the work developed, which is genuinely interesting to a reader — if the messages say anything.

Useful

  • Added Week 3 lesson plan on AI ethics
  • Fixed broken links in Harvey AI setup guide
  • Updated README with new OpenAI certification
  • Reorganised prompt library by difficulty

Wasted

  • Update
  • Changes
  • Fixed stuff
  • asdfgh

Several projects at once

Name them consistently

A pattern means somebody can guess the name of the repository they want:

  • ai-training-[topic]
  • custom-gpt-[purpose]
  • prompts-[category]
  • review-[tool-name]

Pin the best six

Your profile shows up to six pinned repositories, and they are what most visitors see. Choose the most complete, the most impressive, the ones that best show your range, and something recent.

Go to your profile, click Customize your pins, select up to six, and drag them into the order you want.

Part twelve

Maintaining it

A portfolio is a living document, and small regular updates beat an occasional heroic overhaul. This is roughly fifteen minutes a week.

Fifteen minutes

Weekly

  • Document one thing you learned
  • Add a prompt to the library
  • Update one project README
  • Upload notes or a certificate
  • Reply to anything anyone said

Half an hour

Monthly

  • Re-read your profile README — is it still true?
  • Check every repository link
  • Update “currently learning”
  • Add new skills and tools
  • Archive anything you are no longer proud of

An afternoon

Quarterly

  • Build one substantial new project
  • Write up a course in full
  • Improve your top three repositories
  • Reorganise if your focus has shifted
  • Refresh screenshots and examples

Why the rhythm matters more than the volume. Regular activity is legible from the outside: it shows somebody still learning. A profile with six months of nothing reads as a project that was abandoned, whatever is in it.

Part thirteen

Getting feedback

“Any thoughts?” gets you nothing. A specific question gets you something you can act on the same afternoon.

From colleagues

Send the link with the question attached:

  • “Does my README make clear what this GPT actually does?”
  • “Could you use my prompts from the documentation alone?”
  • “What is confusing about my training portfolio?”

From communities

Where to post it:

  • AI learning communities on Discord and Slack
  • LinkedIn, where your professional network already is
  • Subject-specific forums such as r/PromptEngineering

What to ask about

Clarity
Is the explanation understandable to somebody outside your field?
Completeness
What is missing that they expected to find?
Organisation
Could they find what they were looking for?
Visuals
Did the screenshots help, or were they decoration?

Acting on it

A suggestion is information about your audience, not a verdict on you. Thank them, make the change, and tell them you did — that last part is why they will look again next time.

“Thanks for this. You were right that the setup instructions were unclear — I’ve rewritten them with step-by-step screenshots and added a troubleshooting section. Does it make more sense now?”

Part fourteen

Six mistakes to avoid

1. Waiting until it is perfect

“I will publish this when it is finished.” It never is, and you learn from feedback you cannot get on unpublished work. Publish now with a note at the top:

at the top of the README
## Work in progress

Under active development. The documentation is incomplete but
what is here works. Feedback welcome.

2. Over-explaining

Three paragraphs on what ChatGPT is. Your reader knows. Assume basic familiarity and spend the space on your use case, which is the only part they cannot get elsewhere.

3. No visual elements

A wall of text with no images and no formatting. People scan before they read. Put one screenshot near the top, break the page with headings, and show a before-and-after where you have one.

4. Vague descriptions

Instead of “AI project” or “some prompts”:

“Custom GPT that generates IRAC legal analyses from case descriptions”, or “fifty tested prompts for legal document summarisation”.

5. Forgetting the audience

Instead of “That GPT thing. You know, the one we talked about.”:

Contract Review Assistant. A custom GPT that helps junior associates review commercial contracts by flagging common issues and suggesting standard clause language.”

6. Ignoring security

The one on this list that cannot be fixed later. Never commit any of these to a public repository:

  • API keys, from any provider
  • Passwords or credentials of any kind
  • Student or client personal information
  • Proprietary or confidential documents belonging to your employer

Deleting is not removing. Once something is committed it stays in the repository’s history even after you delete the file, and it can be recovered from there. If a live key or confidential document has been pushed, revoke the key and treat the document as disclosed — do not assume a deletion fixed it.

How .gitignore prevents it

Create a file named exactly .gitignore in the repository. It is plain text, one rule per line, and GitHub checks it before adding anything. A file matching a rule is treated as though it does not exist — never tracked, never uploaded, never in the history.

.gitignore
# Secrets and credentials
*.env
key
config/secrets.json
credentials.txt

# Personal data
/confidential/
/client-data/

# Large files
*.mp4
*.zip
datasets/large-files/

Before moving on

  • A .gitignore in every repository that could ever hold a key
  • Nothing already committed that you would not want indexed

Section four

Growing it, and launching

The features worth adding once the basics hold, where to keep learning, a thirty-day plan, and an honest account of which numbers mean anything.

Part fifteen

Features worth adding later

None of this is needed to start, and all of it is useful once you have something to maintain.

Issues: a to-do list that lives with the project

The Issues tab is a task list attached to the repository, and it works perfectly well for a project with one person on it.

  1. Open the repository and click Issues.
  2. New issue, with a title that is a task: Add troubleshooting section to README.
  3. Add detail in the body, so you still understand it in three weeks.
  4. Label it — documentation, enhancement — to keep the list sortable.
  5. Close it when it is done.

The side effect is worth having: a visitor can see what you are planning, which reads as a project being worked on rather than parked.

GitHub Pages: a website for free

Any repository can become a live public site at no cost.

  1. In the repository, go to Settings.
  2. Pages, in the left sidebar.
  3. Under Source, choose the main branch and the / (root) folder.
  4. Save. It appears within a minute or two at:
your site's address
https://yourusername.github.io/repository-name

Badges: status at a glance

Small labels at the top of a README. These three are rendered live from shields.io:

Badge reading: status active Badge reading: license MIT Badge reading: updated August 2026

the Markdown behind them
![Status](https://img.shields.io/badge/status-active-success)
![License](https://img.shields.io/badge/license-MIT-blue)

Build your own at shields.io (opens in a new tab). A badge claiming a status you are not maintaining is worse than no badge.

Markdown beyond headings and bullets

Tables, for comparisons

Example comparison table as rendered from Markdown
ToolBest forCost
ChatGPTGeneral$20/mo
ClaudeDocuments$20/mo
the Markdown for it
| Tool    | Best for  | Cost   |
|---------|-----------|--------|
| ChatGPT | General   | $20/mo |
| Claude  | Documents | $20/mo |

Collapsible sections, for anything long

Click to see the full prompt

Your long, detailed prompt goes in here, hidden until someone wants it. Ideal for a page holding twenty prompts.

the Markdown for it
<details>
<summary>Click to see the full prompt</summary>

Your long, detailed prompt goes here.

</details>

Task lists, for a roadmap

renders as tickable boxes
- [x] Complete research
- [x] Build prototype
- [ ] Test with users

Code blocks, with highlighting

naming the language colours it
```python
def create_prompt(role, task):
    return f"You are a {role}. {task}"
```

Part sixteen

Where to keep learning

Start here

Official GitHub

Courses and video

Learning platforms

Formatting

Markdown

Read the good ones

AI repositories worth studying

Non-negotiable

Ethics and responsible use

Follow people, not just repositories. Search GitHub for people working in AI education, building assistants, writing documentation you admire, or maintaining the kind of repository you want to have. Following them puts their work in your feed, which is the cheapest continuing education available.

Part seventeen

A thirty-day plan

Everything above, sequenced. Half an hour a day for a month gets you from nothing to a portfolio worth putting in an email signature. Skip a day; the plan survives it.

Week one: foundation

Day 1

Set up

  • Create the account
  • Photo and bio
  • LinkedIn and website links

Day 2

Profile README

  • Create the username repository
  • Write the first version

Day 3

Training repository

  • Create ai-training-portfolio
  • Write its main README
  • Add the folder structure

Day 4

Document one course

  • Write up a course you finished
  • Upload the certificate

Day 5

Be findable

  • Add topics
  • Write real descriptions
  • Pin the portfolio

Day 6

Prompt library

  • Create the repository
  • Add five prompts you use
  • Say why each works

Day 7

Review

  • Read it as a stranger would
  • Ask one person for feedback

Week two: content

Day 8

More training

  • Add three more courses

Day 9

First project

  • Create its repository
  • Write a full README
  • Add screenshots

Day 10

Grow the library

  • Add ten more prompts
  • Sort them by category

Day 11

Tool reviews

  • Create ai-tools-tested
  • Review three tools

Day 12

Join it up

  • Update the profile README
  • Link the new repositories

Day 13

Visuals

  • Improve your best README
  • Add more screenshots

Day 14

Halfway check

  • Review everything
  • Click every link

Week three: polish

Day 15

Professional finish

  • Add the links block
  • Add badges

Day 16

Deep dive

  • Document a complex project
  • Include lessons learned

Day 17

Templates

  • Make a template repository
  • Include a README scaffold

Day 18

History

  • Read your commit messages
  • Settle on a style

Day 19

Enhance

  • Add visuals to the top three

Day 20

GitHub Pages

  • Enable it for one project
  • Check the live site works

Day 21

Feedback

  • Ask two or three people
  • Make one real improvement

Week four: launch

Day 22

Final polish

  • Reread the profile README
  • Check links and typos

Day 23

Connect it

  • Add GitHub to LinkedIn
  • Add it to your signature

Day 24

Announce

  • Write one post about it

Day 25

Network

  • Join two communities
  • Share the profile

Day 26

Participate

  • Star ten repositories
  • Follow five people

Day 27

Look ahead

  • Add a “what’s next” section

Day 28

Document the process

  • Write up how you built this

Day 29

Final review

  • Read every repository once more

Day 30

Done

  • Send the link to someone
  • Plan next month

Part eighteen

Measuring success

What good looks like after thirty days

Your profile

  • A professional photo and a real bio
  • A profile README that explains who you are
  • Three to six pinned repositories
  • Links to LinkedIn and elsewhere
  • Recent activity

Your repositories

  • Three to five, each properly documented
  • A clear README on every one
  • At least one substantial project
  • Sensible folder structures
  • Commits at least weekly

The writing itself

  • No spelling or grammar errors
  • Every link and image works
  • Clear explanations with specific examples
  • Honest about what does not work
  • You have asked for feedback and acted on it

Which numbers matter

Ignore for now

  • Stars — they accumulate over years, not weeks
  • Follower count — a vanity figure at this stage
  • An unbroken contribution graph — life happens
  • Comparison with developers who have a decade of history

These are the real ones

  • Whether your documentation is clear to a stranger
  • Whether the work is genuinely yours
  • Whether you keep updating it
  • Whether anyone else has found it useful

Further out

Three months

  • Ten or more repositories
  • Somebody has starred or forked something
  • The workflow feels ordinary
  • Your documentation has helped someone

Six months

  • Updating it is a habit, not a project
  • The work visibly improves across projects
  • You have collaborated with someone
  • The profile matches your actual expertise

One year

  • A portfolio you would send unprompted
  • A documented record of how you learned
  • Contributions to other people’s work
  • This is simply where your work lives

You do not need to be a programmer, and you do not need to wait until you are an expert. Start small, stay consistent, show the work, and keep improving it. The profile is a record of the journey, not a report on its conclusion.

Something to put in it

Build the thing, then publish it

The API course is the companion to this guide: seven recorded modules on how software talks to software, ending with an integration small enough to finish and worth documenting.

← All tutorials Understanding APIs →

Robert Crown Law Library · last reviewed August 2026.