Choose something small enough to finish

A beginner project should teach you how information moves through a program. Start with one user, one recurring task and one type of record. Authentication, payments, chat and complex roles can wait until the basic workflow is reliable.

A useful test: can you describe the first version in one sentence without “and”? For example: “A student can add an assignment and mark it complete.”

The contexts below are prompts, not claims that every Kenyan user has the same needs. Before building for real people, speak with them, test your assumptions and make it easy for them to decline participation.

Eight beginner-friendly project briefs

1. Personal market-price notebook

Minimum
Add an item, place, date and observed price; list records in date order.
Stretch
Filter by item and show the change between two selected entries.
Practise
Forms, numeric validation, dates, sorting and simple charts.
Data note
Enter your own sample observations. Do not imply that a personal log represents an official or nationwide price.

2. Chama meeting-action tracker

Minimum
Create an action, assign a fictional member, set a due date and mark it complete.
Stretch
Add a meeting view that groups open actions without storing financial contributions.
Practise
Status changes, filtering, overdue states and clear empty screens.
Data note
Use invented names. Real group membership and financial records can be sensitive personal data.

3. Matatu commute notebook

Minimum
Save a personally observed route label, boarding point, destination and travel note.
Stretch
Compare your own entries by day or time and add an offline-friendly view.
Practise
Structured records, optional fields, filters and mobile-first layout.
Data note
Present entries as personal notes, not official route, fare, timing or safety information.

4. County-service link directory

Minimum
List a small set of services with the responsible public body's official link and a checked-on date.
Stretch
Add search, a stale-link warning and an accessible print view.
Practise
Content modelling, search, external-link handling and update workflows.
Data note
Link to the responsible institution and show when you checked it. Do not copy instructions as if they cannot change.

5. Study and assignment planner

Minimum
Add a subject, task and due date, then mark the task complete.
Stretch
Create a weekly view and export the user's own records to a file.
Practise
Date logic, state, keyboard controls and browser storage.
Data note
A local-only version does not need a learner's school, registration number or grades.

6. Small-stock practice ledger

Minimum
Add fictional products, record stock in or out and calculate the current quantity.
Stretch
Flag low sample stock and import a well-formed CSV file.
Practise
Arithmetic, validation, table accessibility and import errors.
Data note
Use synthetic products and values. A learning demo is not an audited accounting or inventory system.

7. Farm-activity journal

Minimum
Record a fictional plot label, activity type, date and note.
Stretch
Filter by activity and produce a simple seasonal summary from sample entries.
Practise
Categories, dates, search, summaries and offline states.
Data note
Do not present the app's output as agronomic, chemical-use or weather advice. Link such guidance to qualified official sources.

8. Community-event notice board

Minimum
Display manually reviewed sample events with a title, public venue, date and organiser link.
Stretch
Add accessible filters and a “report outdated information” workflow.
Practise
Cards, date states, moderation thinking and safe external links.
Data note
Avoid private phone numbers or home addresses. Public submission requires moderation and abuse controls.

Build in four passes

  1. Write the core task

    Define the one thing a user must complete and sketch the smallest data shape that supports it.

  2. Make it work locally

    Implement create, read, update or delete actions only where the task needs them. Handle invalid and empty input.

  3. Make it understandable

    Add labels, instructions, keyboard support, responsive layout and clear success or error feedback.

  4. Make it explainable

    Test the main flow, document limitations, remove secrets and publish a README that another learner can follow.

Use data responsibly

Most portfolio projects do not need real personal data. Invent representative records and mark them as samples. Never commit credentials, ID numbers, private phone numbers, precise home locations, payment details, health information or school records.

If a later version genuinely needs information about identifiable people, read current guidance from Kenya's Office of the Data Protection Commissioner before collection. Consider purpose, consent, access, retention and deletion—not only a privacy-policy page.

For login and form features, start with the OWASP Cheat Sheet Series. A demo login stored only in a browser is not equivalent to secure production authentication.

Turn the project into evidence

A reviewer should be able to understand the project even if the demo is temporarily unavailable. Include:

  • The user's problem and the first-version scope.
  • Setup steps tested from a fresh copy of the repository.
  • A short explanation of two important technical decisions.
  • Known limitations, accessibility checks and next steps.
  • Credits and links for tutorials, assets, data and libraries.

Static web projects can be published with services such as GitHub Pages. Read the hosting provider's documentation, ensure no secret is bundled into frontend code, and test the public URL on a phone-sized screen.

References for building well

Frequently asked questions

Which coding project should a complete beginner build first?

Choose a project with one user, one clear task and a small amount of data. A study planner or personal expense log is easier to finish than a marketplace or social network. The best first project is one you can test yourself without collecting other people's information.

Do I need real user data for a portfolio project?

No. Use invented sample records or data that is clearly licensed for reuse. Synthetic data lets you demonstrate validation, filtering and reporting without exposing real phone numbers, names, locations, financial records or school information.

How many projects should I put in my portfolio?

There is no required number. A small set of finished projects that you can explain is more useful than many unfinished clones. Select work that shows different decisions, document your contribution and remove projects you can no longer support or discuss.

Is it acceptable to follow a coding tutorial?

Yes, when you use it to learn and credit the source. To make the result evidence of your own skill, change the problem or constraints, add a feature without step-by-step instructions, write your own explanation and be ready to discuss every important part.