From a07618559fdf5ed2bb47feffd15dab73309f1c55 Mon Sep 17 00:00:00 2001
From: Inesh Bose <2504266b@student.gla.ac.uk>
Date: Fri, 8 Apr 2022 15:32:40 +0100
Subject: [PATCH] Wrap up
---
.gitattributes | 2 +-
README.md | 4 ++--
dissertation/README.md | 53 ++++++++++++++++++++++++++++++++++++++++-
dissertation/l4proj.cls | 44 +++++++++++++++++-----------------
docs/index.md | 10 +++++++-
docs/log_parser.py | 6 ++++-
timelog.md | 30 +++++++++++++++++++++++
7 files changed, 121 insertions(+), 28 deletions(-)
diff --git a/.gitattributes b/.gitattributes
index abd5657..5960223 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,2 +1,2 @@
*.example linguist-detectable=false
-dissertation/l4proj.tex linguist-vendored
+*.tex linguist-vendored
diff --git a/README.md b/README.md
index 7d5054c..51d67fb 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@ Portion Mate is an application that helps keep track of your food intake. This p
- [Getting Started](https://github.com/ineshbose/portion-mate/blob/develop/src/manual.md)
- [App Documentation](https://portion-mate.readthedocs.io/)
- [Repository Wiki](https://github.com/ineshbose/portion-mate/wiki/)
-- [Dissertation (WIP)](#)
+- [Dissertation](https://ineshbose.github.io/portion-mate/dissertation.pdf)
@@ -48,7 +48,7 @@ Portion Mate is an application that helps keep track of your food intake. This p
Dependency managers |
-
+
|
diff --git a/dissertation/README.md b/dissertation/README.md
index 609844c..bf82e71 100644
--- a/dissertation/README.md
+++ b/dissertation/README.md
@@ -8,7 +8,58 @@
Dissertation
-
+
+
+
+
+
+## _Abstract_
+
+> The Eatwell Guide is a recommendation given by Public Health England on having a balanced diet. Following and maintaining a diet may be difficult for people, and logging can help them keep track of their plan. However, the task of logging itself can also require a lot of commitment which can cause people inconvenience and make them give it up.
+>
+> This project aims to develop an application that solves these problems of maintaining a diet plan; this was achieved through months of research and development into users, food and logging, in order to create a fully-integrated and convenient system that does not add a burden onto users, but rather motivates them to adhere to their plan. Considering the time-frame, this project also leaves development open-ended with scope for future work that can be passed over to or taken over by developers who can make use of the open-source side projects created and best practices followed by the system without great difficulty.
+>
+> To confirm the usability of the application, evaluation was carried out through a survey where participants could share their thoughts with the help of System Usability Scale that also in-turn helps in analysing the results to a score that deemed the system as acceptable.
+
+## About This Document
+
+This document follows the [provided template (`/dissertation @ 89738d2`)](https://github.com/ineshbose/portion-mate/tree/89738d2aa8959f847b1b542e6dc466de8165126b/dissertation) that can be found on [Overleaf](https://www.overleaf.com/latex/templates/university-of-glasgow-level-4-computing-science-project-template/spqpnkvzjdbw) and [GitHub](https://github.com/johnhw/l4template). It provides a class module file [`l4proj.cls`](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls) with attribution to the authors and modifiers.
+
+```tex
+\ProvidesClass{l4proj}[%
+ 2009/01/09 Colin Perkins .%
+ 2009/09/16 Modified by Tim Storer to support non pdf modes.%
+ 2011/02/15 Modified by Gregg Hamilton for use in final year projects.%
+ 2012/10/18 Modified by Patrick Prosser, use geometry to control margins, simplified.%
+ 2018/09/14 Modified by John Williamson, improve typographic appearance%
+]
+```
+
+However, this class has been extended with features such as supporting syntax highlighting for [JavaScript](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L603), [TypeScript](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L661), [YAML](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L648), and [TOML](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L669) using [`listings`](https://ctan.org/pkg/listings) (not [`minted`](https://ctan.org/pkg/minted)), and autogenerating labels for [headings](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L511) and [figures](https://github.com/ineshbose/portion-mate/blob/develop/dissertation/l4proj.cls#L274).
+
+Majority of writing and working with [LaTeX](https://www.latex-project.org/) was with [Overleaf](https://overleaf.com/), and required a separate repository since branching and symlinks are not supported as of yet (changes are still synchronised here). The chapters have been divided into separate files (using [`subfiles`](https://ctan.org/pkg/subfiles)) in [`chapters/`](https://github.com/ineshbose/portion-mate/tree/develop/dissertation/chapters), and compilation is through [**`pdflatex`**](https://www.tug.org/applications/pdftex/) that requires `--shell-escape` and [`inkscape`](https://inkscape.org/) enabled for [`svg`](https://ctan.org/pkg/svg) support. Referencing was managed using [Zotero](https://zotero.org/) and their [API](https://api.zotero.org/), split into separate files. These are added using [`biblatex`](https://ctan.org/pkg/biblatex) with the default `numeric` style.
+
+```tex
+%=============================================================================
+% CHAPTER NAME
+% description about chapter
+
+% ## Guidance
+
+% - Some guidance about the chapter if provided or necessary.
+
+% - This would help in writing and fill criterias.
+%=============================================================================
+
+\documentclass[../main.tex]{subfiles}
+% \graphicspath{{\subfix{../images/}}}
+
+\begin{document}
+
+% contents ..
+
+\end{document}
+```
diff --git a/dissertation/l4proj.cls b/dissertation/l4proj.cls
index 93a1e70..57fce9a 100644
--- a/dissertation/l4proj.cls
+++ b/dissertation/l4proj.cls
@@ -125,17 +125,17 @@
\pgfmathsetmacro{\deltaA}{\v/100*360}
\pgfmathsetmacro{\nextA}{\curA + \deltaA}
\pgfmathsetmacro{\midA}{(\curA+\nextA)/2}
-
+
\path[slice,\s] \c
-- +(\curA:\r)
arc (\curA:\nextA:\r)
-- cycle;
\pgfmathsetmacro{\d}{max((\deltaA * -(.5/50) + 1) , .5)}
-
+
\begin{pgfonlayer}{foreground}
\path \c -- node[pos=\d,pie values,values of \s]{$\v\%$} +(\midA:\r);
\end{pgfonlayer}
-
+
\global\let\curA\nextA
}
\end{scope}
@@ -305,44 +305,44 @@
\renewcommand\maketitle{
\begin{titlepage}%
\definecolor{UniBlue}{HTML}{00355F}
-
+
\let\footnotesize\small
\let\footnoterule\relax
\let\footnote \thanks
-
+
% the logo, full page width
\vspace{1in}
\includegraphics[width=\linewidth]{images/CompSci_colour.pdf}
\vskip 0.5em
\color{UniBlue}
{\large \sffamily Honours Individual Project Dissertation}\\
-
+
% title and author
-
+
\vspace{1cm}
\Large
\vskip 5em%
-
+
\begin{center}
-
+
\color{UniBlue}
\noindent
{\Huge \scshape \@title \par}%
-
-
-
-
-
+
+
+
+
+
\end{center}
\vfill
{\Large
\textbf{\@author}\\
\@date}
-
-
-
+
+
+
\end{titlepage}%
-
+
\setcounter{footnote}{0}%
\global\let\thanks\relax
\global\let\maketitle\relax
@@ -351,7 +351,7 @@
\global\let\@date\@empty
\global\let\@consentname\@empty
\global\let\@consentdate\@empty
-
+
\global\let\@title\@empty
\global\let\title\relax
\global\let\author\relax
@@ -400,12 +400,12 @@
\newpage
% \let\cleardoublepage\relax
\chapter*{Educational Use Consent}
-
+
I hereby grant my permission for this project to be stored, distributed and shown to other
University of Glasgow students and staff for educational purposes.
\textbf{Please note that you are under no obligation to sign
this declaration, but doing so would help future students.}
-
+
\begin{tabular}{@{}llll}
& & & \\
& & & \\
@@ -418,7 +418,7 @@
\chapter*{Educational Use Consent}
Consent for educational reuse withheld. Do not distribute.
\fi
-
+
}
% split into files
diff --git a/docs/index.md b/docs/index.md
index 10db36e..eedcbf7 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -7,9 +7,17 @@
Documentation
-
+
+
+
+
+
+This project has been heavily documented to allow you to learn more about the background, development and usage of the application. Each document acts as a guide to a specific area/aspect of the project, and you can find all information and links on the repository.
+
+
+
##
diff --git a/docs/log_parser.py b/docs/log_parser.py
index bbba9cb..160b15a 100644
--- a/docs/log_parser.py
+++ b/docs/log_parser.py
@@ -13,9 +13,13 @@
if line in ["\n"]:
continue
- if line.lower().startswith("## week"):
+ if line.startswith("## ") and (
+ line[3:].lower().startswith("week") or len(raw_week_logs) > 0
+ ):
raw_week_logs.append(week_block)
week_block = []
+ if (not line[3:].lower().startswith("week")) and len(raw_week_logs) > 0:
+ break
week_block.append(line[:-1] if line.endswith("\n") else line)
diff --git a/timelog.md b/timelog.md
index 18c2fc0..c7d51cb 100644
--- a/timelog.md
+++ b/timelog.md
@@ -584,3 +584,33 @@ Time taken off to unwind and relax for Christmas and New Year.
* *1 hour* Issue [#73](https://github.com/ineshbose/portion-mate/issues/73)
* *4 hours* Issue [#133](https://github.com/ineshbose/portion-mate/issues/133)
+
+## Week 27
+
+### 28 March 2022
+
+* *6 hours* Dissertation writing
+
+### 29 March 2022
+
+* *8 hours* Dissertation writing
+
+### 30 March 2022
+
+* *8 hours* Dissertation writing
+
+### 31 March 2022
+
+* *10 hours* Dissertation writing
+* *4 hours* Presentation planning
+
+### 01 April 2022
+
+* *5 hours* Dissertation polishing and review
+* *2 hours* Presentation recording
+* *1 hour* Preparing submission in format, uploading and submitting
+* *0.5 hours* Celebration :)
+
+## Total hours: 411
+
+For more information, see the [Git History](https://github.com/ineshbose/portion-mate/wiki/GitLogs) or this timelog in a [table format](https://github.com/ineshbose/portion-mate/wiki/LogTable).