{"id":26657097,"url":"https://github.com/chigix/rengular","last_synced_at":"2025-10-06T01:24:36.144Z","repository":{"id":36697240,"uuid":"183480328","full_name":"chigix/rengular","owner":"chigix","description":"RDF described Visual Novel-style Game Engine atop Web Components","archived":false,"fork":false,"pushed_at":"2023-01-07T05:11:52.000Z","size":9446,"stargazers_count":2,"open_issues_count":51,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-31T09:54:52.495Z","etag":null,"topics":["angular","engine","game","ranobe","visual-novel"],"latest_commit_sha":null,"homepage":"https://rengular.js.org","language":"TypeScript","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/chigix.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}},"created_at":"2019-04-25T17:28:22.000Z","updated_at":"2021-02-05T12:45:36.000Z","dependencies_parsed_at":"2023-01-17T04:09:32.770Z","dependency_job_id":null,"html_url":"https://github.com/chigix/rengular","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigix%2Frengular","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigix%2Frengular/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigix%2Frengular/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigix%2Frengular/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chigix","download_url":"https://codeload.github.com/chigix/rengular/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248391292,"owners_count":21095987,"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":["angular","engine","game","ranobe","visual-novel"],"created_at":"2025-03-25T08:17:15.617Z","updated_at":"2025-10-06T01:24:36.055Z","avatar_url":"https://github.com/chigix.png","language":"TypeScript","readme":"# RenGULAR \u003cimg src=\"https://github.com/chigix/rengular/blob/master/src/assets/logo-150.png\" align=\"right\" /\u003e\n\n[![CircleCI](https://circleci.com/gh/chigix/rengular/tree/master.svg?style=svg)](https://circleci.com/gh/chigix/rengular/tree/master)\n[![npm version](https://badge.fury.io/js/%40rengular%2Fnetwork-context.svg)](https://www.npmjs.com/@rengular/network-context)\n\u003ca href=\"https://json-ld.org/\" title=\"JSON-LD\"\u003e\u003cimg style=\"border:0px;\" width=\"88\" src=\"https://json-ld.org/images/json-ld-button-88.png\" alt=\"JSON-LD-logo-88\"/\u003e\u003c/a\u003e\n\nThe modern visual novel-style game engine leveraging the power of\n[web](https://www.webcomponents.org/) and [Angular](https://angular.io/) in ultimate stories\n-- open source and free to render interactive storytelling on browsers acrossing\nvariety of smart devices upon the modern Web Components standards embracing the\n[New Generation of Internet and Web](https://ieeexplore.ieee.org/document/4620089/?arnumber=4620089).\n\n## Design Overview\n\nDocuments are preparing in [Wiki Repository](https://github.com/chigix/rengular/wiki) and in planning to be integrated into [project homepage](https://rengular.js.org).\n\n### Component Theming and Typography\n\nThis feature is not required but recommended and currently implemented by default\nprovided `SimulationService`.\n\nSample Component:\n\n```javascript\n{\n  ...\n  textbox: {\n    // Use Material Dark Theming and Default Typography\n    '@theming' : ['mat-dark-theming', 'mat-typography'],\n    ...\n  },\n  ...\n}\n```\n\n### Scene Program in a Scene (Renaming to Gekijo is in plan)\n\n* Initially, there is one set including one `@program` and one scene(Stage/Gekijo).\n* A `GekijoDirective` is with the data structure inherited from the scene itself,\n  where the scene data are made modifiable, excepting `@` mark initialled properties.\n* `GekijoDirective` would be sent sequentially to the stage from the `@program`.\n* If a `GekijoDirective` was sent to Scene(Stage/Gekijo), it would be performed\n  immediately.\n* The only parameter to arrange the timing for `GekijoDirective` triggering is\n  through the sharing property, `delay`, which is default as 0 millisecond and\n  optional for an event definition.\n\n* Empty Event\n  `{ delay: 0 }`\n* Common Event\n  `{ delay: 0, textbox: '.....', menu: ['yes', 'no'], ... }`\n\n[Sample Program](https://evangelion.fandom.com/wiki/Episode:06#cite_ref-1):\n\n```javascript\n{\n  ...\n  '@program': [\n    { textbox: { text: 'Are you all right? Ayanami! ...' } },\n    { textbox: { text: \"Don't ever say that ! Just don't say that you have nothing else!\" } },\n    { delay: 1000, textbox: {\n      text: \"And don't say goodbye when you leave for a mission, it's just too sad.\"}},\n    { textbox: {\n      text: \"Why are you crying? I'm very sorry I don't know what I should do or feel at a time like this\"}},\n    { delay: 2000, textbox: 'Smile is all~' },\n  ],\n  ...\n}\n```\n\n## RenGULAR Programming Interface (RenPI)\n\nInitially, RenPI is designed using [Resource Description Framework](https://www.w3.org/TR/rdf11-concepts/) (RDF) with [JSON-LD](https://json-ld.org/) in default.\n\n### DEMO: Simple Quest JSON Repository\n\nThere is a [pure json repository](https://github.com/chigix/rengular-api-starter) designed to be used as a starter template or\nunderstanding RenGULAR Programing Interface, deeply representing the core concept\nand possible practice on:\n\n* RenGULAR Simulation Framework\n* RenGULAR Gekijo Container\n\n### Why JSON-LD\n\n* Simulation Framework design makes the data describing scenes as json linking data.\n* JSON-LD makes components data self-describing:\n  * Given Objects types\n  * Associate properties with IRIs\n  * Use [terms](https://w3c.github.io/json-ld-syntax/#dfn-term) defined in a referenced context\n  * Property types are specified in context\n  * Subject Chaining Definition, Subject Reference, Single Value to Unordered Values,\n  terms shorting property names, `@type` coercion, Named Graphs defined in Language\n  Feature.\n* [Compaction, Expansion, Flattening and Framing](https://w3c.github.io/json-ld-syntax/#forms-of-json-ld)\n  designed in json-ld makes RenPI both developer and machine understanding friendly.\n\n## RenGULAR Components v.s ANGULAR Components\n\nGenerally, ANGULAR Components, especially the Amazing Material Components set, are\ndirectly able to be installed and used in the whole RenGULAR environment, even\nthrough RenPI operations.\n\nHowever mostly RenGULAR Components are unable to be directly used onto other\nANGULAR environments due to the dependency of RenGULAR Kernel Services and some\ncommon basic components, RenGULAR Primitive Components.\n\n## RenGULAR Primitive Components (RenCom)\n\n* ChoiceMenu\n* LayeredImage\n* OarsPocket\n* Scene\n* Textbox\n\n## RenGULAR Simple Components (RenSimCom)\n\n* SimpleEntry\n* SimpleNavi\n\n## RenGULAR Context Actions\n\n* `http://rengular.js.org/schema/StyleAction`: Component Level Styling\n\n  provided for directly applying CSS styles onto target component element.\n  However this styling feature is exactly restricted to very few components\n  which are created and managed by RenGULAR only.\n\n* `http://rengular.js.org/schema/ComponentAction`: Load New Component\n* `http://rengular.js.org/schema/StaticSessionAction`: Store Information shared\n  by same type.\n\n## Story\n\nInspired by [Ren'Py](https://www.renpy.org/).\n\n## License\n\n[MIT](https://rengular.js.org/license).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigix%2Frengular","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchigix%2Frengular","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigix%2Frengular/lists"}