DEV Community

Cover image for Building Thesis Desk: a free, zero-dependency web app to organize a PhD dissertation
ahmedawe2026-svg
ahmedawe2026-svg

Posted on

Building Thesis Desk: a free, zero-dependency web app to organize a PhD dissertation

๐Ÿ”— Live app: https://ahmedawe2026-svg.github.io/DBA-Research-Dissertation-Assistant/
๐Ÿ’ป Source code (MIT): https://github.com/ahmedawe2026-svg/DBA-Research-Dissertation-Assistant

The problem: a dissertation is spread across ten tools

Writing a doctoral dissertation is not one task โ€” it is many running in parallel. You are building a structure (chapters, parts, sections), reading and cataloguing dozens of studies, keeping a reference list in perfect APA 7 format, checking that every citation is real and retracted-free, and trying to keep the whole 200-page effort internally consistent.

Most researchers end up juggling Word documents, a reference manager, a spreadsheet for the literature review, a notes app, and a dozen browser tabs. The work is not hard because any one piece is hard โ€” it is hard because the pieces are scattered and nothing talks to anything else.

I built Thesis Desk to put the whole workflow in one place โ€” and to make a point: it can all run in the browser, offline, with no server and no dependencies.

Why vanilla JS, no frameworks?

The design goals came first, and they pointed away from frameworks:

  • Works offline, by default. A researcher on a slow or metered connection should not wait for a CDN. The app is a single HTML file plus plain CSS and JS. Once loaded, it never needs the network.
  • Privacy is structural, not a promise. Every bit of user data lives in localStorage. There is no backend, no account, no telemetry. The only network calls the app makes are opt-in lookups to public APIs (Crossref, OpenAlex) when you explicitly ask. Nothing about your work leaves your machine otherwise.
  • Zero dependency = zero rot. No node_modules, no build step, no supply-chain surface, no breaking major versions. If it works today, it will work in ten years.
  • Easy to contribute. A new contributor can open index.html in a browser and be productive in minutes โ€” no toolchain to install.

Two localStorage keys hold the whole dataset (thesis-desk-v2 for the app data, td-api for API-related settings), which makes both backup and self-hosting trivial.

What's inside

The app is organized around the actual stages of dissertation work:

1. Project profile & structure tracker

A 7-part / 48-section skeleton of a typical doctoral dissertation. You track progress per section, see validation status, and get an at-a-glance dashboard of where you actually stand โ€” not where you think you stand.

2. Validation rules

More than 25 built-in rules flag common problems: missing sections, weak internal consistency, empty reference fields, citation/study mismatches, and so on. Think of it as a linter for your dissertation workflow.

3. Literature review log

Each prior study becomes a structured card (method, sample, findings, relevance). This turns a pile of PDFs into a searchable, comparable table you can build the review from.

4. APA 7 reference log

A dedicated reference manager that formats entries in APA 7 and classifies them (journal article, book, thesis, conference paper, โ€ฆ).

5. Reference verification (Crossref + OpenAlex)

The part that saves the most time and pain: it checks references against Crossref and OpenAlex to confirm they exist, resolve DOIs, and catch entries that are retracted or otherwise unsafe to cite. (I deliberately exclude retracted works and items without a DOI from automated flows.)

6. Academic search

A launcher across 36+ academic platforms so you can jump to the right source quickly.

7. Consistency matrix

A grid that helps you check that objectives, questions, hypotheses, methods and findings actually line up โ€” the kind of internal alignment reviewers love to poke at.

8. Auto-generator

Given a topic, it queries OpenAlex, filters the results, and assembles a structured first draft of literature-review material. This is explicitly a drafting aid: output is a starting point to be reviewed, edited and verified โ€” never a finished text to paste in.

A few engineering notes

  • Single-file mindset. The core app is intentionally one big HTML file so it can be downloaded and run from a USB stick or shared as-is. The public repo also mirrors it under standalone/.
  • Progressive, opt-in network use. The app is fully useful offline. Network features (verification, search, generation) are explicit actions with clear feedback.
  • Data portability. Because everything is in localStorage under known keys, exporting/backing up/restoring is straightforward, and there is no lock-in.
  • RTL-first. It is an Arabic-first interface (RTL) with dark mode, and it works on mobile.
  • Testability without a toolchain. Plain DOM code is easy to inspect and patch; the repo has CI that validates the structure and assets.

The thing I care most about: honesty about what the tool does

An academic tool that generates text has an obligation to be crystal clear about its role. So this note is part of the product, not fine print:

โš ๏ธ Ethical & academic note:
This app is a helper tool for collecting, checking and formatting โ€” it is not a substitute for the researcher or supervisor. Every output must be reviewed, edited and verified, and you must comply with your university's policy on assistive tools. AI-generated text is only a first draft.

The auto-generator does not write your dissertation. It helps you gather, organize, and produce drafts you must still own, verify and defend.

Try it, break it, improve it

The project is MIT-licensed and genuinely open to contributions. Good first issues are open for things like keyboard/ARIA accessibility, additional export formats (BibTeX/RIS), and tests.

If you are working on a PhD, I would love to hear which part of your workflow is the most painful โ€” that is where the next feature should come from.


โš ๏ธ Ethical & academic note:
This app is a helper tool for collecting, checking and formatting โ€” it is not a substitute for the researcher or supervisor. Every output must be reviewed, edited and verified, and you must comply with your university's policy on assistive tools. AI-generated text is only a first draft.

Top comments (0)