The most useful pictures on a developer project website are evidence of what you built: a clear interface screenshot, a key interaction, a meaningful before-and-after, or a diagram that makes the system easier to understand. Add decorative photography only when it supports the project’s identity or subject. For every image, decide what it communicates, whether you have the right to publish it, how it should be described to assistive technology, and how it will fit the page.
Choose pictures that help someone evaluate the project
A project image should answer a reader’s question that text alone would make harder to answer. A screenshot can show the finished interface; a short sequence can make an interaction clear; a diagram can explain data movement; and a before-and-after pair can show what changed. A generic image that could sit on almost any developer’s site usually adds atmosphere but little evidence.
Start by naming the point you want the image to make. Then choose the visual that demonstrates it most directly. Treat this as a practical editorial framework, not a universal formula: the right mix depends on the project and on what a visitor needs to understand.
- Purpose: Does it prove a feature, explain a system, demonstrate a change, or simply decorate?
- Rights: Do you own it, have permission, or understand and meet the asset’s specific license conditions?
- Accessibility: Does it need concise alt text, an empty alt value, a caption, or a longer explanation nearby?
- Delivery: Does the page reserve space for it and offer an appropriately sized image for different displays?
Picture ideas that work for developer projects
A clean screenshot of the finished interface
Choose the screen or state that shows the project’s main value. Crop away unrelated details and keep small text readable. A screenshot is useful when it lets a visitor inspect the interface instead of asking them to infer it from a project description. If the interface’s appearance changes by state, choose the state that best demonstrates the capability you describe.
#1 Best Overall
- HTML CSS Design and Build Web Sites
- Comes with secure packaging
- It can be a gift option
A small sequence for an important interaction
Some behavior is difficult to understand from a single static view. Two or three frames can show a user action and its result—for example, opening a control, changing a setting, or completing a workflow. Keep essential explanation in normal page text rather than baking it into the images; the sequence should support the explanation, not replace it.
A system or data-flow diagram
Use a diagram when architecture, integration, or data movement is a significant part of the project. Show the components and relationships a reader needs to understand, rather than trying to fit every implementation detail into one graphic. Explain the important relationships in nearby text, especially when the diagram contains complex information.
A before-and-after pair
A pair can make a redesign, optimization, or behavioral change tangible. State in ordinary text what changed and why it matters. Do not make color the only way to distinguish the two states, and do not make the image pair carry the full explanation.
A focused detail or mobile view
Show a close-up when a particular control, responsive layout, or mobile interaction is central to the project. Select the crop for the point being made; there is no evidence-based universal device set for project portfolios. If multiple image sizes are available, let the browser choose an appropriate source for the rendered size and display.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteA project-specific illustration or photograph
Use an illustration or photo when it genuinely adds subject context, mood, or identity. A visual that is merely attractive but unrelated can distract from the work. Before publishing a found asset, check its own license and any conditions for credit, source links, notices of changes, or commercial reuse.
Write useful alt text and captions
First decide whether the image carries information. If it does, write a concise alternative that communicates the relevant information in the context of the page. Read the alt text alongside the surrounding copy: together they should make sense without forcing a reader to guess what the image contributes. Avoid using a filename or a vague phrase such as “image.”
If an image is decorative or repeats information already given in nearby text, use an empty alt value: alt="". This lets assistive technology skip it. Do not omit the decision by supplying an unhelpful description for an image that contributes nothing new.
If an image is also a link or triggers an action, describe the destination or action rather than only the image’s appearance. Do not use the HTML title attribute as a substitute for alt. Use a visible caption when it helps sighted readers; a caption and alt text serve different purposes.
Recommended Free Tools
Rank #3
For a complex diagram, do not try to squeeze the complete explanation into a short alt value. Provide the important information in the surrounding text as well. Avoid embedding essential words in the image itself: that can make the information less accessible and less searchable.
Example markup
For an informative image, write alt text that tells readers what the project-specific visual demonstrates. A visible caption can add context without replacing that alternative:
<figure>
<img
src="/images/task-board.webp"
alt="Task board showing three columns: Backlog, In progress, and Done, with a card moved to Done."
width="1200"
height="800"
>
<figcaption>Moving a completed task updates its status on the board.</figcaption>
</figure>
For a purely decorative flourish that adds no information, use an empty alternative instead:
<img src="/images/blue-grid.svg" alt="" width="1200" height="400">
Check image rights before publishing
Treat an image you find online as rights-managed until you have verified that you can use it. Confirm that you own it, have permission, or comply with its specific license. Even permissive licenses may require attribution, a link to the source, a notice of changes, share-alike treatment, or other conditions. Keep a record of where the asset came from and the terms that applied.
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #4
- Brand: Wiley
- Set of 2 Volumes
- A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers
Repository search filters can help find possible assets, but they do not replace checking the terms for the individual image. MDN names Flickr, Shutterstock, and Pixabay as examples of services with searches for permissively licensed media, and Picryl and The Noun Project as services focused on permissive media. Check the asset’s source and conditions before use: MDN’s image and accessibility guidance.
Be precise about Unsplash attribution. Its general license does not require attribution, but the Unsplash Help Center’s API guidance, written by Unsplash Dev on July 27, 2026, says: “When displaying a photo from Unsplash, your application must attribute Unsplash, the Unsplash photographer, and contain a link back to their Unsplash profile.” That statement applies to use through the Unsplash API; it should not be generalized to ordinary use under the Unsplash License. Review the relevant terms for your use at the Unsplash API guidelines.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Prepare images for the page they appear on
On HTML images, intrinsic width and height give the browser dimensions with which to reserve layout space. When you have multiple candidates, srcset and sizes can help it select a source suited to the rendered size and device. These attributes improve delivery choices; they do not decide which image is useful or make a poorly chosen image informative.
<img
src="/images/dashboard-800.webp"
srcset="/images/dashboard-800.webp 800w, /images/dashboard-1600.webp 1600w"
sizes="(max-width: 700px) 100vw, 800px"
width="1600"
height="1000"
alt="Dashboard with a weekly activity chart and a list of recent deployments."
>
Use the actual intrinsic dimensions of the image files in your page rather than copying the example values blindly. For responsive image selection and image dimensions, see MDN’s HTML images guide.
Best Value
Capture a project screenshot yourself
For a browser-based project, capture the specific page and state you want to show, then review the result at the size visitors will see it. A basic browser screenshot is often enough for a static interface. If the page has a consent banner, popup, chat widget, delayed content, or a responsive state that matters, account for those conditions before treating the capture as representative. Do not assume that one screenshot proves behavior that it does not show.
- Open the page or state that demonstrates the project’s main value.
- Set the viewport to match the presentation you intend to publish, and wait for the relevant content to load.
- Capture the page or the element that matters. Inspect the image for overlays, clipped content, tiny text, or incidental browser details.
- Crop or recapture as needed, then write alt text based on the information the final image conveys.
- Use suitable dimensions and responsive candidates when the image is served at different page sizes.
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server for developers. Send one GET request with a URL to return a PNG, JPEG, WebP, or PDF. The screenshot endpoint can capture a page without setting up a browser in your project:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for the request options and setup details. Before a capture, it can accept a cookie or consent banner as a visitor and remove more than 60 known consent platforms, newsletter popups, and chat widgets; each of those steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and the response identifies the page verdict and billing status in headers. Its MCP server includes take_screenshot, get_page_info, and capture_pdf for AI agents and MCP clients such as Claude and Cursor.
The free plan includes 1,000 screenshots per month with no card required; paid plans start at $5 for 3,000 shots. Every feature is on every plan. Sign up for ScreenshotNeo’s free plan to start capturing.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Make the final selection
Before publishing, look at each visual as a reader would. Keep the ones that clarify the interface, interaction, system, or change; confirm rights for anything you did not create; and make sure the image’s information is available in accessible text. If an image has no useful project-specific purpose, leaving it out is often the clearer choice.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

