Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added readme beginnings #101

Merged
merged 7 commits into from
Jun 7, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 122 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
# -mollify

![Mollify Preview](readme/mollify.jpg)

Mollify is a dynamic Learning Management System (LMS) designed to provide a user-friendly interface for managing and navigating markdown content. The platform offers a multitude of features, including content navigation, search capabilities, bookmarking, text-to-speech functionality, an AI assistant, and a markdown editor with 'What You See Is What You Get' (WYSIWYG) capabilities.

## Description

Mollify, divided into various packages within a Lerna monorepository, primarily consists of the LMS and CLI. These modules empower users to manage their content efficiently and transform it into a navigable webpage.

### Mollify LMS Package

The Mollify LMS package is the frontend of the Mollify project, constructed using Sveltekit, TypeScript, Tailwind, Skeleton UI, and MDsveX. The aim is to convert markdown content into an accessible website, enabling users to navigate, search, and bookmark content effectively, along with additional feature integration. The ultimate goal is to allow users to install the LMS package, migrate their existing content or create new, and finally, present it as a website.

### Mollify CLI Package

Mollify CLI is a command-line tool designed to manage the filesystem for the Mollify Learning Management System (LMS). It ensures that the file structure adheres to SvelteKit's file path conventions and provides a convenient way to create, archive, and remove various entities within the LMS. Mollify CLI is written in TypeScript and uses the Commander and Enquirer libraries to provide a user-friendly and intuitive interface.

### Mollify Molly Package

Mollify Molly is an OpenAI-powered teaching assistant, designed to enhance the student learning experience by tapping into the lesson content to answer queries. The aim is to make learning more interactive and efficient with Molly's capabilities. We aim to expand Molly's functionalities to not only assist students but also teachers and content creators. In the pipeline, we have plans for Molly to aid in content creation with the Flow package. Its anticipated capabilities include facilitating the generation of quizzes and glossaries, thereby streamlining the course creation process. Furthermore, we also foresee Molly automating the creation of file frontmatter such as tags and summaries, leading to efficient management and categorization of course content. This could possibly even extend to automating the migration of content into the system, thereby streamlining the integration process.

### Mollify TTS Package

Mollify Text-To-Speech provides audio for markdown content, enabling users to generate and listen to the content. Currently leveraging ElvenLabs for TTS, future plans may include various optional TTS packages to offer a more flexible user experience.

### Mollify Flow Package

Mollify Flow offers a user interface for the CLI package, enabling users to create, update, and manage content. It includes a WYSIWYG editor for real-time content preview and update tracking.

### Mollify Types Package

Mollify Types package is home to all TypeScript types and definitions for easy import into any of the Mollify packages.

## Stack

These are a some of the core dependencies although many more are present.

- Lerna
- Sveltekit
- TypeScript
- Tailwind
- Skeleton UI
- Vite

## Getting Started

### Installing

1. Clone the repo:

```bash
git clone https://github.com/Fermain/-mollify.git
```

2. Install the dependencies:

```
npm install
npx lerna bootstrap
```

3. Create a .env in the LMS package root

```
OPENAI_API_KEY=YOUR_KEY
OPENAI_TOKEN_LIMIT=1000
ELEVENLABS_API_KEY=YOUR_KEY
```

### Usage

To run the LMS you can use this command from the root, alternatively you can run this on the Molly and Flow branches.

```bash
npx lerna run dev --scope @mollify/lms
```

### Future Implementation

A future goal is for users to simply run the following command to automatically install Mollify and its dependencies:

```
npm i @mollify/LMS
```

Then create a content folder with markdown files using the Flow editor, or migrate existing content using

```
npx mollify migrate
```

Then a user will be prompted to answer questions relating to the front matter of the content so it can be indexed and run as a website.

## Contributing

Create a fork, find an issue to work on and submit a pull request with your contribution.

## Contact

[![Fermain God Emperor](readme/contact.jpg)](https://github.com/Fermain)
Anclagen marked this conversation as resolved.
Show resolved Hide resolved

## License

Copyright 2023 Oliver Dipple

Licensed under the Apache License, Version 2.0 (the "License");

http://www.apache.org/licenses/LICENSE-2.0

## Acknowledgments

Project Lead

- Oliver Dipple [Fermain](https://github.com/Fermain)

Collaborators

- Alexander Barrett [Anclagen](https://github.com/Anclagen)
- Eric Pretzinger [pretzL](https://github.com/pretzL)
- Jenny Feragen [jenfer93](https://github.com/Jenfer93)
- Melisa Zorraindo [Melisa-Zorraindo](https://github.com/Melisa-Zorraindo)
Binary file added readme/contact.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added readme/mollify.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.