Add A Useful Feature to Your Project
Find the Next Useful Step
In the previous lesson, you turned your brief into a working asset built around a complete user flow. This is your baseline: the experience you want to preserve while you improve the project.
Your current build may already be good to launch. But a project can still make the user do work it could handle for them.
A focused extra feature can turn your project into a more useful experience: it can save time, remove repetitive work, and help the user reach a result with less effort. It might remember information the user would otherwise enter again, bring in approved data they would manually copy and paste, create an output they would assemble, or adapt the experience to their input. When that feature solves a real need and fits naturally into the flow, it can make the whole project thoughtful and genuinely easy to use.
By the end of this lesson, you'll have one tested additional feature that supports the main user flow. You'll know what setup or access it needs, how the user interacts with it, and how to build and test one.

Look for the Usefulness Gap
A new feature becomes valuable when it removes real friction. The right addition depends on what the project already does and where the current experience still asks for extra work. Let's call the distance between a working flow and a more useful experience the usefulness gap.
The table below shows examples of several meaningful gaps across the four project types. Use them as starting points: the potential gaps you identify in your own project depend on the flow you want the visitor to follow and the real bottlenecks they face along their way.
| Project type | What the working version already does | One possible usefulness gap |
|---|---|---|
| Portfolio | A visitor can understand the creator's focus, open a case study, and reach a contact option. | The visitor has to scan every project to find work that matches their interest. |
| Product Website | A visitor can understand the offer, inspect proof, and reach the call to action. | Visitors with different goals still have to scan the same full page to find the proof and next step that fit them. |
| Product App | The app turns a pasted meeting transcript into organized notes. | To use it, the user still has to open a transcript file elsewhere, copy its text, and paste it into the app. |
| Team Tool | A teammate can add or update a work item, see its status, and prepare a handoff. | The teammate still has to assemble the handoff summary manually before sharing it. |
These are only examples. Projects of the same type can benefit from very different features because their users, goals, and current points of friction differ. Your project can have several gaps, and each gap can point to several possible additional features.
How to Identify the Gap
To find the gap that would make the biggest difference, return to the main user flow you just followed and ask:
- Where does the visitor or user repeat work?
- Which useful choice, input, or result disappears too soon?
- Which information has to be copied or updated manually?
- Which useful result still needs extra preparation before it can be used or shared?
- Which part of the experience stays the same even when the user's goal or input changes?
Write down one gap that directly affects the main user flow. If you're not sure yet whether there are any gaps, you can use AI to evaluate your current project and identify potential gaps for you.
After you've noticed the gap and AI suggested the way to fix it, you're ready to build a focused feature to close it and improve the project. Your first feature should make the user's task easier and the project more convenient to use through one change you can see and check.
The next step is to choose the first feature that closes the gap you found.
Choose One Feature That Matters
The usefulness gap describes what the project needs to do better. The first feature you add will usually help the project in one of four ways: remember, connect, act, or adapt.

Look at the table below to see these four directions and explore how each one can be useful in your project — a website, portfolio, app, or team tool:
| Direction | In simple terms | Examples |
|---|---|---|
| Remember | Keep useful information for later. | Save a draft, a selected filter, or a work-item status. |
| Connect | Bring in approved information from another source or send information to it. | Import a transcript, load a public schedule, or read sample spreadsheet rows. |
| Act | Turn the current result into a useful next step. | Download a file, copy a link, export a result, or create a handoff summary. |
| Adapt | Change what the user sees or gets based on their input. | Filter projects, show the most relevant website section, or tailor an app result. |
Some features do more than one of these jobs. An imported transcript can also be saved, and a tailored result can also be exported. Choose the direction that solves your gap most directly and use it to frame the first build. You can add the rest later.
Let's practice. Identify which direction fits each feature.
Match Each Direction to Its Main Job
Match each direction with its main job.
Use these four directions and the usefulness gap you identified to choose the first feature you'll add. If several options fit, compare them with the checklist below and choose the one that makes the clearest difference to the current user flow.
A strong first feature:
- Supports the main user flow you already mapped
- Removes extra work or makes a useful result easier to find, keep, use, or share
- Produces a change the visitor or user can notice
- Uses services, access, and costs you understand
- Is small enough to build and check through one clear route
- Can be undone without losing the flow that already works
Let's practice! The three cases below all describe useful ideas. Sort them by whether they make a focused first build or belong on the later list.
Build First or Keep for Later?
For each idea, choose whether the feature makes a focused first build or belongs on the later list.
Product website: Let visitors choose a goal and see the most relevant proof
A larger idea may become useful later. For the first build, choose the version that needs fewer new services, permissions, and user decisions while still making a noticeable difference.
Check this working planning formula. It keeps the feature's purpose, user, result, and current friction together, so your next AI request stays focused. Complete it with your own notes:
The first feature should help the project [remember, connect, act, or adapt] so that [visitor or user] can [complete a useful action or reach a better result] without [current friction].
With the first feature identified, the next step is to check what it needs before AI builds it. Clarifying the setup now will help you avoid unnecessary tools, permissions, and costs later.
Check What Your Feature Needs
Before AI plans the feature, decide what information it will work with. Every feature uses some kind of input: a visitor's choice, a draft, a file, a work item, or information from another service. It may use that information on screen, remember it, import it, or turn it into an output. These choices tell you what setup and access the build needs.

