Skip to content

Final Year Project ideas for Computer Science and Software Engineering

24 project ideas in the four domains we mentor: full-stack web development, mobile apps in React Native, ERP solutions and cybersecurity. Each one is a starting point with a real problem, a suggested scope and stack, what makes it final-year level, and the mistake groups most often make with it.

  • Ideas to shape, not projects to copy
  • Scope, stack and pitfalls for each
  • Free first FYP consultation

How to use these ideas

  • Treat each idea as a problem to solve, not a feature list to copy. Your supervisor will ask what is new about your version.
  • Change the users, the setting or one core feature so the project fits your university, your city or a real organisation you can talk to.
  • Cut the scope until your group can finish it with time left for testing, the report and the viva.
  • Pick a stack at least one group member already knows. Learning everything from zero in the final year is the most common reason projects slip.
  • Check the idea against your department's FYP guidelines before you write the proposal.

Not sure how to judge an idea? Read our guide: How to choose an FYP topic and plan it step by step.

Full-stack web development

Web projects let a group show the whole system: interface, API, database, authentication and deployment. Examiners look for more than screens, so plan the back end and data model as carefully as the front end.

  • Clinic appointment and e-prescription system

    Difficulty: Standard

    Small clinics still book patients by phone and write prescriptions by hand, so double bookings and lost records are common.

    Core features

    • Patient, doctor and admin roles with separate dashboards
    • Doctor schedules, slot booking and cancellation
    • Digital prescriptions saved to the patient's history
    • Email or SMS reminders before appointments
    Suggested stack
    React or Next.js, Node.js with Express, PostgreSQL
    What makes it final-year level
    Role-based access control, and preventing two patients booking the same slot at the same moment.
    Watch out for
    Building polished screens first and leaving the booking rules and data model until the last month.
  • Event ticketing with QR check-in

    Difficulty: Standard

    University societies sell tickets through forms and spreadsheets, oversell events and check people in from printed lists.

    Core features

    • Organisers create events with seat limits and ticket types
    • Attendees receive a ticket with a unique QR code
    • A check-in page that scans codes and rejects reused tickets
    • Live attendance and sales reports for organisers
    Suggested stack
    Next.js, Node.js, PostgreSQL, a QR code library
    What makes it final-year level
    Database transactions so the last seat can never be sold twice, and tickets that cannot be forged or reused.
    Watch out for
    Adding real payments too early. Use a payment provider's test mode, or leave payment out of scope.
  • Online examination system with a question bank

    Difficulty: Challenging

    Teachers spend hours setting and marking short quizzes, and online tests are easy to share between students.

    Core features

    • A question bank tagged by topic and difficulty
    • Randomised papers, so no two students see the same order
    • Timed tests with automatic marking of objective questions
    • Results analysis by question and by topic
    Suggested stack
    React, Node.js or Django, PostgreSQL
    What makes it final-year level
    Server-side timing that cannot be tampered with from the browser, and fair randomisation from a tagged bank.
    Watch out for
    Promising cheating prevention you cannot deliver. Define exactly which risks the system reduces.
  • Volunteer and blood donor matching portal

    Difficulty: Standard

    Hospitals and NGOs post urgent requests on social media and wait for someone nearby to see them.

    Core features

    • Donor or volunteer profiles with availability and location
    • Requests matched to the nearest suitable people
    • Map view with OpenStreetMap
    • Notifications and a record of responses
    Suggested stack
    React, Node.js, MongoDB with geospatial queries
    What makes it final-year level
    Location-based matching rules, and privacy: what personal data is shown, to whom and when.
    Watch out for
    Storing exact home locations. Collect the least data that still makes matching work.
  • Multi-vendor marketplace for local sellers

    Difficulty: Challenging

    Home-based sellers rely on chat apps to take orders, track stock and handle delivery.

    Core features

    • Seller stores with their own products and stock
    • One cart that splits into an order per seller
    • Order tracking and delivery status
    • Admin reports on sales and commission
    Suggested stack
    Next.js, Node.js, PostgreSQL
    What makes it final-year level
    Splitting one checkout across sellers while keeping stock and order states consistent.
    Watch out for
    Building a generic shop from a tutorial. Decide early what your marketplace does that an ordinary shop does not.
  • Campus lost-and-found with moderation

    Difficulty: Standard

    Lost items are reported on scattered group chats, and most are never matched to their owners.

    Core features

    • Lost and found posts with photos, category and place
    • Search and filters, with suggested matches
    • Private messaging to arrange a return
    • Reporting and moderation tools for admins
    Suggested stack
    React, Node.js, MongoDB, Socket.IO for messages
    What makes it final-year level
    A matching feature that suggests likely owners, and moderation that keeps the platform safe.
    Watch out for
    Letting real-time chat take over the timeline. Simple messages may be enough.
