{"id":19196520,"url":"https://github.com/semx2a/libft","last_synced_at":"2025-07-31T09:37:57.281Z","repository":{"id":219466519,"uuid":"406024492","full_name":"semx2a/Libft","owner":"semx2a","description":"Recoding some of the libc functions","archived":false,"fork":false,"pushed_at":"2024-02-08T16:20:43.000Z","size":116,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T04:44:07.892Z","etag":null,"topics":["c","libc","library","reverse-engineering"],"latest_commit_sha":null,"homepage":"","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/semx2a.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}},"created_at":"2021-09-13T15:19:14.000Z","updated_at":"2024-01-30T14:03:59.000Z","dependencies_parsed_at":"2024-02-02T19:52:05.327Z","dependency_job_id":null,"html_url":"https://github.com/semx2a/Libft","commit_stats":null,"previous_names":["semx2a/libft"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/semx2a/Libft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semx2a%2FLibft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semx2a%2FLibft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semx2a%2FLibft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semx2a%2FLibft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/semx2a","download_url":"https://codeload.github.com/semx2a/Libft/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semx2a%2FLibft/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268017357,"owners_count":24181669,"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","status":"online","status_checked_at":"2025-07-31T02:00:08.723Z","response_time":66,"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":["c","libc","library","reverse-engineering"],"created_at":"2024-11-09T12:13:53.881Z","updated_at":"2025-07-31T09:37:57.251Z","avatar_url":"https://github.com/semx2a.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Libft - Your Own C Library\n\n## Summary\n\nLibft is a comprehensive C library that I developed as a student project. It includes a set of standard libc functions and additional utility functions. The project aims to provide a robust foundation for future C programming endeavors by ensuring a deep understanding of these essential functions and facilitating their reuse.\n\n## Project Structure\n\nThe repository is organized with the following structure:\n\n- `Makefile`: Automation script for compilation and project management.\n- `inc/libft.h`: Header file containing function prototypes and necessary definitions.\n- `src/ft_*.c`: Source files implementing various functions.\n\n## Features\n\n### Part 1 - Functions from the libc\n\nThe library includes meticulously crafted versions of standard libc functions such as `toupper`, `tolower`, `strchr`, `strncmp`, and more. Each function has the same prototype and behavior as its libc counterpart.\n\n### Part 2 - Additional Functions\n\nIn addition to standard libc functions, the library offers extra utility functions like `ft_substr`, `ft_strjoin`, `ft_strtrim`, `ft_split`, `ft_itoa`, and more. These functions enhance the versatility of the library for various programming tasks.\n\n### Bonus Part - Linked List Operations\n\nFor a more advanced touch, the library includes functions for working with linked lists. This bonus section adds functionality like creating a new list element (`ft_lstnew`), adding elements to the front (`ft_lstadd_front`), finding the size of the list (`ft_lstsize`), and more.\n\n## Project Completion\n\nThe project is considered complete as it adheres to the following guidelines:\n\n- All functions have been implemented according to specifications.\n- Code follows the `42 School` Norm for C programming.\n- Memory management is efficient, avoiding memory leaks.\n- A Makefile automates the compilation process.\n\n## Acquired Skills\n\nThroughout the development of Libft, I have gained proficiency in the following areas:\n\n- **C Programming:** Enhanced skills in writing efficient and well-structured C code.\n- **Algorithmic Thinking:** Developed algorithms for various functions, ensuring optimal performance.\n- **Memory Management:** Mastered dynamic memory allocation and deallocation.\n- **Makefile Usage:** Created a Makefile for project compilation and management.\n- **Git Version Control:** Managed project versions and collaborated through Git repositories.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemx2a%2Flibft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsemx2a%2Flibft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemx2a%2Flibft/lists"}