\documentclass[11pt,a4paper]{article}

\usepackage[margin=1in]{geometry}
\usepackage{hyperref}
\usepackage{enumitem}
\usepackage{parskip}

\title{CS5013 Project Proposal \\ \large\textit{[Project title here]}}
\author{[Name 1, Roll no.] \and [Name 2, Roll no.]}
\date{\today}

\begin{document}
\maketitle

% Delete this italic note before you submit.
\textit{%
Instructions.
Keep the proposal to 3--5 pages.
Replace every bracketed [placeholder] with your own text.
Do not delete section headings, even if a section is short.
Attach the stakeholder acknowledgement email as Appendix~A.
}

\section{Team information}

Team ID: team-XX (or ``solo'').

\begin{itemize}[nosep]
  \item Member 1: [Name] -- roll no. [XXXX] -- department [XX]
        -- GitHub handle [xxx]
  \item Member 2: [Name] -- roll no. [XXXX] -- department [XX]
        -- GitHub handle [xxx]
\end{itemize}

Primary contact email: [xxx@smail.iitm.ac.in].

\section{Problem statement}

Three to four sentences.
What is the problem.
Whose problem is it.
What does the current pain look like.
No marketing language.

\section{Users and stakeholder}

Named stakeholder: [Name, role, department / centre / lab].

One paragraph on how you met them and what they said.
Include the date of your first conversation.

The stakeholder's acknowledgement email is attached as Appendix~A.

\section{Prior work and why it does not suffice}

List at least three existing solutions your stakeholder could
plausibly use instead.
These may be commercial products, open-source tools, in-house scripts,
or purely manual workflows.
For each, give the name and link, what it does that overlaps with your
proposal, and the specific reason it is not adopted.

\begin{enumerate}[leftmargin=*]
  \item \textbf{[Name of solution 1]} -- [link, or ``internal /
        manual''].
        Overlap: what it does that overlaps with your proposal.
        Gap: specific reason it is not adopted -- cost, missing
        feature, wrong data model, licensing, offline-only, cannot
        integrate with the stakeholder's existing system, language
        barrier, etc.
  \item \textbf{[Name of solution 2]} -- [link].
        Overlap: \ldots
        Gap: \ldots
  \item \textbf{[Name of solution 3]} -- [link].
        Overlap: \ldots
        Gap: \ldots
\end{enumerate}

\textit{%
``There is nothing like this'' is almost never true and will be marked
down.
If after honest searching the closest thing is a spreadsheet the
office maintains by hand, say that -- a manual workflow is a
legitimate incumbent.%
}

\section{Tech stack}

Language: \textbf{Java} (course policy).

\begin{itemize}[nosep]
  \item Build system: plain \texttt{javac} / Maven / Gradle
  \item Framework: e.g., plain CLI / Java-Swing / Spring Boot /
        Javalin -- pick one
  \item Key libraries: list 3--5
  \item Where the tool will run: e.g., stakeholder's laptop /
        department server / GitHub Actions cron / hosted web app
\end{itemize}

\section{AI-usage statement}

% This is a standard statement.
% You may copy the paragraph below verbatim.
% You do not need to list specific tools or specific tasks at proposal
% time -- you will not know that yet.

\textit{%
We will use AI coding assistants (such as Claude Code, GitHub Copilot,
ChatGPT, or Gemini) during this project, in line with the course
policy on AI-assisted programming.
Every line of code we submit will be code we understand and can
explain in the viva, whether we typed it or the assistant generated
it.%
}

\section{Verification plan}

Test fixtures we will use:

\begin{itemize}[nosep]
  \item e.g., a de-identified sample of the July 2026 attendance
        sheet, provided by the stakeholder
  \item e.g., a synthetic corner-case set covering empty inputs,
        duplicates, and off-by-one dates
\end{itemize}

User-visible acceptance criteria the stakeholder will use to say
``yes, this works'':

\begin{itemize}[nosep]
  \item e.g., processes the July 2026 attendance sheet without manual
        correction
  \item second concrete criterion
  \item third concrete criterion
\end{itemize}

\section{Milestone plan}

A three-line sketch -- you will refine this in the design doc.

\begin{itemize}[nosep]
  \item \textbf{By the design doc (11 Sep 2026):}
        what will be scoped, prototyped, or scaffolded.
  \item \textbf{By the mid-demo (9 Oct 2026):}
        which core workflow will run end-to-end on real input.
  \item \textbf{By the final submission (6 Nov 2026):}
        what the stakeholder will be able to run themselves.
\end{itemize}

\section{Risks and plan B}

\begin{enumerate}[leftmargin=*, nosep]
  \item \textbf{Risk:} e.g., stakeholder data arrives in an
        undocumented format.
        \textbf{Plan B:} ship with a small format-converter and
        document the assumed schema.
  \item \textbf{Risk:} \ldots
        \textbf{Plan B:} \ldots
  \item \textbf{Risk:} \ldots
        \textbf{Plan B:} \ldots
\end{enumerate}

\appendix

\section{Stakeholder acknowledgement email}

\begin{quote}
\textit{Paste the stakeholder's email here, verbatim.
Include the sender's name, role, and the date.
Redact any personal information the stakeholder asks you to redact.}
\end{quote}

\end{document}
