Skip to main content

A Command Line application to manage your ESP-IDF projects with ease.

Project description

espy-cli

A Command Line application to manage your ESP-IDF projects with ease.

Installation

pip install espy-cli

This assumes that python3 is the default python version in your system.

Features

  • Manage all your projects and change their configuration
  • Use multiple IDF versions without the need to update Environment variables and then logout or reboot
  • Change the IDF used in a project at any time

Note

Initially you need to configure 1 path in the IDF_PATH environment variable, only once.
Projects are called apps.
Before creating an app make sure you have added atleast 1 IDF path.
In case you forget espy will remind you ;)

Usage

  1. Managing IDFs

    • Add a new IDF

      $ espy idf new -n idf1 -f /home/user/esp/esp-idf
      
      Successfully added idf1 to config
      
    • Get all or specific IDF(s)

      $ espy idf get
      
      +------+--------------------------------------+
      | name | filepath                             |
      +------+--------------------------------------+
      | idf1 | /home/user/esp/esp-idf               |
      | idf2 | /home/user/esp/esp-idf-v3.3-beta3    |
      +------+--------------------------------------+
      
      $ espy idf get -n idf1
      
      +------+--------------------------------------+
      | name | filepath                             |
      +------+--------------------------------------+
      | idf1 | /home/user/esp/esp-idf               |
      +------+--------------------------------------+
      
    • Modify a specific IDF

      $ espy idf mod -n idf1
      
      +------+--------------------------------------+
      | name | filepath                             |
      +------+--------------------------------------+
      | idf1 | /home/user/esp/esp-idf-v3.3-beta3    |
      +------+--------------------------------------+
      
      Change the name? [y/N]: y
      Enter the new name for the IDF: default
      
      Change the path of the IDF? [y/N]: y
      Enter the new path for the IDF: /home/user/esp/esp-idf
      
      Note: If this IDF has been used in an app, modify them if needed.
      Continue to modify IDF? [y/N]: y
      Succesfully modified the IDF
      
    • Delete all or specific IDF(s)

      $ espy idf del
      
      Delete all IDFs? [y/N]: y
      Successfully deleted required IDF(s)
      
      $ espy idf del -n idf1
      
      Delete IDF: idf1 [y/N]: y
      Successfully deleted required IDF(s)
      
  2. Managing apps

    • Create a new app

      $ espy app new -n hello_world -idf idf1
      Project created!
      
      $ tree hello_world/
      hello_world/
      ├── CMakelists.txt
      ├── main
      │   ├── CMakelists.txt
      │   ├── component.mk
      │   └── main.c
      └── Makefile
      
      1 directory, 5 files
      
    • Get all or specific App(s)

      $ espy app get
      
      +-------------+----------------------------------------------+------+---------------------------+
      | name        | filepath                                     | idf  | idfpath                   |
      +-------------+----------------------------------------------+------+---------------------------+
      | hello_world | /home/user/Documents/projects/hello_world    | idf1 | /home/user/esp/esp-idf    |
      +-------------+----------------------------------------------+------+---------------------------+
      
    • Modify an App

      $ espy app mod -n hello_world
      
      What do you wish to modify?
      [1] Name
      [2] IDF
      
      Enter option number (0 for ALL): 0
      
      Enter new name: bye
      Change the name of the project? [y/N]: y
      
      Name changed.
      
      Enter new IDF's name: idf2
      Change the IDF of the project? [y/N]: y
      
      IDF changed.
      
      Successfully modified app details!
      
  3. View Config

    $ espy show
    
    Config location: /home/user/.config/espy-cli/config.json
    
    IDFs
    
    +------+--------------------------------------+
    | name | filepath                             |
    +------+--------------------------------------+
    | idf1 | /home/user/esp/esp-idf               |
    | idf2 | /home/user/esp/esp-idf-v3.3-beta3    |
    +------+--------------------------------------+
    
    Apps
    
    +-------------+----------------------------------------------+------+---------------------------+
    | name        | filepath                                     | idf  | idfpath                   |
    +-------------+----------------------------------------------+------+---------------------------+
    | hello_world | /home/user/Documents/projects/hello_world    | idf1 | /home/user/esp/esp-idf    |
    +-------------+----------------------------------------------+------+---------------------------+
    

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

espy-cli-1.0.0.tar.gz (6.9 kB view hashes)

Uploaded Source

Built Distribution

espy_cli-1.0.0-py3-none-any.whl (10.4 kB view hashes)

Uploaded Python 3

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