{"id":23527338,"url":"https://github.com/arv-anshul/campusx","last_synced_at":"2025-06-28T14:37:05.759Z","repository":{"id":221565317,"uuid":"754020263","full_name":"arv-anshul/campusx","owner":"arv-anshul","description":"Get all the resources like Notes and Notebooks provided in CampusX Courses.","archived":false,"fork":false,"pushed_at":"2024-05-28T09:45:42.000Z","size":10896,"stargazers_count":9,"open_issues_count":0,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-22T14:56:18.446Z","etag":null,"topics":["campusx","campusx-dsmp","mkdocs","mkdocs-material","python","python3","resources","web-scrapping"],"latest_commit_sha":null,"homepage":"https://arv-anshul.github.io/campusx/","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arv-anshul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-02-07T08:41:50.000Z","updated_at":"2025-03-16T19:27:27.000Z","dependencies_parsed_at":"2024-02-15T15:31:22.541Z","dependency_job_id":"5032074e-5f21-49b8-82b9-568f0e626ab9","html_url":"https://github.com/arv-anshul/campusx","commit_stats":null,"previous_names":["arv-anshul/campusx-dsmp","arv-anshul/campusx"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/arv-anshul/campusx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arv-anshul%2Fcampusx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arv-anshul%2Fcampusx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arv-anshul%2Fcampusx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arv-anshul%2Fcampusx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arv-anshul","download_url":"https://codeload.github.com/arv-anshul/campusx/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arv-anshul%2Fcampusx/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262446848,"owners_count":23312633,"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":["campusx","campusx-dsmp","mkdocs","mkdocs-material","python","python3","resources","web-scrapping"],"created_at":"2024-12-25T20:14:01.080Z","updated_at":"2025-06-28T14:37:05.738Z","avatar_url":"https://github.com/arv-anshul.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CampusX Course Resources\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://learnwith.campusx.in\"\u003e\n    \u003cimg src=\"https://avatars.githubusercontent.com/u/53361867?v=4\" style=\"width: 200px; border-radius: 50%;\" /\u003e\n  \u003c/a\u003e\n\n  \u003ch3 align=\"center\"\u003eCampusX Course Resources\u003c/h3\u003e\n  \u003cp align=\"center\"\u003e\n    Here, you can get all the resources like Notes and Notebooks provided in CampusX Courses.\n    \u003cbr\u003e\n    \u003cstrong\u003eBy \u003ca href=\"https://github.com/arv-anshul\"\u003eAnshul Raj Verma\u003c/a\u003e\u003c/strong\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Material_for_MkDocs-526CFE?logo=MaterialForMkDocs\u0026logoColor=white\" alt=\"Built with Material for MkDocs\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Python-3776AB?logo=python\u0026amp;logoColor=fff\" alt=\"Python\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Jinja-B41717?logo=jinja\u0026amp;logoColor=fff\" alt=\"Jinja\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/GitHub%20Pages-222?logo=github\u0026logoColor=fff\" alt=\"GitHub Badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/GitHub%20Actions-2088FF?logo=githubactions\u0026logoColor=fff\" alt=\"GitHub Actions Badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Rye-000?logo=rye\u0026logoColor=fff\" alt=\"Rye Badge\"\u003e\n\u003c/p\u003e\n\n### 🙌 Praise for this Project\n\n\u003cp align=\"center\"\u003e\n\nhttps://github.com/arv-anshul/campusx/assets/111767754/3414dc8e-d474-4751-b504-317d7d719d3e\n\n\u003c/p\u003e\n\n### ♻️ Project Workflows\n\n1. **Data Collection:** Gathered data from the HTML structure of the course's website.\n2. **Script Development:** Developed Python scripts responsible for parsing HTML and extracting essential data required for subsequent requests.\n3. **HTTP Requests:** Performed a series of Http GET requests to the website to obtain session resources, particularly video sessions in the current implementation.\n4. **Testing:** Implemented a suite of tests for the [`course_parser.py`](./src/dsmp2/course_parser.py) script to ensure robust and reliable HTML parsing.\n5. **Data Structure Maintenance:** Maintained the integrity and structure of the acquired data and resources, ensuring they are ready for presentation on a web page.\n6. **Documentation and Presentation:** Utilized `mkdocs` along with the `mkdocs-material` theme/extension to seamlessly generate a professional-looking web page.\n7. **Continuous Integration and Deployment (CI/CD):** Employed **Github Actions** to automate the build and deployment processes, ensuring the web page is always up-to-date.\n8. **Web Hosting:** Leveraged **Github Pages** as a reliable hosting solution to make the web page accessible to a wider audience.\n\nBy following these workflows, the project ensures efficient data extraction, robust testing, proper documentation, and automated deployment, ultimately resulting in a well-maintained and accessible web page hosted on Github Pages.\n\n## Downloaded Resources\n\n🥳 You can get all the course's resources like `.pdf`, `.ipynb`, `.docx`, `.pptx`, `.xlsx` and `.py` files in 🗂️ [`resources`](./resources/) directory.\n\n\u003e \\[!CAUTION\\]\n\u003e\n\u003e If you get any problem while opening a file then try to change its file extension. My program is not good at inferring file extension 😞. Otherwise, [raise issue](https://github.com/arv-anshul/campusx/issues).\n\n\u003cdetails\u003e\n\u003csummary\u003eResources File Structure\u003c/summary\u003e\n\n```bash\n./resources\n├── README.md\n├── DSMP\n│   ├── Parent Session1\n│   │   ├── Lecture1\n│   │   │   ├── Resource1\n│   │   │   └── Resource2\n│   │   └── Lecture2\n│   │       ├── Resource1\n│   │       └── Resource2\n│   └── Parent Session2\n│       └── Lecture1\n│           ├── Resource1\n│           └── Resource2\n└── Extra  # Some extra stuffs from course (added manually)\n```\n\n\u003c/details\u003e\n\n### Issues\n\nIf you have any issue or query related to this project you can raise [here](https://github.com/arv-anshul/campusx/issues \"Project's Issues Tab\").\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farv-anshul%2Fcampusx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farv-anshul%2Fcampusx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farv-anshul%2Fcampusx/lists"}