Skip to main content

A lightweight TUI designed to simplify formatting of Markdown changelogs.

Project description

Developer Assistant

Setup info: Start with SETUP to get started.

Latest changes: Yes, I keep a CHANGELOG

Requirements: Python 3.13 or later.

Cross-platform: Windows, Linux, macOS(unverified)

Appearance

Coloured, easy-to-use menus

Changelog Menu

Beautiful changelog previews

Preview your Markdown changelogs directly in the terminal with Rich rendering:

Changelog Preview

Introduction

What does this tool do?

Developer Assistant is a lightweight TUI tool for automating and managing your changelogs. You can customize the templates to match your existing format, and use DA as a central hub to access every changelog and project folder you maintain.

You can manage as many projects as you like. Each project gets its own .ini file, created automatically through the menu based on the information you provide. These act as links that tell DA where your changelogs are and what's the last version number.

Your files are kept safe at all times. Before adding new changes, your existing CHANGELOG.md is automatically backed up. While editing, all changes are written to a temporary file first and only applied to the real changelog once you confirm them.

Using the program.

  1. What not to do

Don't change the folder structure or modify variable names inside .ini files.

  1. Features and information

The user's data (Templates/, Projects/, memory.ini) is stored in standard locations:

Windows: C:\Users\...\AppData\Roaming\da-ui\

Linux: ~/.config/da-ui/

macOS: ~/Library/Application Support/da-ui/

The da-ui/ folder will be created automatically.

You can access its content quickly when going to: Main menu / Settings

  • Customizable templates

In the local Templates/ folder you can modify the template contents to your liking - just avoid changing the {{placeholder}} names.

  • Linked projects all in one place

The Projects/ folder holds the .ini files you create when starting a new project with DA.

  • Safe changelog updates

Before applying any changes, your previous CHANGELOG.md is automatically backed up into your project folder. New changes are first written to a temporary file and only applied to the real changelog after you confirm them. This ensures your existing changelog is never overwritten or corrupted, and you always have a fallback copy. If the temporary changelog is present on startup you are prompted to remove or keep it.

  • Ease of navigation

You can access files/folders and configuration straight from the menus, so you shouldn't find yourself searching through the program's directory or even your local user data very often.

  • Configuration

The memory.ini file does exactly what you'd expect, it features:

Last project

Pinned projects

Custom colour

Last project gets updated automatically, the rest are up to you.

  • Ctrl+C works everywhere to quickly exit DA.

Documentation.

Documentation includes SYSTEM STRUCTURE.txt, example -and default files. If you ever need to replace a file, the example/default files can be used for that.

Setting up your first project

For a dummy changelog to experiment with, navigate to Main menu / Projects, choose Test-Project, then choose option 4. to start adjusting this projects paths.

The Test-Project/ folder is included in the programs root folder for repo clones and is safe to experiment with. If you installed from an URL just make a CHANGELOG.md anywhere and point the .ini file to it.

Once configured, you can create as many changelog entries as you want by picking that project in the menu.

Updating DA

Two possibilities, depending on how you installed.

1. Installed directly from GitHub URL

A. Using uv:

  1. uv tool install git+https://github.com/Ivory-Hubert/Developer-Assistant

B. Using pip:

  1. pip install --upgrade git+https://github.com/Ivory-Hubert/Developer-Assistant

2. Installed from a local clone

Run all terminal commands in the repo folder

A. Using uv:

  1. git pull
  2. uv tool install .

B. Using pip:

  1. git pull
  2. pip install .

C. No install, running from repo root:

Just git pull

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

developer_assistant-0.2.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

developer_assistant-0.2.0-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file developer_assistant-0.2.0.tar.gz.

File metadata

  • Download URL: developer_assistant-0.2.0.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Pop!_OS","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for developer_assistant-0.2.0.tar.gz
Algorithm Hash digest
SHA256 40eb828a761947772e782eb49b105e9c9e460ce4b3ed43766959ab427b810d00
MD5 405fac6799d25f1cd03e4ca5bce64f52
BLAKE2b-256 ef6fb70dba5280adcdf7ca3413960971e62f56dbfbe7ab0da2ef5ac8ed310665

See more details on using hashes here.

File details

Details for the file developer_assistant-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: developer_assistant-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Pop!_OS","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for developer_assistant-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b443520a995ac73b90d157635b240e8d97b42c038cbebc3b6ff6c14daed39c52
MD5 586738bae7d53e1ae115967cd85c8786
BLAKE2b-256 b2280c65bd3d6a885a14cd6b8c555a7a02eee62476306e9b959c6e761ba21381

See more details on using hashes here.

Supported by

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