> ## Documentation Index
> Fetch the complete documentation index at: https://docs.notesglider.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Technology Stack

# Technology Stack

## SECTION 3 — TECHNOLOGY STACK

### 3.1 Complete Stack

| Layer                    | Technology                                                                                                               | Purpose                                                                                                                                                                              |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Frontend**             | Next.js (App Router)                                                                                                     | Primary web application framework                                                                                                                                                    |
| **UI Components**        | ShadCN UI + compatible third-party ShadCN registries (e.g. ui.tripled.work, or as discovered via shoogle.dev MCP server) | Core component library — mandatory. Use direct ShadCN or pre-made components from compatible third-party ShadCN registries                                                           |
| **Rich Text Editor**     | Lexical.dev                                                                                                              | Block-based document canvas editor                                                                                                                                                   |
| **Mind Map Canvas**      | Mind Elixir Core (`mind-elixir-core`)                                                                                    | Interactive mind map editor                                                                                                                                                          |
| **Backend**              | Python + FastAPI                                                                                                         | API server, document processing, pipeline orchestration                                                                                                                              |
| **PDF Generation**       | WeasyPrint                                                                                                               | HTML-to-PDF conversion engine                                                                                                                                                        |
| **Slide Presentation**   | Reveal.js                                                                                                                | Browser-based presentation mode                                                                                                                                                      |
| **PPTX Generation**      | **PptxGenJS** (client-side, browser/Node JS) — `https://github.com/gitbrent/PptxGenJS`                                   | Client-side `.pptx` file generation from structured JSON. Replaces v4 `python-pptx`. Built-in table auto-pagination; text pagination via shared height-estimator utility. See §17.1. |
| **AI Q\&A Generation**   | OpenRouter API (Structured Outputs)                                                                                      | Q\&A item generation per §10.10 / §22B. Platform-wide API key; Super-Admin-configurable model + 4 fallbacks; per-Org token cap.                                                      |
| **Database**             | Neon (PostgreSQL, accessed via Prisma ORM)                                                                               | Primary data store                                                                                                                                                                   |
| **Image CDN**            | Cloudinary                                                                                                               | Active-year image delivery and storage                                                                                                                                               |
| **Google OAuth**         | Better-Auth (with Google Identity provider)                                                                              | Primary authentication (Google OAuth, Magic Link, Email+Password)                                                                                                                    |
| **Google Drive API**     | Google Drive                                                                                                             | Per-user cloud file sync and archival                                                                                                                                                |
| **Google Docs API**      | Google Docs                                                                                                              | Parallel `.gdoc` save for online preview                                                                                                                                             |
| **Google Translate API** | Cloud Translation                                                                                                        | Multilingual document generation                                                                                                                                                     |
| **YouTube (No API Key)** | Public channel URL fetch (server-side) + iframe fallback                                                                 | Channel feed browsing for video link attachment — no YouTube Data API OAuth scope required                                                                                           |
| **Payments**             | Razorpay API                                                                                                             | Super Admin-managed master Razorpay account for platform-wide billing and invoice management                                                                                         |
| **Email Automation**     | Resend                                                                                                                   | Notifications and invoice delivery                                                                                                                                                   |
| **Deployment**           | Google Cloud Run (containerised, serverless)                                                                             | Frontend and backend deployment                                                                                                                                                      |
| **Scheduling**           | Google Cloud Scheduler                                                                                                   | Cron jobs for Compilation triggers, billing cycles, archival                                                                                                                         |

### 3.2 Key Library References

#### Frontend

<Card title="https://nextjs.org/" href="https://nextjs.org/" icon="arrow-up-right" />

**Component Library:**

<Card title="https://ui.shadcn.com/" href="https://ui.shadcn.com/" icon="arrow-up-right" />

**Preferred Shadcn Compatible Styled Component Library:**

<Card title="https://ui.tripled.work/components" href="https://ui.tripled.work/components" icon="arrow-up-right" />

**MCP Server to Search all 3rd party Shadcn Compatible Directories:**

<Card title="https://shoogle.dev/mcp-install" href="https://shoogle.dev/mcp-install" icon="arrow-up-right" />

#### Backend

<Card title="https://www.python.org/" href="https://www.python.org/" icon="arrow-up-right" />

#### APIs

<Card title="https://fastapi.tiangolo.com/" href="https://fastapi.tiangolo.com/" icon="arrow-up-right" />

#### Authentication

**Better-Auth — Framework-agnostic authentication library:**

<Card title="https://www.better-auth.com/" href="https://www.better-auth.com/" icon="arrow-up-right" />

* Supports Google OAuth, Magic Link, and Email+Password authentication
* Prisma-compatible database adapter
* Session management with HttpOnly cookies
* TypeScript-first with full type safety

<Card title="https://cloud.google.com/" href="https://cloud.google.com/" icon="arrow-up-right" />

**Google Services:**

<Card title="https://docs.cloud.google.com/translate/docs/translate-text" href="https://docs.cloud.google.com/translate/docs/translate-text" icon="arrow-up-right" />

***

