{"id":27633783,"url":"https://github.com/djaus2/getlistofsamples","last_synced_at":"2026-05-02T02:36:34.678Z","repository":{"id":40865565,"uuid":"284606221","full_name":"djaus2/GetListofSamples","owner":"djaus2","description":"A Blazor WASM PWT app for recursing the folders of an API for sample apps and present them for individual download.","archived":false,"fork":false,"pushed_at":"2022-12-08T11:09:43.000Z","size":19919,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-23T18:19:33.861Z","etag":null,"topics":["blazor","blazor-client","blazor-component","blazor-image","blazor-server","blazor-webassembly","clipboard","csharp","file-download","zipfile"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/djaus2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-08-03T04:51:48.000Z","updated_at":"2020-08-24T13:11:10.000Z","dependencies_parsed_at":"2023-01-25T12:01:18.770Z","dependency_job_id":null,"html_url":"https://github.com/djaus2/GetListofSamples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaus2%2FGetListofSamples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaus2%2FGetListofSamples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaus2%2FGetListofSamples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaus2%2FGetListofSamples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/djaus2","download_url":"https://codeload.github.com/djaus2/GetListofSamples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250487536,"owners_count":21438612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blazor","blazor-client","blazor-component","blazor-image","blazor-server","blazor-webassembly","clipboard","csharp","file-download","zipfile"],"created_at":"2025-04-23T18:19:41.197Z","updated_at":"2026-05-02T02:36:34.631Z","avatar_url":"https://github.com/djaus2.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# .NET C# Sample Projects Indexer ... Now at Version 1.0.0\n\nA Project to generically recurse a folder for sample C# apps information. \nDisplays the information in folding tree layout.  \nTags Solutions and Projects.\n\n\u003cb\u003e\u003ci\u003e See Finale below. \u003c/i\u003e\u003cb\u003e\n\n## Implementation\n\nUses a recursive Component that calls itself. \nThat way the app can recursively drill into folder information.\n  \nFolders now expand and contract when clicked.  \nWhen a folder is expanded all of its siblings close.\n  \nServer at startup recurses specified folder collecting data \nabout folders and project/solutions contained therein.\n  \nData Structures:\n- A FolderTree structure (Id, Parent, Children, Projects, Solution, ReadMe and Image properties ) \n- Project (Various properties such as path, and an Id)\n- List of FolderTrees\n- List of Projects\n- List of Markdown files\n- List of Images\n- FolderTree Ids used in Parent and Children property lists\n- Project Ids used in FolderTree Project lists\n\nWhen required, the complete list of FolderTrees and and Projects is sent to the client from the server.  \nUsing Ids in list simplifies passing of data over Http.  \nLists are turned into Dictionary using Id as key sio can be used as a spare array.\n\nRequires the path to the folder in server appsettings.json  \nSet for .NET IoT SDK repository\n\n## Custom Razor Components\n- FolderTree that recurses specified folder on server for files in folders\n  - Is recursive in that it calls itself.\n  - Is a Folding UI component.\n- Display Markdown text listed in folder.\n- Zip folder on server and download\n- Download text (.cs or .csproj) on server and display\n  - Can then copy or download it\n- Display an image listed in folder\n- Added a file (zip) upload so can remotely update the folders.\n  - Can now do that (File upload). If zip file then gets unzipped.\n  - Can also select from previously uploaded zips.\n  - Can also toggle between folder in server and folder on server machine but not in its folder.\n\n## Finale!\n\n\u003cb\u003e\u003ci\u003e Can now upload a zipped folder of samples, which get extracted to the server's Samples folder,  \n  then scan it, upload the new data to the client and then use those samples.\u003c/i\u003e\u003cb\u003e\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjaus2%2Fgetlistofsamples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjaus2%2Fgetlistofsamples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjaus2%2Fgetlistofsamples/lists"}