{"id":19053302,"url":"https://github.com/jotavare/minitalk","last_synced_at":"2025-04-24T02:45:24.460Z","repository":{"id":155284590,"uuid":"583769724","full_name":"jotavare/minitalk","owner":"jotavare","description":"System that sends a message from client to server using UNIX signals for communication.","archived":false,"fork":false,"pushed_at":"2024-06-26T23:10:18.000Z","size":1349,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-06-27T02:51:21.274Z","etag":null,"topics":["ascii","binary","bits","c","client-server","gdb","makefile","minitalk","norminette","pid","signal-processing","signals","sigusr1","sigusr2","unix","unix-signals","valgrind"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":false,"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":"2022-12-30T21:26:30.000Z","updated_at":"2024-06-26T23:11:53.000Z","dependencies_parsed_at":"2024-06-27T02:44:13.560Z","dependency_job_id":"6676ff5e-4fbe-4f98-8e49-d787e7d9ae0d","html_url":"https://github.com/jotavare/minitalk","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/jotavare%2Fminitalk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fminitalk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fminitalk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jotavare%2Fminitalk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jotavare","download_url":"https://codeload.github.com/jotavare/minitalk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223768235,"owners_count":17199325,"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":["ascii","binary","bits","c","client-server","gdb","makefile","minitalk","norminette","pid","signal-processing","signals","sigusr1","sigusr2","unix","unix-signals","valgrind"],"created_at":"2024-11-08T23:30:01.588Z","updated_at":"2024-11-08T23:30:02.155Z","avatar_url":"https://github.com/jotavare.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/jotavare/jotavare/blob/main/42/banners/piscine_and_common_core/github_piscine_and_common_core_banner_minitalk.png\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg src=\"https://img.shields.io/badge/status-finished-success?color=%2312bab9\u0026style=flat-square\" /\u003e\n\t\u003cimg src=\"https://img.shields.io/badge/evaluated-06%20%2F%2001%20%2F%202023-success?color=%2312bab9\u0026style=flat-square\" /\u003e\n\t\u003cimg src=\"https://img.shields.io/badge/score-125%20%2F%20100-success?color=%2312bab9\u0026style=flat-square\" /\u003e\n\t\u003cimg src=\"https://img.shields.io/github/languages/top/jotavare/minitalk?color=%2312bab9\u0026style=flat-square\" /\u003e\n\t\u003cimg src=\"https://img.shields.io/github/last-commit/jotavare/minitalk?color=%2312bab9\u0026style=flat-square\" /\u003e\n\t\u003ca href='https://www.linkedin.com/in/joaoptoliveira' target=\"_blank\"\u003e\u003cimg alt='Linkedin' src='https://img.shields.io/badge/LinkedIn-100000?style=flat-square\u0026logo=Linkedin\u0026logoColor=white\u0026labelColor=0A66C2\u0026color=0A66C2'/\u003e\u003c/a\u003e\n\t\u003ca href='https://profile.intra.42.fr/users/jotavare' target=\"_blank\"\u003e\u003cimg alt='42' src='https://img.shields.io/badge/Porto-100000?style=flat-square\u0026logo=42\u0026logoColor=white\u0026labelColor=000000\u0026color=000000'/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"#about\"\u003eAbout\u003c/a\u003e •\n\t\u003ca href=\"#how-to-use\"\u003eHow to use\u003c/a\u003e •\n\t\u003ca href=\"#mandatory\"\u003eMandatory\u003c/a\u003e •\n\t\u003ca href=\"#bonus\"\u003eBonus\u003c/a\u003e •\n\t\u003ca href=\"#norminette\"\u003eNorminette\u003c/a\u003e •\n\t\u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e •\n\t\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\n\u003c/p\u003e\n\n## ABOUT\nThis is a server/client system that uses UNIX signals for communication. The server displays its PID and receives decrypted signals as characters, while the client encrypts messages and sends true/false signals using SIGUSR1 or SIGUSR2 to the server's PID.\n\n- [Subject](https://github.com/jotavare/minitalk/blob/master/subject/en_subject_minitalk.pdf) `PDF`\n- [References](https://github.com/jotavare/42-resources#02-minitalk) `GitHub`\n\n## HOW TO USE\n#### 1º - Clone the repository\n```bash\ngit clone https://github.com/jotavare/minitalk\n```\n\n#### 2º - Enter the project folder and run `make`\n```bash\ncd minitalk/minitalk\nmake\n```\n\n#### 3º - Run server or server_bonus and copy its PID\n```bash\n./server\n./server_bonus\n```\n\n#### 4º - Open another terminal, run client or client_bonus, paste the PID and write a message\n```bash\n./client [SERVER PID] [MESSAGE]\n./client_bonus [SERVER PID] [MESSAGE] [EMOTE]\n```\n\n#### MAKEFILE RULES\n\n`make` - Compile minitalk **mandatory** files.\n\n`make bonus` - Compile minitalk **bonus** files.\n\n`make all` - Compile **mandatory** + **bonus** files.\n\n`make clean` - Delete all .o (object files) files.\n\n`make fclean` - Delete all .o (object files) and .a (executable) files.\n\n`make re` - Use rules `fclean` + `all`.\n\n## MANDATORY\n- [x] Produce server and client executables.\n- [x] The Client must communicate a string passed as a parameter to the server (referenced by its process ID) and display it.\n- [x] Use `SIGUSR1` and `SIGUSR2` signals only.\n\n## BONUS\n- [x] Add reception acknowledgement system.\n- [x] Support Unicode characters.\n\n## NORMINETTE\n\u003e At 42 School, it is expected that almost every project is written following the Norm, which is the coding standard of the school.\n\n```\n- No for, do...while, switch, case, goto, ternary operators, or variable-length arrays allowed;\n- Each function must be a maximum of 25 lines, not counting the function's curly brackets;\n- Each line must be at most 80 columns wide, with comments included;\n- A function can take 4 named parameters maximum;\n- No assigns and declarations in the same line (unless static);\n- You can't declare more than 5 variables per function;\n- ...\n```\n\n* [42 Norms](https://github.com/42School/norminette/blob/master/pdf/en.norm.pdf) - Information about 42 code norms. `PDF`\n* [Norminette](https://github.com/42School/norminette) - Tool to respect the code norm, made by 42. `GitHub`\n* [42 Header](https://github.com/42Paris/42header) - 42 header for Vim. `GitHub`\n\n## CONTRIBUTING\n\nIf you find any issues or have suggestions for improvements, feel free to fork the repository and open an issue or submit a pull request.\n\n## LICENSE\n\nThis project is available under the MIT License. For further details, please refer to the [LICENSE](https://github.com/jotavare/minitalk/blob/master/LICENSE) file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjotavare%2Fminitalk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjotavare%2Fminitalk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjotavare%2Fminitalk/lists"}