Skip to main content

create_structure

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

Contents

Description

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

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

Setup

Attention: replace <SOME_WORDS> with your values

  • Debian/ Ubuntu using apt:
    • sudo add-apt-repository ppa:castellanidavide/createstructure; sudo apt update; sudo apt install createstructure
  • Windows (using choco):
    • choco install createstructure
    • createstrucure.exe -l <- for the login
  • 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 https://github.com/CastellaniDavide/create_structure.git
    • 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/create_structure.py -t= -s=<ARRAY_OF_SOURCES> -o=<(optional)_ORGANIZATION> -i=<(optional)_FOLDERS_TO_BE_IGNORED_FROM_TEMPLATE>

Update

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

Directories structure

  • .github
    • ISSUE_TEMPLATE
      • *.md
    • workflows
      • *.yml
  • choco
  • create_structure
    • __init __.py
  • debian
  • doc
    • _config.yml
    • LICENSE
    • README.md
  • requirements
    • requirements.txt
  • setup.py
  • .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 😄)
  • 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 help@castellanidavide.it 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

Changelog

7.1_2021-02_13

  • Change internal team variable (team pointer => team name)
  • Adjust emoji
  • Add a parameter to create a template eg. -temp --template
  • Optimized multithreading on push

7.0_2021-01-11

  • Added Debian package
  • Added Choco package
  • Automate Choco package publishing

6.2_2021-01-04

  • Added emoji 😄 to the output

6.1_2021-01-03

  • 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 README.md
  • Now the workflows file are loaded at the end
  • Update workflows

5.5_2020-12-13

  • Add first version of GitHub Actions

5.4_2020-12-12

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

5.3_2020-11-29

  • 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

5.2_2020-11-28

  • Added the website documentation
  • Fixed a bug

5.1_2020-11-28

  • Fixed a bug
  • Add team selection in runtime execution

5.0_2020-11-21

  • 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

4.0_2020-09-25

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

3.1_2020-08-18

Changes
  • optimized the code
  • added requirements.txt

3.0_2020-08-15

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

2.0_2020-03-24

Changes
  • adjusted some bugs
  • improved the program

1.0_2020-03-24

  • Initial version

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

Metadata

Release files for createstructure 7.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for createstructure 7.1
File Size Uploaded
createstructure-7.1.tar.gz 7.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for createstructure 7.1
File Interpreter ABI Platform
createstructure-7.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.0 kB

Release files / createstructure-7.1.tar.gz

Download URL createstructure-7.1.tar.gz
Size 7.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ccef36b2cb4d6f361a0fd403eeefb372ef7394d624be4f168db22a273d1ea834
BLAKE2b-256 checksum
How to use checksums
e93b9f9c923a2c79717507652a6787120e2894e136932033e127ea063fb97d63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / createstructure-7.1-py3-none-any.whl

Download URL createstructure-7.1-py3-none-any.whl
Size 8.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35dd9b986ab03e4b34c4d3cef8be479fdaec7c4ff7c4de9fd08741fe8ca06578
BLAKE2b-256 checksum
How to use checksums
c14e89aa0808357172874e76d1d5cbee4756a962c3b4775a6e469851b19e923b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release history Release notifications | RSS feed

8.4

2 release files

8.3

2 release files

8.2

2 release files

8.1

2 release files

7.9

2 release files

7.8

2 release files

7.7

2 release files

7.6

2 release files

7.5

2 release files

7.4

2 release files

7.3

2 release files

7.2

2 release files

This release

7.1 This release

2 release files

7.0.0

2 release files

6.2

2 release files

6.1

2 release files

6.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page