The examples below make that setup concrete across all four feature directions:
| Example | What it uses | What the feature does | What it needs |
|---|---|---|---|
| Portfolio — Adapt | Case-study tags and the visitor's chosen interest | Shows matching work and a reset option | The existing case studies, grouped with simple tags; no external service needed |
| Product website — Remember | The visitor's selected goal | Keeps the selection when the page reloads in the same browser | A simple way to remember the visitor's non-sensitive choice in the same browser |
| Product app — Connect | One short fictional audio file uploaded to the app | Sends the file to a transcription service, then uses the returned text in the existing notes flow | External integration through the service's official API |
| Team tool — Act | One visible work item | Creates a copied or downloaded handoff summary | The work item's title, owner, status, deadline, and next step, plus a way to turn them into a copyable or downloadable summary |
These features do different jobs, but each one raises the same practical questions: What goes in? What does the feature do? Where does the result or information go? Does it need storage, another service, permission, or added cost?
Some features work entirely with information already in the project or create a result the user can copy or download. Others depend on a service outside the project. The next section explains that second case; if your feature stays inside the project, continue to the feature plan afterward.
If Your Feature Connects Another Service
An external connection lets the finished project request information or an action from another service. In this lesson, you'll use the service's official API as the path for that connection.
You'll need an API when the feature must exchange information or actions with a service outside the project. A feature that only uses information already in the project, remembers a local choice, or creates a result to copy or download doesn't need one.
Use this short sequence to prepare an API connection:
- Name the exact job. Decide what information the project should send or receive and what result the service should return.
- Check the current guidance. Confirm that the service's API supports that job and review its access, data handling, limits, and pricing. Then follow the API integration instructions in your AI coding tool. If the setup requires a credential, follow the current instructions in both places and keep it out of normal prompts and visible project content.
- Test the connection. Use fictional or non-sensitive information. Check the normal route and one likely interruption before you rely on the feature.
Naming an API in a prompt can help AI prepare the connection, but it doesn't complete the required setup. If the API requires every visitor to sign in and approve access to their own account, the project needs a more advanced authorization flow, often called OAuth. Keep that version for a later iteration.
For an approved public source, check that its current terms allow the intended reuse, note any attribution requirement, and review its usage limits.
Before AI builds a connection, check whether the proposed setup asks for more access or more sensitive information than the feature needs. Use the activity below to spot choices that should be narrowed or changed.
Which choices should make you pause and narrow or change the setup before building?
Once the feature choices are clear, AI won't have to guess what information to use, where to keep it, or whether another service is involved. Next, you'll combine the feature's goal and setup into a short plan you can review before changing the project.
Turn the Idea Into a Build Plan
You now know what the project should do better and what the feature needs. A short plan brings those decisions together before AI changes the project, so you can review the route, setup, and limits in plain language.

