ALLWEONE® Open source AI presentation generator Gamma Alternative. Create professional slides with customizable themes and AI-generated content in minutes.
See the code⭐ Help us reach more developers and grow the ALLWEONE community. Star this repo!
An open-source, AI-powered presentation generator alternative to Gamma.app that creates beautiful, customizable slides in minutes. This tool is part of the broader ALLWEONE AI platform.
https://github.com/user-attachments/assets/a21dbd49-75b8-4822-bcec-a75b581d9c60
.pptx| Category | Technologies |
|---|---|
| Framework | Next.js, React, TypeScript |
| Styling | Tailwind CSS |
| Database | PostgreSQL with Prisma ORM |
| AI Integration | OpenAI API, Together AI, Ollama, LM Studio |
| Authentication | NextAuth.js |
| UI Components | Radix UI |
| Text Editor | Plate Editor |
| File Uploads | UploadThing |
| Drag & Drop | DND Kit |
Before you begin, ensure you have the following installed:
Clone the repository
git clone git@github.com:allweonedev/presentation-ai.git
cd presentation-ai
Install dependencies
pnpm install
Set up environment variables
Create a .env file in the root directory with the following variables:
# Database
DATABASE_URL="postgresql://username:password@localhost:5432/presentation_ai"
# Authentication
NEXTAUTH_SECRET=""
NEXTAUTH_URL="http://localhost:3000"
# Google OAuth Provider
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""
# AI Providers
OPENAI_API_KEY=""
TOGETHER_AI_API_KEY=""
FAL_API_KEY=""
# File Upload Service
UPLOADTHING_TOKEN=""
# Optional search and media providers
UNSPLASH_ACCESS_KEY=""
TAVILY_API_KEY=""
💡 Tip: Copy
.env.exampleto.envand fill in your actual values. If you plan to use local text models through Ollama or LM Studio, you can run text generation without anOPENAI_API_KEY.
Initialize the database
pnpm db:push
Start the development server
pnpm dev
Open the application
Navigate to http://localhost:3000 in your browser.
pnpm dev # Start the Next.js dev server
pnpm build # Build the application
pnpm start # Start the production server
pnpm db:push # Push the Prisma schema to the database
pnpm db:studio # Open Prisma Studio
pnpm type # Run TypeScript type-checking
pnpm check # Run Biome checks
pnpm lint # Run Biome linting
Follow these steps to create your first AI-generated presentation:
Create personalized themes to match your brand or style:
ALLWEONE Presentation AI now supports both Ollama and LM Studio as local model providers.
ollama pull llama3.1).Notes:
presentation-ai/
├── prisma/ # Prisma schema and seed data
├── src/
│ ├── ai/ # AI agents, tools, and server integrations
│ ├── app/ # Next.js app router pages, APIs, and server actions
│ ├── components/
│ │ ├── notebook/ # Dashboard, generation flow, theme creation, recording UI
│ │ ├── presentation/ # Presentation editor, present mode, sharing, export
│ │ ├── plate/ # Plate editor plugins and UI
│ │ ├── prose-mirror/ # Outline editor
│ │ └── ui/ # Shared UI primitives
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Models, themes, export helpers, utilities
│ ├── provider/ # App providers
│ ├── server/ # Auth, DB, and share authorization helpers
│ ├── states/ # Zustand state stores
│ ├── styles/ # Global styles
│ ├── env.js # Environment validation
│ └── proxy.ts # Next.js proxy
├── README.md
├── package.json
├── next.config.js
└── tsconfig.json
| Feature | Status | Notes |
|---|---|---|
| Export to PowerPoint (.pptx) | 🟡 Partially Done | Works but the images and other component do not translate one to one |
| Media embedding | 🟡 Partially Done | Functionality is there, but ui/ux need improvement |
| Additional built-in themes | 🟡 In Progress | The app currently ships with 38 built-in themes, and the library is still growing |
| Mobile responsiveness | 🟡 In Progress | Improving layout and interactions for mobile devices |
| Advanced charts | 🟡 Partially Done | AI-generated charts and chart editing are available, with broader coverage still improving |
| Write e2e tests | 🔴 Not Started | Writing test to check the core features, so that we can catch if any changes break anything |
| Real-time collaboration | 🔴 Not Started | Multiple users editing the same presentation simultaneously |
| Export to PDF | 🔴 Not Started | High priority - allow users to download presentations as PDFs |
| Template library | 🔴 Not Started | Pre-built templates for common presentation types (pitch decks, reports, etc.) |
| Animation and transitions | 🔴 Not Started | Add slide transitions and element animations |
| Presentation recording | 🟡 Partially Done | Present mode already supports webcam and microphone recording controls |
| Cloud storage integration | 🔴 Not Started | Connect with Google Drive, Dropbox, OneDrive |
| Presentation analytics | 🔴 Not Started | Track views, engagement, and presentation performance |
| AI presenter notes | 🔴 Not Started | Auto-generate speaker notes for each slide |
| Custom font uploads | 🔴 Not Started | Allow users to upload and use their own fonts |
| Plugin system | 🔴 Not Started | Allow community to build and share extensions |
| API | 🔴 Not Started | Allow developers to use the allweone presentation to generate content in their own applications. |
📝 Note: This roadmap is subject to change based on community feedback and priorities. Want to contribute to any of these features? Check out our Contributing Guidelines!
We welcome contributions from the community! Here's how you can help:
Fork the repository
Create a feature branch
git checkout -b feature/amazing-feature
Commit your changes
git commit -m 'Add some amazing feature'
Push to the branch
git push origin feature/amazing-feature
Open a Pull Request
For more details, please read our Contributing Guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
Special thanks to the following projects and organizations:
https://github.com/sponsors/allweonedev
Need help or have questions?
Built with ❤️ by the ALLWEONE® Team
2,091 followers · starred Aug 2026
204 followers · starred Sep 2025
117 followers · starred Nov 2025
29 followers · starred Oct 2025
ALLWEONE® Open source AI presentation generator Gamma Alternative. Create professional slides with customizable themes and AI-generated content in minutes.
See the code⭐ Help us reach more developers and grow the ALLWEONE community. Star this repo!
An open-source, AI-powered presentation generator alternative to Gamma.app that creates beautiful, customizable slides in minutes. This tool is part of the broader ALLWEONE AI platform.
https://github.com/user-attachments/assets/a21dbd49-75b8-4822-bcec-a75b581d9c60
.pptx| Category | Technologies |
|---|---|
| Framework | Next.js, React, TypeScript |
| Styling | Tailwind CSS |
| Database | PostgreSQL with Prisma ORM |
| AI Integration | OpenAI API, Together AI, Ollama, LM Studio |
| Authentication | NextAuth.js |
| UI Components | Radix UI |
| Text Editor | Plate Editor |
| File Uploads | UploadThing |
| Drag & Drop | DND Kit |
Before you begin, ensure you have the following installed:
Clone the repository
git clone git@github.com:allweonedev/presentation-ai.git
cd presentation-ai
Install dependencies
pnpm install
Set up environment variables
Create a .env file in the root directory with the following variables:
# Database
DATABASE_URL="postgresql://username:password@localhost:5432/presentation_ai"
# Authentication
NEXTAUTH_SECRET=""
NEXTAUTH_URL="http://localhost:3000"
# Google OAuth Provider
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""
# AI Providers
OPENAI_API_KEY=""
TOGETHER_AI_API_KEY=""
FAL_API_KEY=""
# File Upload Service
UPLOADTHING_TOKEN=""
# Optional search and media providers
UNSPLASH_ACCESS_KEY=""
TAVILY_API_KEY=""
💡 Tip: Copy
.env.exampleto.envand fill in your actual values. If you plan to use local text models through Ollama or LM Studio, you can run text generation without anOPENAI_API_KEY.
Initialize the database
pnpm db:push
Start the development server
pnpm dev
Open the application
Navigate to http://localhost:3000 in your browser.
pnpm dev # Start the Next.js dev server
pnpm build # Build the application
pnpm start # Start the production server
pnpm db:push # Push the Prisma schema to the database
pnpm db:studio # Open Prisma Studio
pnpm type # Run TypeScript type-checking
pnpm check # Run Biome checks
pnpm lint # Run Biome linting
Follow these steps to create your first AI-generated presentation:
Create personalized themes to match your brand or style:
ALLWEONE Presentation AI now supports both Ollama and LM Studio as local model providers.
ollama pull llama3.1).Notes:
presentation-ai/
├── prisma/ # Prisma schema and seed data
├── src/
│ ├── ai/ # AI agents, tools, and server integrations
│ ├── app/ # Next.js app router pages, APIs, and server actions
│ ├── components/
│ │ ├── notebook/ # Dashboard, generation flow, theme creation, recording UI
│ │ ├── presentation/ # Presentation editor, present mode, sharing, export
│ │ ├── plate/ # Plate editor plugins and UI
│ │ ├── prose-mirror/ # Outline editor
│ │ └── ui/ # Shared UI primitives
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Models, themes, export helpers, utilities
│ ├── provider/ # App providers
│ ├── server/ # Auth, DB, and share authorization helpers
│ ├── states/ # Zustand state stores
│ ├── styles/ # Global styles
│ ├── env.js # Environment validation
│ └── proxy.ts # Next.js proxy
├── README.md
├── package.json
├── next.config.js
└── tsconfig.json
| Feature | Status | Notes |
|---|---|---|
| Export to PowerPoint (.pptx) | 🟡 Partially Done | Works but the images and other component do not translate one to one |
| Media embedding | 🟡 Partially Done | Functionality is there, but ui/ux need improvement |
| Additional built-in themes | 🟡 In Progress | The app currently ships with 38 built-in themes, and the library is still growing |
| Mobile responsiveness | 🟡 In Progress | Improving layout and interactions for mobile devices |
| Advanced charts | 🟡 Partially Done | AI-generated charts and chart editing are available, with broader coverage still improving |
| Write e2e tests | 🔴 Not Started | Writing test to check the core features, so that we can catch if any changes break anything |
| Real-time collaboration | 🔴 Not Started | Multiple users editing the same presentation simultaneously |
| Export to PDF | 🔴 Not Started | High priority - allow users to download presentations as PDFs |
| Template library | 🔴 Not Started | Pre-built templates for common presentation types (pitch decks, reports, etc.) |
| Animation and transitions | 🔴 Not Started | Add slide transitions and element animations |
| Presentation recording | 🟡 Partially Done | Present mode already supports webcam and microphone recording controls |
| Cloud storage integration | 🔴 Not Started | Connect with Google Drive, Dropbox, OneDrive |
| Presentation analytics | 🔴 Not Started | Track views, engagement, and presentation performance |
| AI presenter notes | 🔴 Not Started | Auto-generate speaker notes for each slide |
| Custom font uploads | 🔴 Not Started | Allow users to upload and use their own fonts |
| Plugin system | 🔴 Not Started | Allow community to build and share extensions |
| API | 🔴 Not Started | Allow developers to use the allweone presentation to generate content in their own applications. |
📝 Note: This roadmap is subject to change based on community feedback and priorities. Want to contribute to any of these features? Check out our Contributing Guidelines!
We welcome contributions from the community! Here's how you can help:
Fork the repository
Create a feature branch
git checkout -b feature/amazing-feature
Commit your changes
git commit -m 'Add some amazing feature'
Push to the branch
git push origin feature/amazing-feature
Open a Pull Request
For more details, please read our Contributing Guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
Special thanks to the following projects and organizations:
https://github.com/sponsors/allweonedev
Need help or have questions?
Built with ❤️ by the ALLWEONE® Team
2,091 followers · starred Aug 2026
204 followers · starred Sep 2025
117 followers · starred Nov 2025
29 followers · starred Oct 2025