{"id":17800322,"url":"https://github.com/jotavare/doxygen-example","last_synced_at":"2026-05-01T13:33:04.948Z","repository":{"id":258335728,"uuid":"873789771","full_name":"jotavare/doxygen-example","owner":"jotavare","description":"A simple example to test how doxygen works.","archived":false,"fork":false,"pushed_at":"2024-10-25T10:45:43.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T04:12:50.837Z","etag":null,"topics":["actions","c","ci","documentation","doxygen","header","pipeline"],"latest_commit_sha":null,"homepage":"https://jotavare.github.io/doxygen-example/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jotavare.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-16T18:11:05.000Z","updated_at":"2025-01-11T00:51:13.000Z","dependencies_parsed_at":"2025-02-07T18:42:06.713Z","dependency_job_id":"20cf7595-24a8-4bb8-96eb-5252278069e1","html_url":"https://github.com/jotavare/doxygen-example","commit_stats":null,"previous_names":["jotavare/doxygen-example"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jotavare/doxygen-example","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fdoxygen-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fdoxygen-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fdoxygen-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fdoxygen-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jotavare","download_url":"https://codeload.github.com/jotavare/doxygen-example/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fdoxygen-example/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32499681,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["actions","c","ci","documentation","doxygen","header","pipeline"],"created_at":"2024-10-27T12:19:08.222Z","updated_at":"2026-05-01T13:33:04.929Z","avatar_url":"https://github.com/jotavare.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Doxygen Example\n\nThis repository contains a simple `C` project demonstrating basic math operations. It serves as an example of how to set up a `C` project with documentation using **Doxygen** and **CI** using **GitHub Actions**.\n\n## About Doxygen\n\n**Doxygen** is a documentation generator and static analysis tool for software projects. It's designed to process source code and generate comprehensive documentation in various formats, including `HTML`, `LaTeX`, `PDF`, `XML`, `Man pages` and [more](https://www.doxygen.nl/manual/output.html).\n\n## Purpose of Doxygen\n\nThe main purposes of Doxygen are:\n\n- **Automatic Documentation**: It extracts documentation from source code comments, reducing the effort needed to maintain separate documentation.\n- **Code Navigation**: It generates cross-referenced documentation, making it easier to navigate large codebases.\n- **Visualization**: It can create diagrams (like call and dependency graphs) to visualize code structure.\n- **Consistency**: It enforces a consistent documentation style across a project.\n\n## Supported Languages\n\n**Doxygen** supports a wide range of programming languages, including but not limited to:\n\n- `C`\n- `C++`\n- `Objective-C`\n- `C#`\n- `Python`\n- `PHP`\n- `Java`\n- `Fortran`\n- `VHDL`\n- `Splice`\n- `IDL`\n- `Lex`\n\nIn this project, we're using **Doxygen** with `C`, but its capabilities extend far beyond just `C` programming.\n\n## Project Structure\n\n```\n├── .github\n│   └── workflows\n│       └── c-doxygen.yml\n├── source\n│   ├── Doxyfile\n│   ├── main.c\n│   ├── Makefile\n│   ├── math_operations.c\n│   └── math_operations.h\n└── README.md\n```\n\n- `.github/workflows/c-doxygen.yml`: GitHub Actions workflow for CI/CD\n- `source/`: Directory containing all source code and project files\n  - `Doxyfile`: Configuration file for Doxygen\n  - `main.c`: Main program demonstrating the use of math operations\n  - `Makefile`: Used to compile the project and generate documentation\n  - `math_operations.c`: Implementation of basic math operations\n  - `math_operations.h`: Header file declaring the math operations\n\n## Prerequisites\n\n- GCC compiler\n- Make\n- Doxygen\n\n## Building the Project\n\nTo build the project, run:\n\n```\nmake\n```\n\nThis will compile the source files and create an executable named `main`.\n\n## Running the Program\n\nAfter building, you can run the program with:\n\n```\n./main\n```\n\nThis will demonstrate the basic math operations implemented in the project.\n\n## Generating Documentation\n\nTo generate documentation using **Doxygen**, run:\n\n```\nmake docs\n```\n\nThis will create a `docs` directory containing the generated `HTML` documentation. You can view it by opening `docs/html/index.html` in a web browser.\n\n## Continuous Integration\n\nThis project uses **GitHub Actions** for continuous integration. The workflow does the following:\n\n1. Builds the project\n2. Generates documentation\n3. Uploads the generated documentation as an artifact\n\nYou can view the workflow runs in the **\"Actions\"** tab of the GitHub repository.\n\n## Contributing\n\nContributions to improve the project are welcome. Please feel free to submit a Pull Request.\n\n## License\n\nThis project is open source and available under the [MIT License](LICENSE).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjotavare%2Fdoxygen-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjotavare%2Fdoxygen-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjotavare%2Fdoxygen-example/lists"}