Build the skills: JavaScript, TypeScript and React course

Mobile apps with React Native

React Native lets one code base run on Android and iOS. Strong mobile FYPs use what a phone does well: notifications, location, the camera and working without a connection.

  • Shared expense tracker for hostels and flatmates

    Difficulty: Challenging

    Students sharing rooms lose track of who paid for what, and settling up causes arguments.

    Core features

    • Groups, shared expenses and custom splits
    • Works offline and syncs when back online
    • A settle-up screen with the fewest payments needed
    • Monthly summaries by category
    Suggested stack
    React Native (Expo), SQLite on the device, Node.js or Firebase
    What makes it final-year level
    Offline-first sync with conflict handling, and an algorithm that minimises the number of settle-up payments.
    Watch out for
    Underestimating sync. Decide early what happens when two people edit the same expense offline.
  • Medicine reminder and refill tracker

    Difficulty: Standard

    Elderly patients miss doses and run out of medicine, and family members cannot see when this happens.

    Core features

    • Medicine schedules with local notifications
    • Marking doses as taken or missed
    • Refill reminders based on the pills left
    • A caregiver view for a family member
    Suggested stack
    React Native, local notifications, Node.js with PostgreSQL
    What makes it final-year level
    Reliable scheduled notifications on both platforms, and safe sharing between patient and caregiver accounts.
    Watch out for
    Giving medical advice. The app records and reminds; it never suggests doses.
  • Campus shuttle tracker

    Difficulty: Challenging

    Students wait at stops without knowing where the university bus is or when it will arrive.

    Core features

    • A driver app that shares location during a route
    • A student app with the bus on a live map
    • Estimated arrival at each stop
    • Route and timetable management for admins
    Suggested stack
    React Native, maps, Node.js with Socket.IO
    What makes it final-year level
    Real-time location updates at scale, and arrival estimates that stay sensible when the bus stops or loses signal.
    Watch out for
    Draining the driver's battery. Plan background location and update intervals carefully.
  • Class attendance with rotating QR codes

    Difficulty: Standard

    Paper attendance is slow, and students mark friends present when they are not in class.

    Core features

    • Teachers display a QR code that changes every few seconds
    • Students scan it in the app to mark attendance
    • Optional check that the phone is on campus
    • Attendance reports per course and per student
    Suggested stack
    React Native, Node.js, PostgreSQL
    What makes it final-year level
    Codes that expire quickly and cannot be reused, and a clear account of which kinds of proxy attendance the design prevents.
    Watch out for
    Collecting more location data than needed. Check only what the attendance rule requires.
  • Surplus food donation app

    Difficulty: Standard

    Restaurants throw away good food at closing time while nearby charities need it.

    Core features

    • Restaurants post surplus food with a pickup window
    • Charities claim a donation, first come first served
    • Push notifications to nearby charities
    • A history of donations for both sides
    Suggested stack
    React Native, push notifications, Node.js, MongoDB
    What makes it final-year level
    Fair claiming when several charities respond at once, and expiry rules that remove old posts automatically.
    Watch out for
    Assuming organisations will use it. Speak to one restaurant and one charity before you write the proposal.
  • Vocabulary app with spaced repetition

    Difficulty: Standard

    Students cram vocabulary before tests and forget it within weeks.

    Core features

    • Word decks by subject or language
    • A spaced-repetition schedule for each card
    • Streaks and progress statistics
    • Offline study, synced later
    Suggested stack
    React Native, SQLite on the device, Node.js
    What makes it final-year level
    Implementing and explaining a spaced-repetition algorithm, and testing it with real users.
    Watch out for
    Spending the year on design and gamification. The scheduling logic is what examiners will ask about.
Build the skills: JavaScript, React and React Native course

ERP solutions

