{"id":20763992,"url":"https://github.com/umutsevdi/brauzer","last_synced_at":"2025-04-30T07:53:40.615Z","repository":{"id":200112504,"uuid":"690683117","full_name":"umutsevdi/brauzer","owner":"umutsevdi","description":"A graphical web browser from scratch in C for a variety of alternative web protocols ","archived":false,"fork":false,"pushed_at":"2023-11-04T21:17:47.000Z","size":7852,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-11-04T22:21:07.229Z","etag":null,"topics":["browser","c","ftp","ftp-client","gemini","gemini-client","gemini-protocol","gopher","gopher-client","gtk","gtk4","http","http-client","libadwaita","web-browser"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/umutsevdi.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}},"created_at":"2023-09-12T16:57:34.000Z","updated_at":"2023-11-04T22:21:07.903Z","dependencies_parsed_at":"2023-10-20T18:34:26.944Z","dependency_job_id":null,"html_url":"https://github.com/umutsevdi/brauzer","commit_stats":null,"previous_names":["umutsevdi/brauzer"],"tags_count":1,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umutsevdi%2Fbrauzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umutsevdi%2Fbrauzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umutsevdi%2Fbrauzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umutsevdi%2Fbrauzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umutsevdi","download_url":"https://codeload.github.com/umutsevdi/brauzer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225029001,"owners_count":17409613,"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":["browser","c","ftp","ftp-client","gemini","gemini-client","gemini-protocol","gopher","gopher-client","gtk","gtk4","http","http-client","libadwaita","web-browser"],"created_at":"2024-11-17T10:48:16.220Z","updated_at":"2024-11-17T10:48:16.733Z","avatar_url":"https://github.com/umutsevdi.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/umutsevdi/brauzer\"\u003e\n  \u003ch3 align=\"center\"\u003eBrauzer | Браузер\u003c/h3\u003e\n  \u003c/a\u003e\n\n\u003cp align=\"center\"\u003e  \nA web browser from scratch in C programming language that implements\nvarious web protocols.\n  \u003cbr/\u003e\u003ci\u003eBeing actively developed by \u003ca href=\"https://github.com/umutsevdi\"\u003e\n    Umut Sevdi\u003c/a\u003e\u003c/i\u003e \n\u003c!--\u003cp align=\"center\"\u003e\u003ca href=\"docs.md\"\u003e\u003cstrong\u003eExplore the docs »\n\u003c/strong\u003e\u003c/a\u003e\u003c/p\u003e--\u003e\n\n## What is Brauzer\nBrauzer is a simple web browser that can communicate through the following protocols.\n\n* HTTP/HTTPS\n* Gopher\n* Gemini\n\nIt can currently parse Gopher and Gemini files as of 05/11/2023.\nI would like to build a GUI for the Brauzer in the future.\n\n\n## Demo Videos\n\n* HTTP/HTTPS\n![HTTPS](screenshot/https.GIF)\n* Gemini\n![Gemini](screenshot/gemini.GIF)\n* Gopher\n![Gopher](screenshot/gopher.GIF)\n\n\u003cp id=\"installation\"\u003e\n\n### Installation\n\nRequirements: \n* [OpenSSL](https://packages.debian.org/bookworm/openssl)\n* [libglib2.0-0](https://packages.debian.org/bookworm/libglib2.0-0)\n\n The current version does not require the following packages, But the future versions will require:\n\n* [libgtk-4](https://packages.debian.org/bookworm/libgtk-4-1)\n* [libadwaita](https://packages.debian.org/bookworm/libs/libadwaita-1-0)\n\n1. Clone the repository.\n\n```sh\n   git clone https://github.com/umutsevdi/brauzer.git\n```\n\n2. Compile the program.\n```sh\n    make\n```\n\n### Status\n\nThis project is currently a work in progress.\n#### To-do List:\n\n- [x] TCP Session Management\n- [x] TLS/SSL System\n- [x] Protocol Spesific Calls\n- [x] User Agent\n- [x] URI Parser\n- [x] CLI Interface\n- [ ] **Supported Protocols**:\n    - [ ] HTTP\n        - [x] HTTP 1.1 Polling\n        - [x] Success\n        - [x] Header Parser\n        - [ ] Post/Put (Partially)\n        - [ ] Redirect\n        - [ ] HTML Parser\n        - [ ] Link Analysis and Installation\n    - [x] Gemini:\n        - [x] Success\n        - [x] Polling\n        - [x] Input\n        - [x] Redirect\n        - [x] Gemtext Parser\n    - [x] Gopher:\n        - [x] Protocol\n        - [x] Parser\n    - [ ] FTP/SFTP:\n\n## License\n\nDistributed under the GPL License. See `LICENSE` for more information.\n\n\u003cp id=\"contact\"\u003e\n\n## Contact\n\nFeel free to contact me for any further information or suggestions.\n\nProject: [umutsevdi/brauzer](https://github.com/umutsevdi/brauzer)\n\n\u003ci\u003eDeveloped by \u003ca href=\"https://github.com/umutsevdi\"\u003eUmut Sevdi\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumutsevdi%2Fbrauzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumutsevdi%2Fbrauzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumutsevdi%2Fbrauzer/lists"}