<details>
  <summary><strong>Google Drive:</strong> Use these REST APIs to interact programmatically with Drive.</summary>

  <Card title="https://developers.google.com/workspace/drive/api" href="https://developers.google.com/workspace/drive/api" icon="arrow-up-right" />

  * Upload, download, share, and manage files stored in Google Drive.<a href="https://developers.google.com/workspace/drive/api" class="button secondary">View documentation</a>

  <Card title="https://developers.google.com/workspace/drive/activity" href="https://developers.google.com/workspace/drive/activity" icon="arrow-up-right" />

  * Get info about user activity on files and folders.<a href="https://developers.google.com/workspace/drive/activity" class="button secondary">View documentation</a>

  <Card title="https://developers.google.com/workspace/drive/labels" href="https://developers.google.com/workspace/drive/labels" icon="arrow-up-right" />

  * Apply and manage labels on your Drive files and folders, and search for files using metadata terms defined by a custom label taxonomy.<a href="https://developers.google.com/workspace/drive/labels" class="button secondary">View documentation</a>

  <Card title="https://developers.google.com/workspace/drive/picker" href="https://developers.google.com/workspace/drive/picker" icon="arrow-up-right" />

  * Embed a file manager widget in your web app.<a href="https://developers.google.com/workspace/drive/picker" class="button secondary">View documentation</a>

  <Card title="https://developers.google.com/workspace/docs/api/how-tos/overview" href="https://developers.google.com/workspace/docs/api/how-tos/overview" icon="arrow-up-right" />
</details>

***

Access and update Google Slides programmatically with popular programming languages, including Java, JavaScript, and Python.<a href="https://developers.google.com/workspace/slides/api/guides/overview" class="button secondary">View documentation</a>

<Card title="https://developers.google.com/workspace/slides/api/guides/overview" href="https://developers.google.com/workspace/slides/api/guides/overview" icon="arrow-up-right" />

***

Access and update Google Docs programmatically, just like any other user.<a href="https://developers.google.com/workspace/docs/api/how-tos/overview" class="button secondary">View documentation</a>

<Card title="https://developers.google.com/workspace/docs/api/how-tos/overview" href="https://developers.google.com/workspace/docs/api/how-tos/overview" icon="arrow-up-right" />

***

YouTube has a number of APIs and tools that let you embed YouTube functionality into your own website and applications.

<Card title="https://developers.google.com/youtube/documentation" href="https://developers.google.com/youtube/documentation" icon="arrow-up-right" />

#### Utility

**Rich Text Editor:**

<Card title="https://lexical.dev/" href="https://lexical.dev/" icon="arrow-up-right" />

**Dynamic Slides Generation:**

<Card title="https://revealjs.com/" href="https://revealjs.com/" icon="arrow-up-right" />

**Dynamic Document Generation:**

<Card title="https://weasyprint.org/" href="https://weasyprint.org/" icon="arrow-up-right" />

**Dynamic Mindmap Generation:**

<Card title="https://github.com/SSShooter/mind-elixir-core" href="https://github.com/SSShooter/mind-elixir-core" icon="arrow-up-right" />

<Card title="https://docs.mind-elixir.com/" href="https://docs.mind-elixir.com/" icon="arrow-up-right" />

**Email:**

<Card title="https://resend.com/docs/introduction" href="https://resend.com/docs/introduction" icon="arrow-up-right" />

**PPTX Generation (v5 — client-side JS):**

<Card title="https://github.com/gitbrent/PptxGenJS" href="https://github.com/gitbrent/PptxGenJS" icon="arrow-up-right" />

<details>
  <summary><strong>Other Notable Mentions (non-PPTX):</strong></summary>

  <Card title="https://pypi.org/project/pypandoc/" href="https://pypi.org/project/pypandoc/" icon="arrow-up-right" />

  <Card title="https://pandoc.org/" href="https://pandoc.org/" icon="arrow-up-right" />
</details>

#### Database

**Primary Storage**

<Card title="https://neon.com/" href="https://neon.com/" icon="arrow-up-right" />

**For Image Storage CDN:**

<Card title="https://cloud.google.com/storage" href="https://cloud.google.com/storage" icon="arrow-up-right" />

or

<Card title="https://cloudinary.com/" href="https://cloudinary.com/" icon="arrow-up-right" />

#### Payments

<Card title="https://razorpay.com/docs/api/?preferred-country=IN" href="https://razorpay.com/docs/api/?preferred-country=IN" icon="arrow-up-right" />

#### Hosting

<Card title="https://cloud.google.com/run" href="https://cloud.google.com/run" icon="arrow-up-right" />

#### Scheduler

<Card title="https://docs.cloud.google.com/scheduler/docs/schedule-run-cron-job?_gl=1*9ms8py*_ga*MTA0ODE5NzQxNC4xNzcxNzUwOTA4*_ga_WH2QY8WWF5*czE3NzI2MTQ2MTckbzgkZzEkdDE3NzI2MTQ2MzAkajQ3JGwwJGgw" href="https://docs.cloud.google.com/scheduler/docs/schedule-run-cron-job?_gl=1*9ms8py*_ga*MTA0ODE5NzQxNC4xNzcxNzUwOTA4*_ga_WH2QY8WWF5*czE3NzI2MTQ2MTckbzgkZzEkdDE3NzI2MTQ2MzAkajQ3JGwwJGgw" icon="arrow-up-right" />
