Skip to content

Latest commit

 

History

History
99 lines (59 loc) · 7.37 KB

project.md

File metadata and controls

99 lines (59 loc) · 7.37 KB

Full Stack -web development project 5, 7 or 10 credits (Last updated 7.3.2026)

Please read the instructions below carefully.

In the project you create an application of your choice with React and/or Node. Also a mobile application created with React Native is possible.

The backend for the application does not have to be in Node. Backend does not have to be self made, ready interfaces or services such as Firebase will do. Frontend is also possible to make with some other reasonable way than React, e.g. with Vue.js, in which case it is recommended for the application have a Node backend.

Amount of credits is determined by the working hours, where one credit is 17.5 hours. The limits are 87.5 hours for 5 credits, 122.5 hours for 7 credits and 175 hours for 10 credits. It is also calculated that 9.5 hours of independent study of the techniques used in the practice work will take place for each credit.

The grading is pass/fail.

You will automatically get a failing grade if the application is not done by yourself or if the hour keeping and GitHub commit history do not match reasonably. All the hours put into the project are counted, so even working a backend with something other than Node, counts.

Reviewing course material, however, does not count.

For a passing grade it is expected that the used hours show in the end product in some meaningful way. If eg. applying for 10 credits, we expect that your application has more than one or two functionalities. An example of a good base line is that your application performs various database operations, ie. CRUD operations (create, read, update, and save). Alternatively it employs only some (but more than one) of them in various ways. Testing and for example automating the deployment pipeline and other such notable configurations are naturally positively counted towards your project's scale.

If you project has very limited functionalities/techniques, you might be asked to expand your project a bit, especially for the 7 and 10 credit versions.

Please note: It is not sufficient that implemented features work only on your machine, but they also must work in your application that is deployed to the internet. University of Helsinki students have access to Kubernetes based OKD-cluster for project deployments. This is NOT applicable to Open University/Mooc students.

It is also possible to do the project as a pair or a team.

The Discord channel for the Full Stack Course https://study.cs.helsinki.fi/discord/join/fullstack works also for this project.

Attending and registering your subject

There is no need to register for the course if you are using the technologies that the Full stack course covers. If you have doubts, send email to matti.luukkainen@helsinki.fi

Use of generative language models

It is permitted to use generative models both for coding and for drafting documentation. Please, add to the README an explanation what model you used and what you used it for.

Additionally, if any file is entirely or almost entirely generated by the models, mark it clearly on the top of the file. We want to provide feedback for your work, and not for the generated portion. For example:

/*
  This file has been mostly generated by AI
*/

Guidelines for Using Video Tutorials

Using video tutorials can be a helpful way to learn new skills and understand concepts, especially when you're starting with a new technology or framework. However, for the full stack course project, it's essential to demonstrate your own understanding and abilities learned in the course. To ensure your project showcases your personal skills and effort, please follow these guidelines when using video tutorials as a reference.

Requirements for the returned application

  • In the README of your repository, you must have all of the following:

    • Link to an address where the application is running. For a React Native mobile app built with Expo, the repository must include a QR code that allows the app to be launched in the Expo mobile app. In other cases, the app demo will be agreed on a case-by-case basis.
    • Some user instructions and explanation of the purpose of your project (ie. what does it do), or a link to them
    • Link to work hours listing. Do it as a .md, pdf, or in some way that is immediately visible (ie. no file download required)
      • Sufficient precision level for time keeping is this
      • The time keeping must include the total sum of spent hours
      • Time keeping and repository commit history must reasonably match each other. Do intermediate commits!
      • If working with a pair or a group, everyone keeps their own hours.
    • If your project is split into several repositories, a link to the other repositories
    • Explanation of AI use (see the Use of Generative Language Models section)
  • Your repository and code base must be presentable. No out-commented or otherwise unused code or such.

If some of the above mentioned requirements are not satisfied when applying for credits, your project will not be graded, and you will be asked to fix them.

Why?

Your repository is your greeting card, especially when applying for a job. No recruiter will appreciate having to dig through a messy repository to evaluate your skills. (Neither will instructors) Many will not do it at all. It's a good idea to stick to good practices whenever possible.

Deploying on OKD-cluster

University of Helsinki students have access to Kubernetes based OKD-cluster for project deployments. This is NOT applicable to Open University/Mooc students. To use the cluster please apply by sending an email with your student id/username to grp-okd-cs-admins@helsinki.fi. Access is always granted until end of next May, making the maximum access time one year. Access is granted as self-provisioner permission, but more on that and usage of the cluster in the guide.

Finishing the application and grading

When your project is ready for grading do ALL of the following:

(1) Register to a course instance that corresponds to your working hours

(2) Fill out this form https://docs.google.com/forms/d/e/1FAIpQLSfJxtLyWugefPSPHynZcZnrsNt4IGqhpr5M7dF5jgZZ6ASqsQ/viewform

(3) Send an email to matti.luukkainen@helsinki.fi

  • In the email you need to specify your student number and GitHub account

(4) If you have a private repository, add both users mluukkai and ogkarhu as collaborators

The project will not be graded until ALL OF THE PRECEDING steps have been completed

The review takes roughly 4 weeks. You will get some feedback on your project as a GitHub issue.