# Introduction

What NetCorePpt is, what it generates, and how these pages are organised.

```csharp
using NetCorePpt;                  // PptxGen, Slide
using NetCorePpt.CoreInterfaces;   // option objects: TextProps* / ShapeProps / ImageProps / TableProps / HAlign / VAlign ...
using NetCorePpt.CoreEnums;        // ShapeType, ChartType, MediaType, ShadowType, BulletType, DashType, SCHEME_COLORS ...
using TableRow = System.Collections.Generic.List<NetCorePpt.CoreInterfaces.TableCell>;
```

![NetCorePpt Sample Slides](../assets/images/readme_banner-dd1fc589745bc53cc1628524910d90f7.png)

## 🚀 Features

NetCorePpt writes PowerPoint (.pptx) files in pure C# — no Office install, no COM interop, no JavaScript runtime. Add the NuGet package and describe the deck in code.

### Runs everywhere .NET runs

- Windows, Linux and macOS — desktop, server and containers
- Console apps, ASP.NET Core services, Azure Functions, background workers
- Compiled for `net6.0`, `net8.0`, `net10.0`, `netstandard2.0` and `netstandard2.1`

### Full-featured

- All the major slide objects: text, tables, shapes, images, charts and media
- Slide masters, sections, speaker notes and slide numbers
- SVG images, online video, RTL text and scheme colors

### Simple &amp; powerful

- Create a presentation in four lines of code
- Option objects keep the familiar names — `addText`, `addShape`, `addTable`, `defineSlideMaster`…
- Runnable samples in the [Usage Examples](/examples_docs/) section

### Export your way

- Write straight to disk with `exportToFile`
- Keep the bytes in memory with `exportToBytes` — ideal for cloud storage or an HTTP response
- Stream with `exportToStream`, with optional zip compression

## 📦 Installation

**PptxGenJS · bash**

```bash
dotnet add package NetCorePpt
```

The [Installation](installation.html) page has the full walkthrough — PackageReference, namespaces and a first presentation.

## 📖 Documentation

### Quick Start Guide

A presentation is created in four steps: create the presentation, add a slide, add objects, then export. The [Quick Start](quick-start.html) page walks through them in C#.