Here's a compact plan for the meeting notes app. Its current flow turns pasted transcripts into organized notes; the new feature uses a transcription API so the user can begin with a short audio file.
| Plan section | Product app example |
|---|---|
| Goal | Turn a short audio file into organized notes without creating the transcript elsewhere. |
| Behavior | Upload one fictional audio file, send it to the transcription API, and run the existing notes flow with the returned text. |
| Setup | The official transcription API, configured through the AI coding tool's current integration flow. |
| Boundary and test | Support one short audio format. Leave live recording and user accounts for later. Confirm that the returned transcript becomes organized notes. |
| What the user sees | A file choice, a transcribing message, the finished notes, or a clear problem message with Retry. |
The last row matters because a working feature should respond visibly. Plan a clear starting point, a working message if the action takes time, the successful result, and what the user can do next if the feature can't finish. A simple local feature may need only a start and success; a connection usually needs a useful problem message too. Detailed edge-case testing comes in the next lesson.
Fill in the Setup line directly inside the next prompt. Use this structure:
Input or source → feature action → result for the user → where information stays or goes → required service, access, or cost
If the feature only uses information already in the project, write no external service needed. If it remembers information, say whether that information should last for the current visit, remain in the same browser, or follow the user across devices. If it connects another service, name the service, the exact information or action it needs, and the narrowest useful access.
Use the next prompt to turn your choices into a plan and reveal any missing setup before AI touches the build.
If any part of the setup is unclear — such as where information should be stored — write what you know in the Setup line and add the unresolved choice there, for example: Storage: unclear — compare suitable options. Ask AI to compare the options, recommend the best fit for this feature, and flag any setup decisions you may have missed. Review the explanation and make the final choice before you approve the plan.
Read the plan before you accept it. Replace any choice AI made on your behalf, and move attractive extras into the later list. The plan should explain the goal, behavior, setup, boundary, test, and visible responses in language you understand.
The plan now explains what you're adding, what it needs, and how the project should respond. Before AI changes the build, save the working version you already have so you can return to it easily.
Save the Working Version, Then Build
Before AI changes the project, save the version you've built that already works. This gives you a clear place to return if the feature doesn't work or changes more than you intended.
Depending on the tool, look for Create checkpoint, Save version, Duplicate, or Commit (save a code version). Name the saved version Before [feature]. The labels and limits vary by tool.
You can use a plain language request. Try the prompt below.
If the tool can't create a restorable version, duplicate or export the project and keep the current brief, flow, build request, and screenshots together.
If you dislike the new result, use the tool's Restore, Revert, or version-history action. You can also ask to return the project to the previous saved version.
Build the Feature
Once the saved version is ready, give AI the feature plan you reviewed. Work in the existing editable project when it's available. If you're rebuilding it in a new chat or tool, include the current brief and main user flow too.
Keep the plan open while AI works. Approve any new service, storage method, permission, or cost only after you understand what it changes. If the tool can't build the planned feature with the setup you approved, choose a smaller version that uses current content, browser behavior, copy, download, or export. Stop after one feature so you can check it before adding another.
Check the Feature and the Original Flow
The new behavior may look convincing in the preview, but you'll see whether it follows the plan only when you use it. Check the feature through the route you defined, compare the result with the original gap, then repeat the original main user flow. Testing with real users, along with the full accessibility, security, and launch checks, comes later.

Check the New Route
Begin with the normal path:
- Return to the feature's starting state.
- Use the planned input, choice, source, or action.
- Confirm that the project shows an immediate, understandable response.
- Check that the expected result appears in the right place.
- Take the planned next action, such as resetting, downloading, copying, retrying, reconnecting, or continuing.
Then check the most relevant interruption. Use an empty input, an unsupported fictional test file, a simulated unavailable-service response, or a fictional test record with one required field missing. Confirm that the project explains what happened, preserves the information the user still needs, and offers the next step from your plan.
- For a feature that remembers, test it in the actual preview address and browser profile, then remove the saved information.
- For an API connection, follow the tool's current testing instructions. Use fictional or non-sensitive information and confirm that the feature sends only the information named in your plan and returns the expected result.
- For an action, inspect the downloaded or exported file, copied content, shareable link, or test notification. When the action uses fictional test data and is easy to undo, repeat it once and confirm that it doesn't create an unwanted duplicate.
- For an adaptive feature, try at least two inputs and confirm that each produces the intended change, including the default or no-match route.
Repeat the Original Flow
A new feature can work while disturbing an earlier step. Follow the original main user flow from its entry point to its useful result. Check that its content, actions, visible responses, and next steps still make sense. If the change touched a one-page website, read the full section order again. If it touched navigation or saved information, also check the flow from a fresh starting state.
Capture one short comparison and keep it as your build record:
Gap and intended change: [The friction you observed and what the feature was meant to improve.]
Actual before → after: [What happened before the change and what the project now does.]
Check evidence: [What happened when you checked the success route, likely interruption, next step after the problem, and original main user flow.]
Decision: [Keep, refine, or restore the earlier version.]
If one part needs work, describe the visible evidence and ask for the smallest correction.
Save the Enhanced Working Version
When the feature and the original main user flow both work as planned, save another checkpoint, version, duplicate, export, or updated recreation record. Label it with the feature and the date so you can distinguish it from the earlier baseline. Keep the comparison record you completed above alongside it.
Once the new feature passes both checks, you've created a working version that performs the planned job more completely. If you paused or restored the earlier version along the way, use what you learned to reduce the scope, rebuild the smaller version, and run the checks again. You've kept control of the change: you chose the goal, checked the setup, reviewed access, planned the visible responses, protected the working flow, and used evidence to decide what stays.
Keep the versions from before and after the change, along with your short comparison notes. In the next lesson, you'll use them to check the whole project, prepare a controlled launch, collect useful feedback, and decide what to improve next.
Next · Lesson 4