Midterm Project
Creating a Website using Django Framework (Group Project)
Published Date: Wednesday, September 22, 2025 12:00 WIB Version 1.0
Specific Learning Objectives
- Design web pages with Responsive Web Design utilizing CSS frameworks
- Implement websites using Django framework fulfilling Models, Views, and Templates
- Implement Unit Testing and PWS deployment
General Group Assignment Rules
-
Each group consists of 5-6 members. Group divisions can be viewed at SCELE & Discord PBP.
-
Each group creates one Git repository to be used by all group members for collaboration. Submit the Git repository link to SCELE.
infoEach group is recommended to use GitHub Organizations to facilitate collaboration between team members. Additionally, for the Final Project assignment later, each group will be asked to create a new repository, and GitHub Organizations can help 'group' these repositories.
-
Each group is free to find their own ideas for the application to be created. The application theme is SPORTS.
-
This theme is chosen as it coincides with current events: the fourth round of 2026 World Cup qualifications held in October 2025. You are free to choose any sport (football, badminton, basketball, etc.) and free to decide the website format, for example:
- Sports equipment store website
- Fansite for specific sports
- Information about sports venues in specific cities/provinces
- Sports news/community portal
-
Each group must determine the main product category that becomes the initial dataset of the group's application. The main product category must contain at least 100 types of products.
-
Each group implements the initial dataset in the form of Models class and stores data from the initial dataset into Django's database. Data sources for the initial dataset can come from anywhere, for example from Kaggle and Wikipedia.
infoTips: If datasets are not available on Google or any other source, you can use scraping techniques for your dataset needs.
-
Each group member works on different modules. Modules are determined by the group according to the application idea discussed within the group.
-
Group assignments are deployed as a unified web application. Each group is expected to use PWS as PaaS for TK project deployment, but each group is also given freedom to deploy on other PaaS platforms.
-
In the
README.md
section, you MUST write:- Description of your website,
- Group member names + NPM,
- List of modules + module descriptions,
- Dataset source link,
- Types of website users,
- PWS link, and
- Website design link (Figma, Canva, etc.) for your group [OPTIONAL].
infoIf you implement Figma for your website UI design, you will get bonus points for this project. Please utilize the group assignment guide to learn more about resources you can use for this assignment.
infoTips: You can utilize various
README.md
writing techniques to create neat and structuredREADME.md
files.
Specific Rules per Group Member
-
Apply Models by creating, utilizing those provided by Django, or utilizing those created by other group members (in other modules).
-
Apply Views to process requests and process data to generate responses using HTML templates or return JSON responses.
-
Apply HTML templates with systematic and efficient frameworks, such as
base.html
,header.html
, andfooter.html
. -
Apply HTML templates using responsive frameworks (such as Bootstrap or Tailwind).
-
Have form pages that can accept user input and then be processed by Views. Examples of processing by Views include inserting data into Models, querying data from Models, and updating data in Models.
-
Implement JavaScript with AJAX calls.
-
Apply information filtering for logged-in users only. For example, address data, age, and phone numbers can only be viewed by logged-in users.
-
Apply filters to the product list from the initial dataset displayed. For example, displaying product lists based on price.
Group Assignment Stages
Stages and deliverables | Deadline and Information |
---|---|
Stage I (40%)
| Deadline: Wednesday, October 8, 2024, at 23:55 WIB Submit to SCELE: GitHub Link with Django project code base prepared on GitHub. |
Stage II (60%) (Modules are well implemented) Checklist:
| Deadline: Friday, October 24, 2024, at 23:55 WIB Submission Criteria: All modules worked on by each group member are visible and accessible. |
Group Assignment Guide
To facilitate your group assignment work, the teaching assistant team has prepared a comprehensive guide that can serve as a reference during the development process. It can be accessed through this Link.