Jekyll is a mature, blog-aware static site generator written in Ruby. It transforms plain text files (Markdown, Liquid templates, HTML, Sass, CoffeeScript) into static websites, supporting collections, posts, drafts, data files, gem-based themes, and a rich plugin system. The architecture is a monolith library with a CLI interface (build, serve, new, clean, doctor, new-theme) and a built-in development server with LiveReload. Key data flows: source files are read by a Reader, processed through converters (Markdown via Kramdown, SmartyPants, etc.), rendered with Liquid templates and layouts, and written to a destination directory. Incremental builds are supported via a regenerator that tracks file modifications and dependencies. The codebase is well-structured with extensive unit and integration tests (Minitest, Cucumber), benchmarks, and profiling tools. It demonstrates strong engineering practices: a plugin architecture with hooks, converters, generators, tags, and filters; a drop-based Liquid integration; caching; and platform-aware utilities. The project is actively maintained with frequent releases, a formal release process, and community governance.
Ghost is a professional publishing platform (CMS) with a strong focus on content creation, newsletters, memberships, and monetization. The system provides a full-stack solution: a Node.js/Express backend serving admin and public APIs, multiple frontend applications including an admin interface (React with legacy Ember migration), a Lexical-based rich text editor (Koenig), membership/portal UI, comments, signup forms, and an ActivityPub integration. The architecture follows a monorepo structure managed with pnpm and Nx, featuring adapters for cache/storage/scheduling, a domain events system, and versioned database migrations. Key entry points include `ghost/core/index.js` for the backend server and `apps/admin` for the admin SPA. Data flows involve content authored via the editor, stored in a relational database (via Knex/Bookshelf), served through REST APIs, rendered via Handlebars themes, and distributed through email campaigns (Mailgun) and RSS.
hexo-theme-butterfly is a feature-rich, card-based UI theme for the Hexo static site generator. It is not a standalone application but a theme package that integrates deeply with Hexo's extension APIs: Pug templates for layouts, Stylus stylesheets for the visual system, vanilla JavaScript for client-side interactions, and Node.js scripts that register tag plugins, helpers, filters, and event handlers to enrich content generation. Its production role is to transform raw Markdown posts and site configuration into a polished, interactive blog front-end complete with comments, search, analytics, dark mode, Pjax navigation, code syntax highlighting, and various content widgets such as tags, archives, series, and related posts. The architecture is configuration-driven, with a large default config object that users can override, and it relies on a centralized asset manifest (plugins.yml) to load third-party CSS/JS from CDNs. It also supports multi-language i18n through YAML language files and provides numerous optional integrations (Disqus, Gitalk, Waline, Twikoo, Algolia, Google Analytics, etc.) behind conditional Pug includes. While the repository is a theme, it demonstrates reusable engineering patterns in its utility libraries, CSS mixins, and Hexo plugin design, making it useful as a reference for static-site theme development. There are no data science or research components; this is purely an application/theme repository.
Dillinger is a cloud-enabled, online Markdown editor with live preview, export to Markdown, HTML, and PDF, and synchronization with cloud storage services including GitHub, Dropbox, Google Drive, OneDrive, and Bitbucket. Built with Next.js 14 (App Router), the application uses Monaco Editor for editing, Zustand for client-side state management with localStorage persistence, and markdown-it with a rich plugin chain for rendering. It features a modular architecture with API routes for OAuth flows and file operations per cloud provider, a versioned public REST API (v1) for rendering and export, and separate packages for a CLI tool and an MCP server for LLM integration. The codebase is well-organized with clear component separation (editor, preview, sidebar, modals, UI primitives), custom hooks per integration, and comprehensive unit and E2E test coverage. Auxiliary agent/skill files and design system CSVs exist in the repository but are development tools, not part of the application runtime.
Qiita CLI is a command-line tool and preview server for managing Qiita blog posts locally. It allows users to create, edit, preview (with hot-reload), and publish articles and slides (Marp-based) to the Qiita platform via its REST API. The architecture separates CLI commands (init, login, new, preview, publish, pull) from a file-system-backed repository layer that synchronizes local markdown files with Qiita's remote state using a `.remote` mirror directory. A React-based web frontend provides a sidebar for navigating articles/slides and an embedded preview of rendered Markdown (including MathJax and embedded scripts). The server also supports Marp slide preview with shadow DOM isolation for CSS scoping. The codebase is well-structured, uses TypeScript, has comprehensive unit tests, and follows modern Node.js patterns (async/await, error handling, dependency injection). It is actively maintained by Qiita Inc. and targets Node.js 22+.
This repository implements the Ghost CLI, a command-line tool for installing, configuring, updating, and managing Ghost CMS instances on Linux servers (Ubuntu). The system is a monolithic Node.js application with a plugin architecture. Its core responsibilities include: (1) resolving and downloading Ghost versions from the npm registry, (2) setting up required infrastructure (MySQL, nginx, systemd), (3) managing instance lifecycle (start/stop/restart), (4) handling content migration and import/export via the Ghost Admin API, (5) running health checks via the doctor command, and (6) handling major version upgrades with rollback support. Architecturally, the CLI is composed of a Command base class with yargs integration, a layered task system using listr2 for sequential/parallel operations, and an extension system that allows built-in plugins (nginx, systemd, MySQL) to inject commands, setup steps, doctor checks, and custom process managers. Configuration is managed via JSON files, and dependencies are installed using either yarn or pnpm. The codebase is well-structured with clear separation of concerns: commands in lib/commands/, tasks in lib/tasks/, utilities in lib/utils/, and extensions in extensions/. The tool depends on external services: npm registry for version resolution, Ghost Admin API for import/export, system tools (nginx, systemd, MySQL) for production setups, and acme.sh for SSL certificate management. It supports local development (direct node process) and production (systemd service). The codebase is actively maintained, with support for Ghost versions 1.x through 6.x, Node.js 22/24, and MySQL 5.6 through 9.4. While there is some legacy code for older Ghost versions, the overall architecture is modern, testable, and modular.
This repository is the official Ghost Starter Theme, a foundation for building custom Ghost CMS themes. It provides a complete set of Handlebars templates (default.hbs, index.hbs, post.hbs, etc.), modular CSS components (buttons, forms, global reset), and JavaScript modules (mobile menu toggle, infinite scroll) that are compiled and optimized via Rollup and PostCSS. The theme is designed to be extended and includes CI/CD workflows for testing and deployment. It is not a standalone application but a theme package that runs within the Ghost CMS environment (>=5.0.0). The codebase demonstrates modern front-end tooling with ESM, CSS custom properties, and responsive image handling. While the theme itself is tightly coupled to Ghost's template engine, several components (CSS patterns, infinite scroll, menu toggle) are self-contained and could be extracted for use in other projects.
The Dawn repository is a Ghost theme designed for the Ghost blogging platform (version >=5.0.0). It provides a responsive, feature-rich frontend for Ghost blogs, including templates for various page types, asset pipelines for CSS and JavaScript, and support for Ghost-native features like members, tags, authors, and comments. The theme emphasizes reader experience with adaptive navigation, infinite scroll pagination, lightbox galleries, and responsive embeds. Architecturally, it follows the standard Ghost theme structure with Handlebars templates for server-side rendering and client-side JavaScript enhancements. The build system uses Gulp and PostCSS to process assets, and leverages shared Ghost theme packages for base assets and translations. Key interactive components include a responsive dropdown menu, infinite scroll pagination with IntersectionObserver, a delegated lightbox for dynamic content, and responsive image handling via a custom Handlebars partial. While the theme is highly optimized for Ghost integration, it contains several reusable frontend patterns—such as adaptive navigation, infinite scroll pagination, and dynamic lightbox galleries—that could be adapted to other projects with minimal modification. The theme is actively maintained as part of the TryGhost/Themes monorepo, with recent commits indicating ongoing support.
AppFlowy-Web is a feature-rich collaborative workspace application built with React, TypeScript, and Yjs (CRDT). It provides real-time collaborative document editing via a Slate-based editor, multiple database views (grid, board, calendar, gallery, list, timeline, feed, chart), AI-powered writing assistance and chat, publishing/sharing capabilities, and workspace management. The application is designed as an open-source alternative to Notion, supporting both cloud-hosted and self-hosted deployments. The architecture is a single-page application with Yjs as the core data model for offline-first collaboration, backed by IndexedDB caching and REST/WebSocket APIs. The codebase is extensive (4000+ files) with comprehensive unit and E2E tests, but exhibits moderate technical drift due to mixed UI paradigms (MUI + Radix), complex Yjs observer lifecycle management, and some deprecated environment variable mappings.
Samarium is a modular, all-in-one business management system (ERP/CMS) built with Laravel 11 and Livewire 3. It provides a comprehensive admin dashboard for small to medium businesses, covering sales invoicing, purchase orders, expense tracking, inventory management, accounting (double-entry ledger, trial balance, income statement), customer/vendor relationship management, and a full content management system (webpages, posts, galleries, navigation menus, themes). It also includes e-commerce capabilities (product catalog, shopping cart, online orders), appointment booking, team management, calendar with Nepali date support, and additional modules like vacancies, testimonials, newsletters, and document/URL link management. The system is configurable via a module toggle in config/app.php and supports both a dashboard interface and a public-facing website. The architecture follows a standard Laravel MVC pattern with Livewire components handling all interactive UI. Each business domain has its own set of Livewire components (e.g., SaleInvoiceEditor, ProductDisplay) that use a shared ModesTrait for state management. A service layer provides pagination and CRUD logic, though many service methods are incomplete. The frontend uses Bootstrap 4, Font Awesome, and Chart.js for reporting. The system is Dockerized for easy deployment and includes seeders for demo data. While the codebase is functional and covers a wide feature set, it exhibits several quality issues: mixed namespaces (some models under App\, others under App\Models\), hardcoded values (VAT 13%, Nepali month arrays), incomplete features (many TODO comments, empty service methods), and code duplication (multiple similar Livewire components for editing fields). The Nepali calendar support is a distinctive feature but requires manual maintenance of hardcoded date ranges. Overall, Samarium is a solid, feature-rich ERP for its target audience but would benefit from refactoring and stricter coding standards.