An ERP (Enterprise Resource Planning) system connects the day-to-day work of an organisation, such as stock, sales, staff and finance, in one database. A good ERP FYP does a few modules well for one real kind of business, rather than every module badly.

  • School management ERP

    Difficulty: Challenging

    Small private schools manage admissions, attendance, fees and results in separate registers and spreadsheets.

    Core features

    • Admissions and student records
    • Daily attendance by class
    • Fee vouchers, payments and dues
    • Results, report cards and a parent portal
    Suggested stack
    React, Node.js or NestJS, PostgreSQL
    What makes it final-year level
    Permissions across several modules and roles, and reports that combine attendance, fees and results.
    Watch out for
    Trying to build every module. Choose three or four and finish them properly.
  • Inventory and point of sale for small retailers

    Difficulty: Standard

    Shop owners do not know their real stock or profit until they count everything by hand.

    Core features

    • Products, categories and barcode scanning
    • Sales at the counter with receipts
    • Purchases from suppliers and stock levels
    • Low-stock alerts and daily profit reports
    Suggested stack
    React, Node.js, PostgreSQL or MySQL
    What makes it final-year level
    Keeping stock consistent across sales, returns and purchases, and accurate profit reporting.
    Watch out for
    Leaving returns and stock corrections out. They are where most stock errors come from.
  • HR, leave and payroll module

    Difficulty: Standard

    Small companies calculate salaries, leave and deductions manually each month.

    Core features

    • Employee records and departments
    • Leave requests and approvals
    • Attendance linked to payroll
    • Monthly salary slips with allowances and deductions
    Suggested stack
    React, Node.js, PostgreSQL
    What makes it final-year level
    Configurable payroll rules, and an approval workflow with a full audit trail.
    Watch out for
    Assuming one set of tax and salary rules. Document the rules your system follows.
  • Restaurant operations ERP

    Difficulty: Challenging

    Restaurants lose money on wasted ingredients because stock is not linked to what is sold.

    Core features

    • Orders from tables, takeaway and delivery
    • A kitchen display for incoming orders
    • Recipes that deduct ingredients from stock automatically
    • Daily sales, waste and stock reports
    Suggested stack
    React, Node.js, PostgreSQL, Socket.IO for the kitchen display
    What makes it final-year level
    Linking each menu item to its ingredients so every sale updates stock, and real-time order flow to the kitchen.
    Watch out for
    Underestimating the recipe and unit model (grams, pieces, litres). Design it first.
  • Pharmacy stock with batch and expiry tracking

    Difficulty: Standard

    Pharmacies sell from the wrong batch or discover expired medicine only during a stock check.

    Core features

    • Medicines with batches, expiry dates and suppliers
    • Sales that use the batch expiring first
    • Expiry and low-stock alerts
    • Purchase orders and supplier history
    Suggested stack
    React, Node.js, PostgreSQL
    What makes it final-year level
    Batch-level stock and first-expiry-first-out selection, with reports a pharmacist would trust.
    Watch out for
    Skipping real data. Ask a local pharmacy which reports they need before designing screens.
  • Project cost tracking for small contractors

    Difficulty: Standard

    Small construction and maintenance firms only find out a project went over budget when it is finished.

    Core features

    • Projects with budgets by category
    • Material purchases and labour costs per project
    • Budget against actual spending, as it happens
    • Client invoices and payment tracking
    Suggested stack
    React, Node.js or Django, PostgreSQL
    What makes it final-year level
    Live budget-versus-actual reporting, and clear cost categories that make overruns visible early.
    Watch out for
    Designing for every industry. Pick one kind of contractor and model their real workflow.
Build the skills: Object-Oriented Programming course

Cybersecurity

