Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

The work you submit for this assignment must be your own independent work, or in the case of a group assignment your own groups’ work. More information is available in the ‘Assignment Task’ section of this assignment brief.
Assignment Information
Module Name: Web API Development
Module Code: 6005CMD
Assignment Title: REST API Software Portfolio
Assignment Due: 30th March 2026
Assignment Credit: 20
Word Count (or equivalent): 2000
Assignment Type: Prj
Percentage Grade (Applied Core Assessment). You will be provided with an overall grade between 0% and 100%. 

You have one opportunity to pass the assignment at or above 40%.This document is intended for Coventry University Group students for their own use in completing their assessed work for this module. It must not be passed to third parties or posted on any website.

Assignment Task

You work for a company that specialises in providing API-backed web applications to small and medium sized enterprises (SMEs) and charities. The company has several clients and a large backlog

of projects which need to be completed.

You have been asked to complete ONE project from the existing client list (below) to reduce the backlog. Do not do any other project not on the list.

To complete the project you select, your manager has specified you do the following subtasks:

1. Write a feasibility report to contain the following:
a. A brief introduction to the document.
b. A definition and comparison of RESTful API with at least another one HTTP-based API architectural styles, with a critical evaluation of each one in the context of the client's requirements.
c. A solution recommendation for the client with a clear justification based on REST, Koa Node.js, MySQL and Vue.js for the client.
d. A software architecture design diagram for the proposed solution.
e. A conclusion and a list of all references used.
2. Build a secure RESTful API using Node JS libraries, to implement your OAS design.
3. Design and implement automated API endpoint tests, to verify your API works according to specification.
4. Build a functional and secure web client single page application (SPA) for the API.
5. Create an industry standard OpenAPI Specification (OAS) document that describes and fully documents your API.
6. Showcase your API and client/integration in a demonstration video.

Your developed API should be populated with realistic user/resource/collection data to show it working in the demonstration and/or in the automated tests.

Marks Breakdown
For an explanation of how the marks are divided between the subtasks, see the grading rubric at the end of this document. Project Backlog Choose one of the following API services to develop for your project or propose your own using the form below. Some example REST resources are provided after the service names, but these are just suggestions: it is up to you to decide which resources/collections your RESTful API will provide and manage.

NB: as this is an individual portfolio project assessment, students submitting the same project will be carefully compared for similarity/possible plagiarism. Please do not share code with your classmates.

1. Social media platform API (e.g. users, posts, comments, likes)
2. E-commerce platform API (e.g. products, categories, orders, payment)
3. Calendar and scheduling API (e.g. events, reminders, attendees)
4. Weather forecast API (e.g. current weather, forecast, alerts)
5. News aggregator API (e.g. sources, articles, categories)
6. Translation API (e.g. text, speech, languages)
7. Music streaming API (e.g. songs, albums, artists, playlists)
8. Recipe search and management API (e.g. recipes, ingredients, meal plans)
9. Fitness and wellness tracking API (e.g. exercise, nutrition, progress)
10. Public transportation schedule and route API (e.g. buses, trains, stops)This document is intended for Coventry University Group students for their own use in completing their assessed work for this module. It must not be passed to third parties or posted on any website.
11. Movie and TV show database API (e.g. titles, cast, reviews)
12. Real estate listings API (e.g. properties, agents, locations)
13. Job listing and application API (e.g. jobs, resumes, applications)
14. Book and literature database API (e.g. books, authors, reviews)
15. Currency exchange rate API (e.g. rates, conversion)
16. Public data and statistics API (e.g. GDP, population, crime)
17. Image recognition and tagging API (e.g. image, labels, description)
18. Video hosting and sharing API (e.g. videos, channels, comments)
19. Geolocation and mapping API (e.g. maps, routes, points of interest)
20. Gaming platform API (e.g. games, scores, leaderboards) OR your own API service idea (must be proposed to, and confirmed by, Module Leader)

The resources managed by your REST API should have appropriate CRUD endpoints and you should aim to include middleware to ensure that appropriately structured JSON data is used in the relevant requests and responses, and to ensure that the API is secure (authentication and authorisation).

