Skip to main content

EduLint

Pypi Python versions Tests ReadTheDocs Docker image

EduLint is a Python linter aimed at helping novice programmers improve their coding style. Presently, it integrates flake8 and pylint, with some tweaks to their default configuration.

This repository contains the linter itself, which is packaged and published as a Pypi package edulint. There is also a web version running at edulint.com for easy use. Its source code is in another repository.

Demo GIF

Usage

Web version

Are you just starting with programming in Python? Then the web UI (website, repo) might be the best choice for you.

Python package

For ease of use there are multiple ways how to install and run EduLint locally. You can find more examples, options and configurations details in the documentation.

Using pipx

pipx install edulint        # Installation
edulint check some_file.py  # Usage example

Using pip

python3 -m pip install --user edulint  # Installation
python3 -m edulint check some_file.py  # Usage example

Docker container

docker run -v ${PWD}:/app edulint/edulint-cli check some_file.py

Road map (long-term)

  • Additional explanations for problems detected in code
  • Thonny plugin
  • More code quality defects (from WPS; detecting duplicate code)
  • Rewrite web to React
  • Add additional functionality to web (more settings, better teacher onboarding, …)
  • Speed-up linting by switching to Ruff
  • official VS Code plugin (3rd party plugin already exists: Github, VS Code Marketplace)

Sponsorship and academic collaboration

Are you interested in sponsoring this project, want to collaborate on an academic paper, or know of any interesting grants? Feel free to reach out to anna.rechtackova@mail.muni.cz.

Compatibility with other software

Python version

Supported: Python 3.8+ (tested up-to Python 3.14)

Python 3.7 is no-longer officially supported, as Python 3.7 is already EOL. Last version that supported it was Edulint v3.6.1. Be aware that some linting results may be different between 3.7 and 3.8 due to different parsing between package typed-ast (<=3.7) and Python's native ast (>=3.8).

Release files for edulint 4.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for edulint 4.3.1
File Size Uploaded
edulint-4.3.1.tar.gz 255.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for edulint 4.3.1
File Interpreter ABI Platform
edulint-4.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 511.4 kB

Release files / edulint-4.3.1.tar.gz

Download URL edulint-4.3.1.tar.gz
Size 255.6 kB
Tags Source
SHA-256 checksum
How to use checksums
0bc9ee95743a18a70f92eb426e06b1af2713fcc21aedacf60dff0ae2902484f9
BLAKE2b-256 checksum
How to use checksums
a16b040173a931feedf48912070e5c46583b632fa67428cf544d74acec70241e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / edulint-4.3.1-py3-none-any.whl

Download URL edulint-4.3.1-py3-none-any.whl
Size 255.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66a6110418457ed314db047fe302eeed390390338d729055d636c765f8ae1b9a
BLAKE2b-256 checksum
How to use checksums
4da7b2e15c67363a896897c7a61bf5441ea91f98a5a7acc0106ce880591f6dff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

4.3.1 This release

2 release files

4.3.0

2 release files

4.2.2

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.5

2 release files

4.1.4

2 release files

4.1.3

2 release files

4.1.2

2 release files

4.1.1

2 release files

4.0.0

2 release files

3.6.1

2 release files

3.6.0

2 release files

3.5.1

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.10.2

2 release files

2.10.1

2 release files

2.10.0

2 release files

2.9.2

2 release files

2.9.1

2 release files

2.9.0

2 release files

2.8.0

2 release files

2.7.1

2 release files

2.6.4

2 release files

2.6.3

2 release files

2.6.2

2 release files

2.6.1

2 release files

2.6.0

2 release files

2.5.1

2 release files

2.5.0

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.2

2 release files

2.2.1

2 release files

2.2.0

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page