Skip to main content

This is the magic bot by Castellani Davide

Project description


GitHub license Author Version Language Python sys.platform supported On GitHub PyPI



This is the magic :octocat: bot :octocat: by Castellani Davide With this programm you can easily create a repository on GitHub :octocat: with a basic template, personalized for your use.


  • required python3 (>=3.8)
  • pip3
  • Internet connection
  • GitHub account


Attention: replace <SOME_WORDS> with your values

  • All OS using pypi:
    • pip install createstructure
    • Made an alias of use
      • Value of the alias: python3 -c "exec(\"from create_structure import create_structure;create_structure()\")" -t=<TOCKEN> -s=<(optional)_ARRAY_OF_TEMPLATE_SOURCES> -o=<(optional)_ORGANIZATION> -i=<(optional)_FOLDERS_AND_FILES_TO_BE_IGNORED_BY_TEMPLATE>
      • Eg. ubuntu/debian (after this reload the terminal): echo alias createstructure='python3 -c "exec(\"from create_structure import create_structure;create_structure()\")" -t=<TOCKEN> -s=<(optional)_ARRAY_OF_TEMPLATE_SOURCES> -o=<(optional)_ORGANIZATION> -i=<(optional)_FOLDERS_AND_FILES_TO_BE_IGNORED_BY_TEMPLATE>' >> ~/.bash_aliases
      • Example of use: echo "alias createstructure='python3 -c \"exec(\\\"from create_structure import create_structure;create_structure()\\\")\" -t=abcb1234 -s=[CastellaniDavide] -o=CastellaniDavideTest -i=[.vs,.vscode]'" >> ~/.bash_aliases
  • Manual by source:
    • install git
    • download the repo git clone
    • install python3
    • install pip3
    • install requirements.txt (in core of the project): pip3 install -r requirements/requirements.txt
    • create an alias
      • name: create_structure
      • attribute: python3 <ABSOLUTE_PATH_OF_REPO>/bin/ -t= -s=<ARRAY_OF_SOURCES> -o=<(optional)_ORGANIZATION> -i=<(optional)_FOLDERS_TO_BE_IGNORED_FROM_TEMPLATE>


  • With pypi method: pip3 install [package_name] --upgrade

Directories structure

  • .github
      • *.md
    • workflows
      • *.yml
  • create_structure
    • __init
  • doc
    • _config.yml
  • requirements
    • requirements.txt
  • .gitignore

Execution examples

  • create_structure

How to create your own template

1. Open father template

2. Clone the templete into your GitHub account

  • Press "Use this template" bottom
  • Compile the form that you see, take attention to the owner and make sure the visibity to "Public"

3. Modify it

  • You can clone on your PC and choose what and how to change (it's not a problem if you want to change all the structure :smile:)
  • Take attention to che .castellanidavide\change.json file
    • You can see some change examples => ... "from": "to", ...
    • Make attention to this special alias
      • sol<question_tag>sol -> the result of your answer in the form you made at the beginning
      • time__now -> Datetime (format yyyy-mm-dd)
      • time_now -> Datetime (format yyyymmdd)
      • (Do you have any idea? You can say me on the help email and I could add it to newer versions)
  • Rememper to push your changes

4. Add your account into research

  • Add your Own name into SOUCES_OF_TEMPLATES, keep attention to the order (i sugge

5. Try it

  • Try to execute this programm and check correct use



  • Added emoji :smile: to the output


  • Fixed a bug
  • Adjusted variable names
  • Added a method to understand when an answer is positive, this for a more centralized control
  • Added developer/ verbose setting
  • Update .gitignore
  • Added the possibility to add automatically the answers
  • Optimized
  • Now the workflows file are loaded at the end
  • Update workflows


  • Add first version of GitHub Actions


  • Fixed some bugs
  • Changed the
  • Create a setup method <= easier to use
  • Changed the way to give the tocken, ... => now by CLI


  • removed some untils lines
  • accelerated the code
  • parametrized the folder to be ignored
  • start to use multitreading (41 sec. -> 10 sec.) (I made this test using this template)
  • optimized imports
  • optimised variables


  • Added the website documentation
  • Fixed a bug


  • Fixed a bug
  • Add team selection in runtime execution


  • Fixed a bug
  • Made a better documentation
  • Optimized the question structure
  • Optimized the questions
  • Added some variables
    • Template sources list
    • Organization name (if you want to save into an Organization)
  • Removed some ununtil variables


  • Fixed a bug
  • Remove the necessity of insert credentials any time
  • Download in any case, before only if public repo
  • removed unused files


  • optimized the code
  • added requirements.txt


  • add GitHub support with a lot of options (eg. repo private or public)


  • adjusted some bugs
  • improved the program


  • Initial version

Made by Castellani Davide If you have any problem or ask please contact me:

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

createstructure-6.2.tar.gz (7.3 kB view hashes)

Uploaded Source

Built Distribution

createstructure-6.2-py3-none-any.whl (7.6 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