Skip to main content

A set of utilites to make developing scripts simpler and easier

Project description

sdu logo


Script Development Utilities

A set of utilities to make developing scripts simpler and easier

Table of contents


There are several goals with this project:

  1. Provide a useful API for well developed functions with error catching and testing for commonly annoying situations

  2. Provide cross-platform implementations of functions (where possible)

  3. Give people access to source code to learn how the functions work and just pull what's needed

  4. Serve as a repository of general knowledge to share solutions to issues with people


From PyPi

  1. Run pip install sdu or sudo pip3 install sdu

From source

  1. Clone this repo: (put github/source code link here)
  2. Run pip install . or sudo pip3 install .in the root directory

Usage & Documentation

For usage please see the API documentation (

For details on how contributing to the project, please see, for details on upcoming changes see our roadmap.

For most recent changes see



This module is used to generate autocomplete files for bash


A module for helpful utilities with generating CLI's such as:

  • Clearing the terminal


This module contains many useful utilities for dealing with system paths such as:

  • A pre and post processing pipeline for system paths
  • Ability to add paths to the PATH variable


Quick and common conversions between types with sensible options such as:

  • Converting a dictionary (and second dimension dictionary keys) to defaultdict(s)


Contains a set of common validation schemes such as:

  • Validating number input is between a set value at the command line

  • Validate provided string is an accepted value


V0.1.1; September 24th

Fixing logo on pypi :)

Bug fixes

  • Fixed logo 404 on PyPi

V0.1.0; September 24th

Focus was on adding more functionality, and modernizing the package setup.


  • Added tests for paths, type_conversions and validation
  • Removed type_conversion.stringify_list since functionality can be one-lined using str.join
  • Added type_conversion.dict_to_defaultdict; Takes in a dictionary, and a default Callable then converts the dict to a defaultdict
  • Changed From Apache V2 to MIT liscence
  • Added paths.add_to_path for adding specified paths to system paths
  • Added testing for sdu.paths, sdu.validation, sdu.autocomplete, and sdu.type_conversions
  • Changed sdu.terminal to sdu.cli
  • Added sdu.autocomplete for generating bash autocomplete files

Documentation Improvements

  • Changed to second point releases (from 0.0.x to 0.x.0)
  • Improved the index documentation to be more clear and concise of an overview
  • Added bullet points to each package for a quick overview of what each module can be used for
  • Overhauled readme to be more useful

Bug Fixes

  • Fixed some preprocessing bugs with windows in path.preprocess_paths()

V0.0.1; February 8th 2020

Released existing code for the project, looking to properly implement in v0.1.0


  • Traversing directories in terminal and GUI
  • Validating number selections
  • Normalized serialization and de-serialization of paths

Documentation improvements

  • Created documentation site

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sdu-0.1.2.tar.gz (14.7 kB view hashes)

Uploaded source

Built Distribution

sdu-0.1.2-py2.py3-none-any.whl (15.7 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page