{"id":27075834,"url":"https://github.com/msabr/fractol_1337","last_synced_at":"2026-05-04T05:33:36.825Z","repository":{"id":286196893,"uuid":"960686113","full_name":"msabr/FRACTOL_1337","owner":"msabr","description":"fract-ol is a project where you’ll explore and render Mandelbrot and Julia fractals using MiniLibX. You’ll learn how to implement the algorithms for these fractals and gain experience with graphics programming and interactive controls.","archived":false,"fork":false,"pushed_at":"2025-04-05T14:23:05.000Z","size":127,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T20:04:36.716Z","etag":null,"topics":["1337","1337cursus","1337school","42","42cursus","42projects","42school","c","fractal","fractals","fractol","fractol-42","julia","mandelbrot","mandelbrot-fractal"],"latest_commit_sha":null,"homepage":"","language":"C","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/msabr.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}},"created_at":"2025-04-04T21:47:05.000Z","updated_at":"2025-04-05T14:23:08.000Z","dependencies_parsed_at":"2025-04-04T22:40:07.525Z","dependency_job_id":null,"html_url":"https://github.com/msabr/FRACTOL_1337","commit_stats":null,"previous_names":["msabr/fractol_1337"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msabr%2FFRACTOL_1337","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msabr%2FFRACTOL_1337/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msabr%2FFRACTOL_1337/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msabr%2FFRACTOL_1337/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msabr","download_url":"https://codeload.github.com/msabr/FRACTOL_1337/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248103868,"owners_count":21048245,"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":["1337","1337cursus","1337school","42","42cursus","42projects","42school","c","fractal","fractals","fractol","fractol-42","julia","mandelbrot","mandelbrot-fractal"],"created_at":"2025-04-06T00:18:08.762Z","updated_at":"2026-05-04T05:33:36.821Z","avatar_url":"https://github.com/msabr.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **fract-ol - 42 Network**\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"imgs/fract-ol.png\"/\u003e\n\u003c/div\u003e\n\n## **Overview**  \n**fract-ol** is a project from the **42 Network** designed to explore **fractals** using **MiniLibX (mlx)**, a simple graphics library. The goal of the project is to render and interact with fractals like the **Mandelbrot set**, **Julia set**, and optionally the **Burning Ship** fractal. This project introduces fundamental concepts in **graphical programming**, including the use of **complex numbers**, **interactive controls**, and **performance optimization**.\n\n## **Project Scope**  \nIn this project, you will:\n\n- Use **MiniLibX** to create a window and render fractals.\n- Implement fractal algorithms for the **Mandelbrot set**, **Julia set**, and **Burning Ship**.\n- Handle **keyboard** and **mouse inputs** for interactive controls (zoom, pan, iterations).\n- Use **complex numbers** to generate fractals.\n- Optimize the rendering for better performance, especially with higher iterations.\n\n## **Learning Outcomes**  \n- Understanding the use of **complex numbers** in graphics programming.\n- Implementing fractal algorithms from scratch.\n- Working with **MiniLibX** for **2D graphics rendering**.\n- Handling **interactive user inputs** for zooming, panning, and changing iterations.\n- Optimizing the rendering and performance of fractal visuals.\n\n## **Usage**  \n### How to Build and Run\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/msabr/FRACTOL_1337\n   cd FRACTOL_1337\n\n2. Build the mandatory part:\n\n   ```bash\n   make\n\n3. Run mandelbrot:\n\n   ```bash\n   ./fractol mandelbrot\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"imgs/mandelbrot.png\" width=\"600\"/\u003e\n\u003c/div\u003e\n\n3. Run julia:\n\n   ```bash\n   ./fractol julia -0.8 0.156\n\u003cdiv style=\"text-align:center;\"\u003e\n\u003cimg src=\"imgs/julia(-1,1).png\" style=\"display:inline-block;\" width=\"320\"/\u003e\n\n\u003cimg src=\"imgs/julia(1,-1).png\" style=\"display:inline-block;\" width=\"320\"/\u003e\n\n\u003cimg src=\"imgs/julia(1,1).png\" style=\"display:inline-block;\" width=\"320\"/\u003e\n\u003c/div\u003e\n\n#### Additional commands\n\n- `make clean`: remove object files.\n- `make fclean`: remove the program and object files.\n- `make re`: rebuild everything.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsabr%2Ffractol_1337","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsabr%2Ffractol_1337","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsabr%2Ffractol_1337/lists"}