Metadata-Version: 2.4
Name: now_lms
Version: 0.0.1b6.dev20250815
Summary: Create, deliver, and certify courses with ease.
Author-email: BMO Soluciones <soluciones.bmo@gmail.com>
License-Expression: Apache-2.0
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Education
Classifier: Framework :: Flask
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Education
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: alembic
Requires-Dist: appdirs
Requires-Dist: argon2-cffi
Requires-Dist: babel
Requires-Dist: bleach
Requires-Dist: cryptography
Requires-Dist: cuid2
Requires-Dist: flask
Requires-Dist: flask
Requires-Dist: flask-alembic
Requires-Dist: flask-babel
Requires-Dist: flask-caching
Requires-Dist: flask-login
Requires-Dist: flask-mail
Requires-Dist: flask-mde
Requires-Dist: flask-reuploaded
Requires-Dist: flask-sqlalchemy
Requires-Dist: flask_weasyprint
Requires-Dist: flask-wtf
Requires-Dist: markdown
Requires-Dist: pg8000
Requires-Dist: pyjwt
Requires-Dist: python-slugify
Requires-Dist: python-ulid
Requires-Dist: qrcode
Requires-Dist: sqlalchemy
Requires-Dist: requests
Requires-Dist: redis
Requires-Dist: waitress
Requires-Dist: weasyprint
Requires-Dist: wtforms
Provides-Extra: mysql
Requires-Dist: mysqlclient; extra == "mysql"
Dynamic: license-file

# NOW - Learning Management System

![PyPI - License](https://img.shields.io/pypi/l/now_lms?color=brightgreen&logo=apache&logoColor=white)
![PyPI](https://img.shields.io/pypi/v/now_lms?color=brightgreen&label=version&logo=python&logoColor=white)
![PyPI - Wheel](https://img.shields.io/pypi/wheel/now_lms?logo=python&logoColor=white)
[![Docker Repository on Quay](https://quay.io/repository/bmosoluciones/now_lms/status "Docker Repository on Quay")](https://quay.io/repository/bmosoluciones/now_lms)
[![codecov](https://codecov.io/github/bmosoluciones/now-lms/graph/badge.svg?token=SFVXF6Y3R3)](https://codecov.io/github/bmosoluciones/now-lms)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=bmosoluciones_now-lms&metric=alert_status)](https://sonarcloud.io/dashboard?id=bmosoluciones_now-lms)
[![Code style: black](https://img.shields.io/badge/Python%20code%20style-black-000000.svg)](https://github.com/psf/black)
[![Code style: Prettier](https://img.shields.io/badge/HTML%20code%20style-prettier-ff69b4.svg)](https://github.com/prettier/prettier)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![Join the chat at https://gitter.im/now-lms/community](https://badges.gitter.im/now-lms/community.svg)](https://gitter.im/now-lms/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

![Logo](https://github.com/bmosoluciones/now-lms/blob/main/now_lms/static/icons/logo/logo_large.png?raw=true)

A simple-to-{install, use, configure, monetize, and maintain} learning management system.

![ScreenShot](https://raw.githubusercontent.com/bmosoluciones/now-lms/main/docs/images/screenshot.png)

## Documentation

[![Documentation Status](https://readthedocs.org/projects/now-lms-manual/badge/?version=latest)](https://now-lms-manual.readthedocs.io/en/latest/?badge=latest)

-   Users please refer to the [user manual](https://now-lms-manual.readthedocs.io/en/latest/).
-   System Administrators, refer to the [documentation](https://bmosoluciones.github.io/now-lms/index.html).

Live demo: https://now-lms-demo.onrender.com/

```
User: lms-admin
Password: lms-admin
```

Data in the live demo is reset on every deployment. Please wait for the free Render instance to wake up.


## Getting Started

Thanks for your interest in the NOW - LMS project.

### Dependencies

-   Requires python >= 3.11
-   Requires minimal resources to run

### Quick Start

To start a local server, simply execute:

```
python3 -m venv venv
python -m pip install now_lms
python -m now_lms
```

Visit `http://127.0.0.1:8080/` in your browser, the default user and password are `lms-admin`.
Note: the default server binds only to localhost. You can test the software locally. If you want to deploy NOW-LMS for production use, please check the [user manual](https://bmosoluciones.github.io/now-lms/setup.html).

### Features

NOW - LMS is designed to be simple yet powerful. Here are its key features:

- **Clean codebase** using [Flask](https://flask.palletsprojects.com/), [Bootstrap](https://getbootstrap.com/), Python, and HTML5.
- **Compatible with multiple databases**: SQLite (default), PostgreSQL, and MySQL.
- **Complete course creation functionality**, allowing full curriculum setup.
- **Courses are organized into sections**, which group resources in a logical manner.
- **Flexible resource types** within a course section:
  - YouTube videos
  - PDFs
  - Images
  - Audio files
  - Rich text content
  - External HTML pages
  - Slide presentations
  - External resource links
- **Course types**:
  - Free or paid
  - Self-paced, synchronous (with tutor), or time-limited
- **Paid courses support an audit mode**, allowing limited access without evaluations or a certificate.
- **Certificate generation** upon course completion, exportable as PDF.
  - Includes **QR code validation** for authenticity.
- **Role-based access control**:
  - Admin
  - Instructor
  - Moderator
  - Student
- **Internal messaging system** for students to contact instructors and course moderators.
- **Discussion forums** integrated per course.
- **Announcement system** for course-wide notifications.
- **Assessment tools** for quizzes and evaluations.
- **Basic blog functionality** for content publishing.
- **Courses can be grouped into programs**.
- **Payment integration via PayPal**.
- **Monetization of free courses** through Google AdSense.
- **Theming and customization**:
  - Easily switch themes
  - Fully override the home page if needed
- **Email notification system** for important events and updates.


## Contributing

Thanks for your interest in contributing to the NOW-LMS project. Please note that this is an open-source project, so your contribution will be available to others for free under the terms of the Apache License. Refer to the [CONTRIBUTING](https://github.com/bmosoluciones/now-lms/blob/main/docs/CONTRIBUTING.md) file to get started.

## Logo

The NOW - LMS logo was developed by  [Muhammad Nabeel A.](https://www.freelancer.es/projects/logo-design/Logo-desing-for-Open-Source/).
