https://github.com/joaoofreitas/challenge-generator
A program that generates a folder structure with challenges and projects for mastering a programming language.
https://github.com/joaoofreitas/challenge-generator
challenge improvement learning-by-doing projects
Last synced: 5 months ago
JSON representation
A program that generates a folder structure with challenges and projects for mastering a programming language.
- Host: GitHub
- URL: https://github.com/joaoofreitas/challenge-generator
- Owner: joaoofreitas
- License: mit
- Created: 2021-03-15T02:47:20.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-03-30T00:11:20.000Z (about 5 years ago)
- Last Synced: 2024-06-20T12:48:11.134Z (almost 2 years ago)
- Topics: challenge, improvement, learning-by-doing, projects
- Language: Go
- Homepage:
- Size: 17.6 KB
- Stars: 68
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Challenge Generator
A program that generates a folder structure with challenges and projects for mastering a programming language.
Explore the docs »
Report Bug
·
Request Feature
·
Send a Pull Request
## Table of Contents
* [About the Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Download](#download)
* [Usage](#usage)
* [Contributing](#contributing)
* [License](#license)
* [Contact](#contact)
* [Acknowledgments](#acknowledgments)
## About The Project 🤠
This project was created just for fun since I wanted to follow [_Karan's_](https://github.com/karan) projects that are in [_this_](https://github.com/karan/Projects) repository.
Before starting with the projects I realized that I'm too lazy to generate a whole file structure to separate and isolate the projects. So I decided to make a program to do it for me.
This program fetches [this](https://raw.githubusercontent.com/karan/Projects/master/README.md) URL and parses it separating subjects, exercises, names, and descriptions into a structure that will be the gate for generating a file structure like this:
```bash
📦Project Learning
┣ 📂Classes
┃ ┣ 📂AirlineHotelReservationSystem
┃ ┃ ┗ 📜README.md
┃ ┣ 📂BankAccountManager
┃ ┃ ┗ 📜README.md
┃ ┣ 📂CompanyManager
┃ ┃ ┗ 📜README.md
┃ ┣ 📂FamilyTreeCreator
┃ ┃ ┗ 📜README.md
┃ ┣ 📂FlowerShopOrderingToGo
┃ ┃ ┗ 📜README.md
┃ ┣ 📂ImageGallery
┃ ┃ ┗ 📜README.md
┣ 📂ClassicAlgorithms
┃ ┣ 📂Closestpairproblem
┃ ┃ ┗ 📜README.md
┃ ┣ 📂CollatzConjecture
┃ ┃ ┗ 📜README.md
┃ ┣ 📂SieveofEratosthenes
┃ ┃ ┗ 📜README.md
┃ ┗ 📂Sorting
┃ ┃ ┗ 📜README.md
```
### Built With 🔨
This program is built purely with [Go](https://golang.org/). No need for extra libraries or any bloated stuff. Minimal and simple.
I've chosen [Go](https://golang.org/) since it's one of the programming languages that I enjoy most.
## Download 📥
This program was meant to be compiled into a single executable. You can download it on my [_releases_](https://github.com/joaoofreitas/challenge-generator/releases) page and download the specific version for your platform.
## Usage 💻
For using this program, simply double-clicking would do the job, but if you want to see the logs properly you can run it in the terminal using:
``` bash
./path_to_executable_file
```
The base directory by default will have the name "Project Learning", but you can change before being generated by putting the name of the base directory as an argument:
``` bash
./path_to_executable_file
```
## 🚧 Roadmap
See the [open issues](https://github.com/joaoofreitas/challenge-generator/issues) for a list of proposed features (and known issues).
## 🤝 Contributing
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are **extremely appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## 📝 License
Distributed under the MIT License. Check `LICENSE` for more information.
## 📫 Contact
João Freitas - _Contact me_
## Acknowledgments
Huge thanks to [Karan](https://github.com/karan) for creating the README.