24 dépôts
Grouping of related functions and types into named namespaces to manage scope and code splitting.
Distinct from Functionality Module Organizations: Candidates focus on physical directory structures or tenant isolation rather than logical language namespaces.
Explore 24 awesome GitHub repositories matching programming languages & runtimes · Module Organization. Refine with filters or upvote what's useful.
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
Organizes code into named modules and namespaces to manage scope and facilitate code splitting.
This is a video course that teaches JavaScript from scratch, covering fundamentals like variables, functions, scope, closures, and data types through 88+ lessons organized into 15 modules. The course uses a live-coding pedagogy where students code alongside pre-recorded video lessons, with each lesson providing starter and solution files for self-paced practice. The curriculum focuses on browser-native APIs, teaching DOM manipulation, event handling, and data fetching without external frameworks. Students build real-world projects like image galleries, drawing tools, and audio visualizers thr
Teaches organizing JavaScript into reusable ES modules and bundling them with build tools like Parcel.
Il s'agit d'un framework de gestion de modules pour les applications Laravel conçu pour organiser les bases de code monolithiques en composants modulaires indépendants. Il implémente une architecture d'application modulaire qui sépare la logique métier en unités autonomes, chacune avec ses propres répertoires dédiés pour les contrôleurs, modèles et vues. Le projet sert d'outil pour le Domain Driven Design (DDD), permettant aux développeurs de regrouper les fonctionnalités connexes dans des contextes délimités (bounded contexts). Cette approche prend en charge la migration d'applications monolithiques vers des modules plus petits et gérables pour améliorer la maintenabilité et l'évolutivité à long terme. Le framework gère l'organisation du projet via la découverte de modules basée sur les répertoires, le mapping de namespaces personnalisés et le bootstrapping basé sur des fournisseurs de services. Il gère l'état de l'application via un chargement piloté par la configuration et automatise la localisation des ressources en utilisant une structuration de dossiers basée sur des conventions et l'injection dynamique de routes.
Organizes the codebase into self-contained modules that encapsulate logic, templates, and routing for better maintainability.
Ce projet est un guide complet pour écrire des configurations et des plugins Neovim en utilisant le langage de programmation Lua. Il sert de manuel pour utiliser l'API Lua native de Neovim afin de gérer les buffers, les fenêtres et les options de l'éditeur. Le guide se concentre sur l'interopérabilité entre Lua et Vimscript, fournissant des instructions sur la façon d'exécuter du Vimscript depuis Lua et d'appeler des fonctions Lua depuis Vimscript. Il fournit également un framework pour le développement de plugins, couvrant l'organisation du code en modules externes et la création de commandes et de mappages de touches personnalisés. La documentation couvre des capacités plus larges incluant l'automatisation du workflow de l'éditeur, la manipulation de variables internes et la gestion des options de l'éditeur. Elle inclut également des instructions pour sourcer des fichiers externes et modifier les lignes de buffer.
Guides the organization of plugin code into separate Lua modules to create reusable components and clean namespaces.
This is a style guide for structuring AngularJS applications using a component-based architecture. It provides a set of conventions for organizing code into self-contained modules, each encapsulating its own logic, templates, and routing. The guide promotes a modular application structure built from root, component, common, and feature modules to improve maintainability and reusability. The guide establishes a one-way data flow pattern where parent components pass data to children through bindings, and children communicate changes back up through events. It distinguishes between stateful comp
Organizes AngularJS code into root, component, common, and feature modules for maintainability and scalability.
Sucrase is a high-speed transpilation tool that compiles modern JavaScript, TypeScript, JSX, and Flow to standard JavaScript for modern runtimes. It operates as a fast alternative to Babel, using a single-pass scanner and tokenizer that strips type annotations and applies only requested syntax transforms without building an AST or performing type checking. The tool differentiates itself through a zero-type-checking pipeline that omits type checking entirely, relying on the assumption that input code is already valid for the target runtime. It uses scanner-based tokenization and single-pass co
Transforms import and export statements into require and module.exports calls with options for dynamic import preservation.
Le WebAssembly System Interface (WASI) est un ensemble standardisé d'API qui permettent aux modules WebAssembly d'interagir avec les systèmes d'exploitation de manière portable et indépendante de la plateforme. Il fournit une abstraction de runtime portable qui sépare les appels système de haut niveau des implémentations hôtes de bas niveau pour assurer la compatibilité entre différents systèmes d'exploitation. Le projet utilise un système de modules basé sur des composants pour lier des modules binaires indépendants via des interfaces partagées, supprimant l'exigence d'un binaire monolithique unique. Il emploie une définition d'interface inter-langages pour fournir un système de types portable et des signatures d'API qui mappent de manière cohérente à travers plusieurs langages de programmation et cibles. Le système couvre un large éventail de domaines de capacités, incluant la gestion de la sécurité basée sur les capacités pour restreindre l'accès au système via des jetons explicites. Il gère également la coordination des tâches asynchrones et l'intégration système portable pour interagir avec les ressources matérielles.
Links independent binary modules through shared interfaces to create complex applications without a single monolithic binary.
Ce projet est une ressource éducative localisée pour apprendre le langage de programmation Rust, fournissant un guide complet et des spécifications techniques traduites en chinois simplifié. Il sert d'outil pédagogique pour étudier les idiomes du langage, la gestion de la mémoire et les systèmes de types. Le dépôt se concentre sur la localisation de la documentation logicielle, convertissant les guides officiels en chinois simplifié pour accroître l'accessibilité pour les non-anglophones. Il utilise un système basé sur Markdown pour organiser le contenu et prend en charge l'export multi-format vers des formats HTML statiques, PDF et EPUB pour une visualisation web et hors ligne. Le contenu couvre un large éventail de domaines techniques de Rust, incluant les primitives de gestion de la mémoire comme l'ownership et l'emprunt (borrowing), la conception avancée du langage impliquant les traits et les génériques, et des stratégies complètes de gestion des erreurs. Il détaille également les fondamentaux de la programmation, la modélisation des données et l'utilisation d'outils de productivité pour la gestion des builds et des dépendances.
Rust moves module definitions into dedicated files or directories to improve code navigability.
Rhai est un moteur de script embarqué et un langage à typage dynamique conçu pour être intégré dans des applications Rust. Il fonctionne comme un compilateur d'arbre de syntaxe abstraite (AST) et une couche d'interopérabilité native, permettant aux développeurs de mapper des types et des fonctions Rust dans un environnement de script pour une communication bidirectionnelle. Le projet sert de framework pour créer des langages dédiés (DSL) personnalisables. Il permet de définir des opérateurs, une syntaxe et des environnements d'exécution restreints personnalisés, facilitant la création de langages spécialisés avec des jeux de fonctionnalités sur mesure. Le moteur couvre un large éventail de capacités, notamment le sandboxing avec limitation de ressources pour une exécution sécurisée, l'organisation modulaire du code et un traitement complet des données pour les types numériques, chaînes de caractères et binaires. Il fournit également des outils pour la manipulation d'AST, la sérialisation de l'état d'exécution et l'observabilité au runtime via l'inspection de la pile d'appels et des interfaces de débogage. Le moteur est conçu pour un déploiement multiplateforme sur tout CPU ou système d'exploitation supporté par le compilateur natif.
Groups related functions and types into named namespaces to manage scope and code splitting.
Webpacker est un système d'outils de build frontend et un gestionnaire de modules JavaScript qui intègre Webpack dans les applications Ruby on Rails. Il sert de pont entre le framework web backend et le processus de build frontend pour compiler JavaScript et CSS en bundles prêts pour le navigateur. Le système fournit un serveur d'assets de développement dédié pour le rechargement de code en temps réel et le rafraîchissement automatique du navigateur. Pour la production, il inclut un pipeline de précompilation qui minifie les scripts et les feuilles de style et applique la compression des assets réseau pour optimiser la livraison. Le projet couvre une gestion complète des assets via l'injection de balises pilotée par des helpers et le mappage d'assets basé sur un manifeste, garantissant que les fichiers compilés sont correctement liés dans les modèles HTML. Il prend également en charge des pipelines de compilation personnalisés via une interface de configuration programmable pour intégrer des langages non standards et la résolution de chemins de modules personnalisés.
Groups related JavaScript functions and types into named namespaces to manage scope and facilitate code splitting.
ThinkJS est un framework web côté serveur conçu pour créer des applications sur le runtime Node.js. Il sert de plateforme de développement prenant en charge TypeScript et les dernières normes ECMAScript pour créer des services backend stables et maintenables. Le framework utilise une architecture d'application en couches qui sépare les préoccupations en niveaux de contrôleur, de service et de modèle. Il utilise un modèle de service par injection de dépendances pour gérer les services singleton et un système basé sur des middlewares pour la gestion des requêtes et le routage. Le développement est soutenu par un pipeline de build qui transpile les fonctionnalités JavaScript modernes et exploite le typage statique pour détecter les erreurs lors du processus de compilation.
Provides a build pipeline that transpiles modern ES module syntax into CommonJS for compatibility with the Node.js runtime.
FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int
Organizes related message subscribers and publishers into modular units to separate business logic from the main application entry point.
Ce projet est une traduction chinoise d'un guide complet sur le langage de programmation Go. Il sert de ressource éducative localisée et de manuel technique conçu pour fournir des conseils sur la syntaxe, la conception et le développement logiciel. La ressource couvre un large éventail d'enseignements sur le langage Go, y compris l'implémentation de modèles de programmation et la conception système. Elle inclut des leçons traduites et des exemples axés sur les fonctionnalités fondamentales du langage telles que la concurrence et l'utilisation des interfaces. Le contenu couvre divers domaines, notamment les fondamentaux du langage, la modélisation de données, la réflexion au runtime et la gestion de la mémoire. Il fournit également une couverture détaillée de l'architecture logicielle, de la gestion des erreurs, de l'assurance qualité et du réseau web. La documentation est structurée comme un manuel technique comprenant du contenu traduit, des errata et des corrections pour garantir un apprentissage précis.
Go groups related features into independent units to simplify design and enable code reuse across projects.
wmr est un outil de développement d'applications web et un système de construction qui fonctionne comme un bundler de modules ES, un générateur de site statique et un serveur de développement local. Il fournit un environnement complet pour créer des applications web modernes, combinant un compilateur de production avec un serveur qui prend en charge le rechargement à chaud. Le projet se distingue par son approche intégrée des scripts d'arrière-plan et du routage, servant à la fois de bundler de service worker et d'outil pour le routage basé sur le système de fichiers. Il permet la génération de HTML statique via le pré-rendu et fournit une intégration native pour générer des web workers afin de gérer les calculs lourds. Le système couvre un large éventail de capacités d'automatisation de la construction, y compris la compilation à la demande, la gestion des requêtes basée sur des middlewares et un pipeline piloté par des plugins pour étendre la logique de construction. Il inclut également des utilitaires pour gérer les variables d'environnement, mapper les chemins d'importation et analyser la taille du bundle pour optimiser les actifs de production.
Provides an ES module bundler that optimizes source files into production-ready assets using standard JavaScript module resolution.
Ce projet est un guide complet et une ressource éducative pour le langage TypeScript. Il couvre les principes fondamentaux du langage, incluant son système de typage structurel, l'analyse de type statique et le processus de transpilation des fichiers sources typés en JavaScript. Le matériel détaille comment modéliser des données complexes et une logique de type réutilisable en utilisant des génériques, des types conditionnels et des types mappés. Il explique également l'utilisation des fichiers de déclaration pour fournir une sécurité de type pour les bibliothèques JavaScript externes et l'intégration de la vérification de type dans des projets JavaScript existants via des annotations JSDoc. La portée du contenu s'étend aux modèles de programmation orientée objet, à la manipulation du DOM et à la configuration des comportements du compilateur. Il inclut des conseils sur la gestion de l'interopérabilité des modules, la mise en place de pipelines de build et l'utilisation de l'intelligence de l'éditeur pour une meilleure productivité des développeurs.
Guides the organization of code into reusable modules and manages interoperability between different module systems.
cheats.rs est une référence de syntaxe Rust et une ressource de documentation technique fournie sous forme de site statique. Il sert de collection organisée d'exemples et de modèles conçus pour aider à l'apprentissage du langage Rust. Le projet couvre un large éventail de constructions linguistiques, incluant la gestion de la mémoire, l'utilisation des génériques et l'implémentation de logique asynchrone. Il fournit des conseils sur la définition de structures de données, la gestion des références mémoire et l'organisation des modules de code. Une couverture supplémentaire inclut des modèles pour le flux de contrôle, le pattern matching et l'utilisation de macros, ainsi que des instructions pour effectuer des opérations non sécurisées (unsafe) et maintenir la stabilité de l'API.
Provides guidance on using namespaces and modules to manage visibility and dependency paths in Rust.
Rekit is a development toolkit for building scalable web applications, providing a modular framework and automated project scaffolding. It functions as an extensible environment for managing the architecture of applications built with React, Redux, and React Router, utilizing a feature-sliced design to organize components, state logic, and routing into decoupled, domain-specific modules. The toolkit distinguishes itself through a plugin-based extensibility system that allows for the creation of custom project element types and the modification of default scaffolding behaviors. It features a R
Organizes application logic into decoupled, domain-specific modules encapsulating components and actions.
This project is a static analysis tool and linter for Elixir designed to enforce a unified visual structure across codebases. It serves as a specification for code formatting, naming conventions, and documentation standards. The tool provides a standardized system for casing and prefixes used in files, functions, and variables. It also establishes guidelines for formatting module and function descriptions to ensure consistent technical documentation. The project covers a broad range of code quality areas, including the organization of module layouts, the implementation of commenting patterns
Arranges attributes, directives, and macros in a logical order to clarify the relationship between modules and files.
Ce projet est une chronique historique traduite et une référence de langage de programmation documentant l'évolution technique et la standardisation de JavaScript sur deux décennies. Il sert d'archive d'ingénierie logicielle qui suit les brouillons de versions et l'influence de divers organismes de normalisation sur le développement du langage. Le dépôt fournit une traduction chinoise d'une histoire complète, analysant les jalons sociopolitiques et techniques de l'écosystème. Il cartographie les jalons du langage et chronique le développement des spécifications officielles pour fournir un contexte historique sur la façon dont le langage a évolué. La documentation couvre les concepts fondamentaux du langage, incluant le flux asynchrone, les modèles d'objets et la gestion de la mémoire. Elle inclut également un catalogue de contributeurs de l'industrie et un glossaire de terminologie technique et de patterns architecturaux.
Covers the organization of code into logical modules for better scope management.
This is a collection of official extensions for the Rollup bundling process. These plugins serve as module transformers, resolution managers, and bundle optimizers designed to modify how JavaScript modules are processed, resolved, and optimized. The suite provides specialized capabilities for modern web transpilation, converting TypeScript, JSX, Flow, and GraphQL into compatible JavaScript. It distinguishes itself through extensive non-JavaScript asset integration, allowing the import of JSON, YAML, CSV, and image files as JavaScript modules or data URIs, and providing support for bundling We
Transforms JavaScript objects into tree-shakable ES Module imports to reduce the final bundle size.