diff --git a/.github/workflows/generate-readme.yml b/.github/workflows/generate-readme.yml index bf9f786..9e2d745 100644 --- a/.github/workflows/generate-readme.yml +++ b/.github/workflows/generate-readme.yml @@ -5,7 +5,7 @@ on: # push: # paths: # - 'core/data/**' - # - 'source/components/**' + # - 'core/components/**' workflow_dispatch: schedule: - cron: '0 1 * * *' # Every day at midnight UTC diff --git a/core/source/generation/readme_generator.py b/core/source/generation/readme_generator.py index 139a5a2..95d35ed 100644 --- a/core/source/generation/readme_generator.py +++ b/core/source/generation/readme_generator.py @@ -8,16 +8,16 @@ platforms = ["all", "windows", "macos", "linux", "selfhost"] # Platforms mapped to corresponding header files header_files = { - "all": "source/components/header.md", - "windows": "source/components/windowsheader.md", - "macos": "source/components/macosheader.md", - "linux": "source/components/linuxheader.md", - "selfhost": "source/components/selfhostheader.md" + "all": "core/components/header.md", + "windows": "core/components/windowsheader.md", + "macos": "core/components/macosheader.md", + "linux": "core/components/linuxheader.md", + "selfhost": "core/components/selfhostheader.md" } def generate_readme_for_platform(platform): content = "" - header_file = header_files.get(platform, "source/components/header.md") + header_file = header_files.get(platform, "core/components/header.md") # Inject mainheader with dynamic project count if platform == "all": @@ -28,7 +28,7 @@ def generate_readme_for_platform(platform): content += f.read() + "\n" # Inject tags.md - with open("source/components/tags.md", "r", encoding="utf-8") as f: + with open("core/components/tags.md", "r", encoding="utf-8") as f: content += f.read() + "\n" # Generate Table of Contents @@ -40,7 +40,7 @@ def generate_readme_for_platform(platform): content += contents_md + "\n" # Inject footer.md - with open("source/components/footer.md", "r", encoding="utf-8") as f: + with open("core/components/footer.md", "r", encoding="utf-8") as f: content += f.read() + "\n" # Write output file diff --git a/resources/dev/ARCHITECTURE.md b/resources/dev/ARCHITECTURE.md index bd6587b..5797f58 100644 --- a/resources/dev/ARCHITECTURE.md +++ b/resources/dev/ARCHITECTURE.md @@ -5,7 +5,7 @@ Here's a look at how the "backend" of the list works. ## README Generation All applications are stored inside [`applications.json`](core/data/dynamic/applications.json). Categories are declared inside [`categories.json`](core/data/static/categories.json). Instead of a nested format with subcategories as on object of it's parent, we've given subcategories a `parent` attribute. There's also a [`tags.json`](core/data/static/tags.json). Instead of putting the emoji inside of the ```tags``` attribute in `applications.json`, the id is used, for example, `commercial` or `disruptive`.. These id's are mapped to their corresponding emoji for when the READMEs are generated and makes``applications.json``` more readable. -The generation scripts are inside of the [`core/source/generation`](core/source/generation) directory. [`mainheader_generator.py`](core/source/generation/mainheader_generator.py) generates the very top header with the dynamic project count. Then, depending on the platform being generating, it inserts [`header.md`](source/components/header.md), [`macosheader.md`](source/components/macosheader.md), etc. +The generation scripts are inside of the [`core/source/generation`](core/source/generation) directory. [`mainheader_generator.py`](core/source/generation/mainheader_generator.py) generates the very top header with the dynamic project count. Then, depending on the platform being generating, it inserts [`header.md`](core/components/header.md), [`macosheader.md`](core/components/macosheader.md), etc. [`tableofcontents_generator.py`](core/source/generation/tableofcontents_generator.py) generates the table of contents. It creates one, expandable but hidden by default, with all subsections listed alphabetically. The default TOC shows parent categories alphabetically with subcategories underneath, also alphabetically.