# Awsume's Developer Documentation
Welcome to Awsume's developer documentation. This is where you can find information around how the Awsume code-base is structured, to make development on the project easier.
Awsume is written as a command-line tool in Python, so most conventional Python standards are followed.
# Project Layout
awsume- the main package for the awsume application
awsume_autocomplete- a peripheral package used to make awsume's autocomplete on plugin-supplied profiles a lot faster
docs- the VuePress documentation location - what you're reading right now!
shell_scripts- the location of the shell script wrappers that are used to wrap the
awsumepyexecutable for a given shell. This allows
sourceing the shell script so your active shell's AWS environment variables can be set
test- the location of awsume's test files
Its environment has been described in the
Pipfile, with some scripts that can help facilitate your development.
It's helpful to be familiar with the following when developing for awsume:
- Python development:
- Unit testing and module/function mocking
- Plugin Systems
- IAM users and roles
- STS credentials
- Shared Credentials and Config files (opens new window)