Realistic example data should be populated into all your API's resources for the purposes of demonstration and testing.
Submission Instructions:
The following must be submitted for this assessment.
1. CU GitHub
  • Commit and push all code and documentation to a private repository on Coventry University GitHub and then add the module leader as a collaborator ([email protected]).
  • Do NOT use the general github.com for your submission - it will not be marked, and you will receive a zero grade for the implementation, testing and functionality.
  • If the module leader cannot access your Coventry Github repository, you will receive a zero grade for the implementation, testing and functionality.
2. Aula HandIn
  • Upload a 10-minute narrated video demonstrating your Server API, SPA API client, and API endpoint tests:
    • API endpoint functionality should be demonstrated on screen using Postman or a similar HTTP request-response GUI with the server running.
    • SPA API client functionality should be demonstrated in a browser.
    • API tests should be demonstrated by running them on screen and showing their output (e.g., in the Terminal/Command Prompt).
    • If yo  don't upload an appropriate video, you will receive a zero grade for the implementation, testing and functionality.
  • Upload a document containing:
    • The feasibility report.
    • The API documentation (in the Appendix)
    • URL links to your CU GitHub repository, along with any relevant instructions on starting the API server and client. (in the Appendix)
Backend
All the backend services you develop should provide a Node JS based RESTful API. This must communicate with your application using the JSON data format. You must use the Koa Node JS framework to build the backend. Do not use other alternative frameworks.
Database

You should only use MySQL for your database. Do not use other databases.

Frontend

For your frontend, it should be a Vue.js single page application (SPA) web client. Do not use any other different framework.

Marking and Feedback

How will my assignment be marked?

How will I receive my grades and feedback?

When the marks are released, you will be provided with:

1. A breakdown of marks you received for each part of the rubric.
2. Feedback explaining this decision indicating why you missed the higher grade.

What will I be marked against?

Details of the marking criteria for this task can be found at the bottom of this assignment brief.

Assessed Module Learning Outcomes

The Learning Outcomes for this module align to the marking criteria which can be found at the end of this brief. Ensure you understand the marking criteria to ensure successful achievement of the assessment task. The following module learning outcomes are assessed in this task:
1. Demonstrate systematic knowledge of the current state of the art in web technologies being deployed by mainstream businesses to create Web APIs.
2. Scope, design and implement a simple Web API to solve a given problem.
3. Understand and implement Web API security and authentication.

Assignment Support and Academic Integrity

If you have any questions about this assignment please see the Student Guidance on Coursework for more information. This document is intended for Coventry University Group students for their own use in completing their assessed work for this module. It must not be passed to third parties or posted on any website.
Spelling, Punctuation, and Grammar:
You are expected to use effective, accurate, and appropriate language within this assessment task.
Academic Integrity:

The work you submit must be your own, or in the case of groupwork, that of your group. All sources of information need to be acknowledged and attributed; therefore, you must provide references for all sources of information and acknowledge any tools used in the production of your work, including

Artificial Intelligence (AI). We use detection software and make routine checks for evidence of academic misconduct.

Definitions of academic misconduct, including plagiarism, self-plagiarism, and collusion can be found on the Student Portal. All cases of suspected academic misconduct are referred for investigation, the outcomes of which can have profound consequences to your studies. For more information on academic integrity please visit the Academic and Research Integrity section of the

Student Portal.

Support for Students with Disabilities or Additional Needs:

If you have a disability, long-term health condition, specific learning difference, mental health diagnosis or symptoms and have discussed your support needs with health and wellbeing you may be able to access support that will help with your studies.

If you feel you may benefit from additional support, but have not disclosed a disability to the University, or have disclosed but are yet to discuss your support needs it is important to let us know so we can provide the right support for your circumstances. Visit the Student Portal to find out more.

Unable to Submit on Time?

The University wants you to do your best. However, we know that sometimes events happen which mean that you cannot submit your assessment by the deadline or sit a scheduled exam. If you think this might be the case, guidance on understanding what counts as an extenuating circumstance, and how to apply is available on the Student Portal.

Administration of Assessment

Module Leader Name: Jeffrey Ting
Module Leader Email: [email protected]
Assignment Category: Portfolio
Attempt Type: Main attempt
Component Code: Prj
Assessment Marking Criteria

Mark allocation guidelines for: RESTful API Full Stack Software Portfolio. Evidence used for grade allocations: demonstration video, runnable API, documentation, client application, GitHub code repositories.