Note: This project will soon deprecate the use of Python, and will only use GoLang. In short words, it will soon only use Go.
Hi and welcome to markdown-repository-snapshot-app
! 👋👋👋👋👋
This is a lightning-fast application that you input a GitHub repository's URL into, alongside ignore files&folders, and it outputs a downloadable output.md
file, which contains a snapshot of the non-excluded, non-ignored files. (And when I say "snapshot", I mean the names of files alongside their contents in a code block.) Here are the latest updates:
- As of May 19, 2024, you do not need a GitHub API key in order to use the application (even though it still requires an internet connection).
- As of June 5, 2024, you can now optionally provide the name of a specific directory in the repository that you'd like to take a snapshot of.
Feels like magic!
Release Date: May 17, 2024
Phase: Completed (sort of)
Need to work on:
- Making it work via GitHub API and GitHub API token
- Doing it via getting and unzipping zip file for repository (the magical part)
- Allowing users to take a snapshot of a specific directory in the repository
- Allowing users to take a snapshot of a specific branch in the repository
Feel free to look at the code--the app is all open-source!
Just a heads up: If you don't feel like running it, why don't you look at the image below? It really works! And it's really, really fast! (Trust me, as long as your computer is functioning properly, you can generate the snapshot in a maximum of only 4 seconds, no matter how big the repository is.)
- First, ensure you have installed GoLang and Python.
- After this, you can open your terminal, navigate to the desired directory, and run:
git clone https://github.com/gooddavvy/markdown-repository-snapshot-app.git
cd markdown-repository-snapshot-app
code .
Then, open a VS-Code terminal in the workspace, and run:
cd backend
go mod tidy
go run main.go
After that, open another one, and run:
cd frontend
pip install -r requirements.txt
python app.py
If everything works as expected, it should automatically open http://localhost:8501
in your default browser.
Contributions are welcome! If you find any issues or have suggestions for improvements, please create a new issue or submit a pull request.
Stars! Also, if you like and/or support this project, please star it! Thank you so much!