With this program, you can easily create a repository on GitHub :octocat: with a basic template, personalized for your use.
Project description
create_structure
Contents
- Description
- Required
- Setup/ Update
- Directories structure
- Execution examples
- How to create your own template
- Changelog
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
- GitHub Token with repo and organization permission
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
- Value of the alias:
- 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
- ISSUE_TEMPLATE
- 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 :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 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.0_2021-01-11
- 6.2_2021-01-04
- 6.1_2021-01-03
- 6.0_2020-12-16
- 5.5_2020-12-13
- 5.4_2020-12-12
- 5.3_2020-11-29
- 5.2_2020-11-28
- 5.1_2020-11-28
- 5.0_2020-11-21
- 4.0_2020-09-25
- 3.1_2020-08-18
- 3.0_2020-08-15
- 2.0_2020-03-24
- 1.0_2020-03-24
7.0_2021-01-11
- Added Debian package
- Added Choco package
- Automate Choco package publishing
6.2_2021-01-04
- Added emoji :smile: 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:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
createstructure-7.0.0.tar.gz
(7.4 kB
view hashes)
Built Distribution
Close
Hashes for createstructure-7.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 983b5570364b0f66c50742a1c1bc9ea579538e63f84b1f98e9c8c8326b9688c6 |
|
MD5 | c4c9911e811e532f10f57ae46505ebee |
|
BLAKE2b-256 | a11f8f4b5b45825f38b6aa8af123635cb7fcd8be1c2dbc4b3522196ae3512d5b |