Skip to content

About

Minimal site for serving compiled study notes and sample papers

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

UCSC Notes

An independent course-compilation archive for Computer Science notes and sample papers, organised by year and semester. Subject overviews and topics are curated in the app; note and paper PDF URLs are loaded live from Vercel Blob.

This project is not affiliated with the University of Colombo School of Computing (UCSC).

Extending the archive

Add a new semester or year in app/data/catalog.ts by appending a Compilation entry:

{
  id: "y1-sem02",
  year: 1,
  semester: 2,
  label: "Year 1 · Semester 02",
  shortLabel: "Y1 Sem 02",
  notesBlobPrefix: "Compilations_Y01_S02/",
  papersBlobPrefix: "Papers_Y01_S02/",
  subjects: [/* ... */],
}

Upload matching PDFs under those two Blob prefixes. The home page lists every compilation and merges files by basename. Sample-paper filenames reuse each subject's note basename with a _01 / _02 suffix (see paperFilenames in app/data/catalog.ts), e.g. Computer_Systems.pdf -> Computer_Systems_01.pdf, Computer_Systems_02.pdf.

Stack

  • React Router 8 (SSR) + Vite
  • Tailwind CSS v4
  • @vercel/blob for listing PDFs
  • Motion for UI animation

Setup

bun install

Environment variables:

Variable Purpose
NOTES_STORE_ID Vercel Blob store id (reference / dashboard)
NOTES_READ_WRITE_TOKEN Blob read-write token used by the server loader to list()

Example Blob layout:

Compilations_Y01_S01/
  Application_Lab.pdf
  Data_Structures_and_Program_Design_in_C.pdf
  Computer_Systems.pdf
  ...
Papers_Y01_S01/
  Application_Lab_01.pdf
  Application_Lab_02.pdf
  Data_Structures_and_Program_Design_in_C_01.pdf
  Data_Structures_and_Program_Design_in_C_02.pdf
  ...
Compilations_Y01_S02/   # add when ready
  ...
Papers_Y01_S02/         # add when ready
  ...

Development

bun run dev

App: http://localhost:5173

Build

bun run build
bun run start

Typecheck:

bun run typecheck

Deploy (Vercel)

  1. Set NOTES_READ_WRITE_TOKEN (and optionally NOTES_STORE_ID) in the project environment.
  2. Keep SSR enabled for the React Router build.
  3. Upload PDFs under each compilation's note and paper Blob prefixes.

Each "Open Note" control links straight to the public Blob URL in a new tab; the "Paper 01" / "Paper 02" controls below it do the same for sample papers, when uploaded.

About

Minimal site for serving compiled study notes and sample papers

Resources

Stars

1 star

Watchers

0 watching

Forks

Packages

Contributors

Languages