30 open-source projects similar to chaselambda/makefiletutorial, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Makefiletutorial alternative.
Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It functions as a dependency graph orchestrator that executes build targets in topological order and utilizes input hashing to cache results and skip redundant work. The project features a polyglot toolchain manager that automates the installation and versioning of language runtimes and CLI tools to ensure environment consistency. It also includes a plugin framework based on WebAssembly, allowing developers to extend build logic and toolchain behavior using any supported language.
Metalsmith is a Node.js static site generator and static content processor that transforms source files into websites, eBooks, or technical documentation. It functions as a file-to-object transformer, converting directory trees into plain JavaScript objects that can be programmatically manipulated in memory. The project is built around a pluggable build pipeline where files are passed through a sequence of custom functions to transform content and metadata incrementally. This architecture allows users to extend functionality by writing their own plugins or using third-party modules to define
Ziglings is an interactive coding course and tutorial designed to teach the Zig programming language. It functions as a test-driven learning tool that guides users through a sequence of incremental exercises to master language syntax and semantics. The project provides a series of small, broken programs that learners must fix. Progress is achieved by modifying the code until it satisfies predefined requirements and passes associated automated tests. The educational experience is supported by a shell-based test runner and local compiler execution to provide immediate feedback. It utilizes a f
node-glob is a Node.js library for finding and matching files and directories using glob patterns. It functions as a filesystem traversal tool and path resolution library, enabling the identification of entries within directory trees based on specific search criteria. The project features a virtual filesystem interface, allowing native filesystem methods to be replaced with custom objects. This enables pattern matching against mocked data or non-native storage systems. The toolkit covers a broad range of filesystem operations, including recursive directory traversal, path normalization acros
Clojure Koans is an educational platform designed to teach the syntax and core concepts of the Clojure programming language. It provides a structured curriculum of programming challenges that guide users through language features by requiring them to resolve a sequence of failing test cases. The project functions as an interactive learning environment that integrates a test-driven development workflow with automated feedback. By monitoring source files for modifications, the tool triggers immediate test execution whenever a user saves their progress, allowing for real-time verification of cod
TypeHero is a TypeScript learning platform and community space designed for solving coding challenges and sharing solutions. It functions as a collaborative code sandbox and challenge engine where users practice advanced language features by completing programming puzzles. The platform provides a technical skill tracking system featuring curated learning tracks organized by topic and difficulty. It includes tools for coding challenge design, allowing users to create and publish original programming exercises for others to solve. The system facilitates collaborative code learning through solu
Rustlings is a command-line learning tool designed to build language proficiency through a structured, interactive curriculum. It functions as a practice-oriented platform where users master syntax and core concepts by resolving compilation errors within a sequence of small, incremental code exercises. The environment distinguishes itself by utilizing a compiler-driven feedback loop that parses error messages to provide targeted hints for fixing logic and syntax issues. Progress is managed through a file-based system where users modify incomplete source templates, which are then verified agai
Spack is a source-based build system and package manager designed for high-performance computing. It serves as a multi-version software manager and a logic-based dependency solver that handles complex software stacks across various platforms and hardware architectures. The project distinguishes itself by managing multiple compilers and toolchains to target specific hardware. It allows the coexistence of multiple versions and configurations of the same software package on a single system by utilizing prefix-based isolation and unprivileged deployment. The system provides comprehensive capabil
This project is an interactive coding tutorial platform and markdown-based course engine. It functions as a web-based education system that transforms markdown files into structured educational pages with integrated interfaces for writing and running code. The platform utilizes a remote code execution framework to validate user-submitted snippets in real time by integrating with external compilers and execution engines. To ensure consistent delivery across different hosting platforms, the entire learning environment is provided as a containerized deployment. The system covers a broad capabil
This project is a structured Rust programming course and technical educational resource. It functions as an interactive coding tutorial and systems programming guide, providing a curriculum designed to teach the Rust language, its ecosystem, and advanced concepts like memory management and performance optimization. The resource is delivered as a markdown-based technical book and static website. It distinguishes itself through the integration of interactive coding tasks and executable code snippets, allowing learners to practice syntax and programming logic directly within the instructional co
paths-filter is a GitHub Actions path filter and git change detector designed to trigger conditional workflow steps by identifying modified files. It serves as a path-based change metadata generator that determines if specific files or directories have changed to drive automation logic in CI pipelines. The tool identifies modified files between commits or branches using configurable inclusion and exclusion filters. It exports boolean flags, modified filename lists, and file counts to allow downstream automation steps to execute only when specific criteria are met. The project provides capabi
learn-gdscript is an interactive coding course and tutorial application designed to teach GDScript programming fundamentals. It functions as a game engine education tool that allows absolute beginners to study basic programming concepts, variables, and functions. The project utilizes a sandboxed environment for practicing code execution and provides in-engine interactive tutorials. It features guided walkthroughs that direct users through editor interfaces to help them locate and understand software tools. The curriculum covers game development logic, including the implementation of physics-
This project provides a PHP implementation of a filesystem iterator designed to filter collections of files based on naming conventions and custom rule sets. It functions as a specialized utility that extends the standard library to include or exclude files from a collection during iteration. The tool isolates target files by applying prefix and suffix filtering, as well as custom exclusion rules. It supports recursive directory traversal, allowing the application of these filters at every level of a deep folder scan. The project covers broader filesystem management capabilities, specificall
Watchman is a filesystem change monitor and recursive directory watcher that operates as a background service to track file modifications in real time. It functions as an event-driven file trigger and state query engine, allowing users to retrieve directory snapshots and lists of changed files since a previous check. The project provides tooling for incremental builds by identifying exactly which files have changed to compile only necessary project components. It is designed for large scale directory watching, monitoring massive file trees while executing external commands or scripts automati
Rushstack is a comprehensive toolset for managing large-scale TypeScript monorepos, providing a framework for build pipeline automation, dependency coordination, and static analysis. It functions as an incremental build orchestrator and management system designed to maintain consistency and performance across multiple packages in a shared workspace. The system distinguishes itself through an execution model based on directed acyclic graphs and content-hash-based incrementalism, which ensures only affected projects are rebuilt. It further optimizes development workflows via remote build artifa
This project is an interactive programming curriculum and educational system designed to teach computer science and software engineering. It provides a structured set of courses and professional roadmaps focused on backend engineering, DevOps, and systems fundamentals. The platform is distinguished by an AI-powered coding tutor that provides Socratic guidance and contextual hints to help students find solutions independently. It features a browser-based code sandbox using WebAssembly to eliminate local environment setup, alongside automated test-based grading and spaced-repetition logic to re
This project is a collection of interactive, command-line programming lessons designed for the swirl R package. It provides a structured curriculum for learning R programming and data science through a series of guided, self-paced exercises delivered via a command-line interface. The content covers a broad range of data science education, including language fundamentals, data cleaning and manipulation, statistical analysis, and data visualization. It also includes instructional modules focused on software development practices. These lessons are developed as a modular hierarchy of courses an
Pyre is a high-performance static type checker and analysis tool for Python. It identifies type errors and ensures type safety without executing the program, utilizing a static type inference engine to maintain consistency across functions. The project is distinguished by an incremental type analysis engine that operates as a background daemon. This system monitors filesystem changes to re-validate only modified parts of a project, reducing the time required for repeated analysis. It also includes a static analysis security tool that uses taint analysis to track untrusted data flows and ident
Blade-build is a multi-language build system and software orchestrator designed to automate the compilation, linking, and testing of complex codebases. It functions as an incremental build engine that models project structures as directed acyclic graphs, ensuring that only affected modules are recompiled when source code or header files change. By utilizing declarative build specifications, the system provides a unified approach to managing dependencies and toolchains across diverse programming environments. The system distinguishes itself through a focus on hermetic build environments and re
This project is a structured Rust programming course and learning path consisting of a sequence of interactive coding exercises. It provides a curriculum designed to guide learners from basic language fundamentals, such as syntax and type systems, to the development of complex applications. The learning experience is supported by a command-line solution validator that verifies the correctness of code solutions. The curriculum follows a progressive problem sequencing model, allowing users to master memory management and application logic through a series of practical coding challenges. The sc
This project is a functional programming course and automated coding curriculum designed to teach the core principles of the paradigm through a structured sequence of exercises and modules. It serves as an interactive programming tutorial where learners solve incremental problems and validate their understanding through a programming exercise suite. The curriculum is language-agnostic, focusing on core logic and paradigms rather than a specific language. It employs an automated toolchain that transforms source code into executable binaries to verify solutions. Correctness is validated using
This repository provides curated learning paths, structured courseware, and technical materials for mastering Go programming, container orchestration, and software architecture. It serves as a comprehensive educational resource for systems programming, focusing on language mechanics, memory safety, and high-performance backend design. The project distinguishes itself through a multi-modal instructional design that combines instructor-led workshops, project-based curricula, and competency-based certifications. It offers specialized guidance on building production-grade AI infrastructure, inclu
rimraf is a Node.js recursive file deletion tool and cross-platform filesystem utility. It provides both a programmatic library and a command-line interface for removing files and directories and all of their contained contents across different operating systems. The utility supports glob-based file deletion, allowing the removal of items that match specific wildcard patterns rather than just literal paths. It also includes the ability to abort deletion processes mid-execution and apply custom predicate-based filtering to exclude specific files or folders. The project covers broad filesystem
This project is a comprehensive educational guide and curriculum for applying functional programming principles and category theory within the JavaScript ecosystem. It provides a structured learning path focused on writing predictable and scalable code through the use of pure functions and immutability. The resource includes a dedicated course on algebraic data structures and a functional programming tutorial. To reinforce theoretical concepts, it features a set of interactive coding exercises and runnable programming challenges for hands-on practice. The materials cover a broad range of fun
MSBuild is a .NET build engine and software build automation system that transforms source code into deployable applications. It utilizes a declarative project system based on a structured XML schema to define build items, properties, and targets used across the .NET ecosystem and Visual Studio. The system features a customizable build task framework that allows the implementation of custom tasks and loggers to perform specific software construction operations. This extensibility enables the creation of specialized logic to modify build process behavior. The engine manages build automation t
Rustlings is an interactive language tutorial and exercise suite designed to teach the syntax and idioms of the Rust programming language. It functions as a guided learning path where users build proficiency by solving a collection of small, interactive coding challenges. The project utilizes compiler-driven learning, employing the Rust compiler to provide immediate feedback and validation as users fix broken code snippets. This approach focuses on language onboarding and education through practical, hands-on coding practice. The learning experience is structured around a file-based exercise
The GitHub ToolKit for developing GitHub Actions.
AlgoXY is a functional programming educational book and technical publication produced as a LaTeX digital book. It serves as a programming education resource and library focused on functional algorithms and data structures. The project provides a collection of persistent data structures, such as trees and heaps, designed for immutable state management. It includes a series of implementation exercises and verified answers to teach core computer science concepts through the practical application of functional logic. The content covers the design of persistent data structures and the implementa
fsearch is a high-performance desktop file search tool and filesystem indexing engine. It provides near-instant location of files and folders on a local filesystem by utilizing a background indexing system that monitors filesystem changes in real time. The utility distinguishes itself through advanced query capabilities, including support for boolean search logic using AND, OR, and NOT operators, as well as regular expression and wildcard filtering. It allows for precise result refinement using literal character handling and specific search modifiers such as case sensitivity and exact matches
This project is a comprehensive educational resource consisting of a Bash programming tutorial, scripting reference, and Linux command line manual. It provides instructional materials for writing scripts, automating system tasks, and mastering terminal navigation and Unix system administration. The guides cover a wide range of shell environment customization, including prompt styling and the use of aliases. It also provides a shell environment guide for managing configuration files and initializing user environments. The materials detail a broad set of capabilities including control flow log