Giter Site home page Giter Site logo

nburmi / doc2plan Goto Github PK

View Code? Open in Web Editor NEW
146.0 2.0 79.0 17.27 MB

Transform your book into structured learning plan. Go through plan and chat with your data for better understanding.

Home Page: https://doc2plan.vercel.app

License: MIT License

JavaScript 1.70% HTML 0.36% CSS 0.08% Svelte 71.28% TypeScript 26.58%
ai book learning openai-assistant-api openai-assistants plan study chat

doc2plan's Introduction

ESLint check

Learning Plan Creator and Viewer

This project is under development.

Overview

This project is a browser-based application designed to create personalized and structured learning plans by extracting content from documents and allowing users to interactively go through their plan. It features two main components: the Creator and the Viewer.

Demo

demo.mp4

Book in demo: Database Design โ€“ 2nd Edition by Adrienne Watt and Watt, Adrienne

Creator

Important note: AI sometimes hallucinates and generates incorrect information. Please verify the generated content before using it for learning purposes.

The Creator allows users to either manually construct a learning plan or use AI to automate the process. The AI functionality can extract chapters and content from any book or document, providing a structured output that includes quizzes generated based on the content. This feature simplifies the creation of comprehensive learning modules tailored to the user's needs.

Follow this path to create a learning plan with AI assistance:

  1. Upload a book (pdf, md, docx).
  2. Extract chapters.
  3. Select chapter and extract key topics and create topics.
  4. Generate content for each topic.
  5. Generate quiz for each topic.
  6. Basically, you can come back to the creator and add more topics or chapters to the plan at any time.
Demo creator

demo_creator

Viewer

The Viewer presents a straightforward interface with a split-pane layout. The left sidebar displays chapters and topics, where users can track their progress by marking completed topics. The main pane on the right shows the content extracted from the book or document, facilitating easy access and study.

Demo viewer

demo_viewer

Settings

The application includes a settings page where users can manage their OpenAI settings, including the API key, model, temperature, assistant ID, vector store ID, and file ID used for vector creation. This feature allows users to customize their AI-driven learning experience according to their preferences.

Features

  • Fully Browser-Based: Runs entirely in your browser, with all settings and plans stored locally.
  • AI-Driven Content Extraction: Automatically extract chapters and key content from documents to build a learning plan.
  • Quiz Generation: Generate quizzes (questions and answers) based on the content to aid in learning and retention.
  • Progress Tracking: Easily mark topics as completed and visualize your progress through the learning plan.
  • Plan Import/Export: Import and export your learning plans to and from JSON format for easy sharing and management.
  • Assistant Management: Manage OpenAI settings and assistants, including creation, updating, and deletion of AI assistants as required.
  • Customizable Settings: Manage OpenAI settings including API Key, model, temperature, assistant ID, vector store ID, and file ID used for vector creation.
  • Viewer Chat: Interact with the AI assistant through a chat interface to ask questions and get answers related to the content.
  • Viewer Chat: Text to speech: Support for converting text to speech, allowing users to listen to the content.
  • Viewer Chat: Speech to text: Support for converting speech to text, enabling users to input content through voice.
  • Integrate with Various RAG(in plans): This feature allows you to connect and utilize different Retrieval-Augmented Generation (RAG) for content extraction and question generation. It's not limited to OpenAI's RAG Assistant, offering you the flexibility to choose the RAG that best suits your needs.

Getting Started

Prerequisites

To use this application, you only need a modern web browser.
For the AI-driven features, you will need an OpenAI API key.

Installation

Running Locally

  1. Clone the repository:
git clone https://github.com/nburmi/doc2plan.git
  1. Navigate to the project directory:
cd doc2plan
  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev -- --open

Will be opened at localhost

Live demo

For live demo navigate to https://doc2plan.vercel.app.

Configuration

Access the settings through the application interface to input and manage your OpenAI API settings.

Contributing

Your contributions make this project thrive. Whether it's reporting bugs, suggesting features, or submitting code changes, every bit of help is greatly appreciated.

Report Issues: If you encounter any problems, please open an issue on our GitHub page.

Feature Requests: Have an idea? Share it with us by opening an issue.

Pull Requests: Want to make a direct impact? Fork the repository, make your changes, and submit a pull request.

We look forward to growing this project with the community's support and creativity!

License

Distributed under the MIT License. See LICENSE for more information.

doc2plan's People

Contributors

nburmi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

doc2plan's Issues

Dark/light mode is not persistent

Describe the bug
I've chosen dark mode, but system has light mode on. After page refresh page returns to light mode.

To Reproduce
Steps to reproduce the behavior:

  1. Go to main page
  2. Click on mode switch
  3. Refresh page
  4. See that mode returned back to previous mode.

Expected behavior
Mode should be saved.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: macos 14.5
  • Browser: chrome
  • Version: 126

Additional context
Add any other context about the problem here.

Chat with your data

Interactive AI-Driven Learning Assistance

Is your feature request related to a problem? Please describe.
I'm always frustrated when I can't interactively engage with the material from a book. Traditional reading methods do not offer interactive discussions, quizzes, or in-depth explanations, making it challenging to deeply understand and retain complex topics.

Describe the solution you'd like
I would like the Viewer to include a feature where users can:

  • Engage in a conversational chat with AI about specific topics or any content within the book.
  • Take quizzes generated by the AI to test comprehension.
  • Receive explanations from the AI using the Feynman technique.
  • Input queries via audio or text.
  • Have the option to convert AI text responses into audio for auditory learning.

Describe alternatives you've considered
Using external AI chat tools separately from doc2plan, but this disrupts the seamless learning experience.
Reading supplementary material and manually creating quizzes and explanations, which is time-consuming and less efficient.

Additional context
Integrating this feature would make doc2plan a comprehensive learning tool, enhancing its utility for users who benefit from interactive and multimodal learning approaches. This enhancement would cater to various learning styles, making it a versatile and valuable tool for a wider audience.

custom prompts for Creator

At the moment all prompts are hardcoded.
It could be a feature to give this option.
Maybe from Settings user could be able to edit default prompts.

Readme improvements

Is your feature request related to a problem? Please describe.
Current readme miss new features.

Describe the solution you'd like
For better goal of the project and demonstration record video and make new gifs about new features.

Additional context
Features regarding Viewer Chat, refreshed settings page, Creator with temporary assistant(without document).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.