Security projects need a clear threat, a defence you can measure and an ethical test plan. Every idea here is built and tested only in your own lab or on systems you are authorised to test.

  • Phishing link checker browser extension

    Difficulty: Standard

    Users click links in emails and messages without any warning that the site may be fake.

    Core features

    • Checks links against public blocklists
    • Warning signs such as look-alike domains and suspicious URLs
    • A clear warning page with the reasons
    • A dashboard of blocked and reported links
    Suggested stack
    JavaScript browser extension, Python or Node.js back end
    What makes it final-year level
    A tested set of detection rules, measured against known safe and known phishing URLs from public datasets.
    Watch out for
    Claiming it catches every phishing site. Report how often it is right and wrong.
  • Zero-knowledge password manager

    Difficulty: Challenging

    People reuse weak passwords because remembering strong ones is hard.

    Core features

    • A vault encrypted on the user's device before upload
    • A master password with a strong key-derivation function
    • A password generator and strength meter
    • A breach check that never sends the full password
    Suggested stack
    React or React Native, Web Crypto API, Node.js, PostgreSQL
    What makes it final-year level
    Correct use of established cryptography (no home-made algorithms), and a server that cannot read the vault.
    Watch out for
    Inventing your own encryption. Use well-reviewed libraries and explain why you chose them.
  • Web vulnerability scanner for a local lab

    Difficulty: Challenging

    Student and small-business web apps go live with common flaws such as missing security headers and injection risks.

    Core features

    • Crawls a target web app in a local lab
    • Checks security headers, cookies and TLS settings
    • Tests for common injection and XSS patterns
    • A report that explains each finding and how to fix it
    Suggested stack
    Python, tested against deliberately vulnerable apps such as DVWA or OWASP Juice Shop
    What makes it final-year level
    Comparing results with an established scanner, and keeping false positives low.
    Watch out for
    Scanning sites you do not own. Test only in your lab; it is both a legal and an ethical requirement.
  • Log-based intrusion detection dashboard

    Difficulty: Standard

    Small servers record failed logins and suspicious requests in logs nobody reads.

    Core features

    • Collects SSH and web server logs
    • Detects brute-force attempts and unusual request patterns
    • Alerts by email or a messaging app
    • A dashboard of events over time
    Suggested stack
    Python, a time-series or relational database, a web dashboard
    What makes it final-year level
    Detection rules tested against simulated attacks in your own lab, with false alarms measured.
    Watch out for
    Building only a dashboard. The detection logic is the project.
  • Secure file sharing with expiring links

    Difficulty: Standard

    Sensitive documents are shared as email attachments and stay in inboxes for years.

    Core features

    • Files encrypted before upload
    • Share links that expire after a time or number of downloads
    • Optional password on each link
    • An access log for every file
    Suggested stack
    Next.js, Node.js, object storage, PostgreSQL
    What makes it final-year level
    Key handling that keeps files unreadable to the server, and reliable expiry.
    Watch out for
    Leaving key management vague. Explain exactly where each key lives.
  • Network traffic analyser for a home or lab network

    Difficulty: Challenging

    Home and small-office users have no idea which devices on their network talk to what.

    Core features

    • Captures traffic on a network you control
    • Shows devices, protocols and data volumes
    • Flags signs of port scans and unusual connections
    • Exports reports for later analysis
    Suggested stack
    Python with Scapy, a web dashboard
    What makes it final-year level
    Accurate protocol breakdowns and scan detection tested with tools run inside your own lab.
    Watch out for
    Capturing other people's traffic. Use only your own network or lab, with permission.
Build the skills: Cybersecurity fundamentals course

From idea to proposal

Once an idea feels right, turn it into a proposal your supervisor can approve. These steps keep it realistic.

  1. Write the problem in two sentences

    Who has the problem, and what goes wrong for them today. If you cannot say it simply, the scope is not clear yet.

  2. Talk to a real user

    A clinic, a shop, a society or a teacher. One conversation usually changes the feature list for the better.

  3. Cut the scope

    List every feature, then mark the ones the project cannot work without. Build those first; the rest are extras.

  4. Choose the stack and divide the work

    Pick tools the group can learn in time, and split the work by module so each member can explain their part in the viva.

  5. Get feedback before you submit

    Ask your supervisor, or book a free consultation with a mentor, to check the scope and stack before the proposal is final.

Your project stays your own

These ideas are starting points. We mentor, review and ask the questions examiners will ask, but we never build, write or sell projects. Follow your department's rules on outside help and AI tools.

FYP Mentoring

Questions · 7

Frequently asked questions

The questions students and parents ask us most, filed where you can find them. Pull a card to read it.

Can I use one of these ideas for my final year project?

Yes, as a starting point. Other students can read this page too, so shape the idea around a real user, setting or feature of your own, and check it against your department's guidelines and with your supervisor.

How do I know whether an idea is big enough for an FYP?

A final-year project usually needs a real problem, more than simple forms over a database, and at least one part that is technically hard, such as real-time updates, security, offline sync or a non-trivial algorithm. Each idea here lists what gives it that depth.

Which FYP domains do you mentor?

Four: full-stack web development, mobile apps built with React Native, ERP solutions, and cybersecurity. Tell us your idea and stack, and we confirm a suitable mentor before you book.

FYP Mentoring

Can a group of three or four students share one idea?

Yes. Most ideas here split naturally into modules, for example the front end, the back end and database, and the mobile or security part. Give each member a module they can explain on their own in the viva.

Can you build the project or write the proposal for us?

No. We teach, review your work and help you scope and plan, but the code, the proposal and the report must be yours. Having someone else build or write graded work is academic dishonesty.

How can a mentor help at the idea stage?

In a free first consultation, a mentor helps you test whether the idea is feasible, cut it to a size your group can finish, and compare stacks, so the proposal you submit is one you can deliver.

How much does FYP mentoring cost?

Mentoring is quoted per project after the free first consultation, because projects differ in scope, stage and group size.

Fees

Not in the drawer? Send us your question and we reply within 24 hours.

Ask us

Picked an idea? Check it before you write the proposal

Book a free FYP consultation. A mentor helps you check the scope, the stack and the plan, and you leave knowing what to build first.

Can’t use WhatsApp? Call +92 317 5700456 or email info@mysubjecthub.com.