{"id":16202351,"url":"https://github.com/panoply/spx","last_synced_at":"2025-04-10T04:56:28.231Z","repository":{"id":37946239,"uuid":"345414406","full_name":"panoply/spx","owner":"panoply","description":"⚡ Single Page XHR for enhancing SSR powered web applications.","archived":false,"fork":false,"pushed_at":"2024-12-21T00:58:03.000Z","size":5204,"stargazers_count":41,"open_issues_count":1,"forks_count":6,"subscribers_count":5,"default_branch":"next","last_synced_at":"2025-04-03T03:09:22.829Z","etag":null,"topics":["pjax","spa","spx","ssr","xhr"],"latest_commit_sha":null,"homepage":"https://spx.js.org","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/panoply.png","metadata":{"files":{"readme":"docs/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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-07T17:52:02.000Z","updated_at":"2025-01-30T10:43:23.000Z","dependencies_parsed_at":"2024-04-27T02:22:44.765Z","dependency_job_id":"085b0d86-c5b4-453a-a4e1-e0ca629ccad5","html_url":"https://github.com/panoply/spx","commit_stats":{"total_commits":709,"total_committers":2,"mean_commits":354.5,"dds":"0.0014104372355430161","last_synced_commit":"b696287915fc375967c6e0c3924c5f26dfbd4b4f"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/panoply%2Fspx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/panoply%2Fspx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/panoply%2Fspx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/panoply%2Fspx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/panoply","download_url":"https://codeload.github.com/panoply/spx/tar.gz/refs/heads/next","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248161261,"owners_count":21057554,"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":["pjax","spa","spx","ssr","xhr"],"created_at":"2024-10-10T09:47:03.911Z","updated_at":"2025-04-10T04:56:28.207Z","avatar_url":"https://github.com/panoply.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SPX Documentation\n\nDocumentation website for SPX (Single Page XHR). Built using [11ty](https://www.11ty.dev/docs/) and served up on [Netlify](https://netlify.com). The documentation is leveraging SPX so feel free to reference as a strap in your next project.\n\nVisit the docs: [spx.js.org](https://spx.js.org)\n\n### Supports\n\n- Generated using 11ty\n- SCSS to CSS Compilation with SASS Dart\n- CSS Post Processing via PostCSS + CSSPurge\n- TypeScript Transpilation using TSUP\n- SVG Sprites with SVGO\n- HTML Minification with HTML Terser\n- Documentation Version generation\n\n# Development\n\nAll dependencies are included within the `package.json` file. ESLint, Prettier and Stylelint is assumed to be installed globally but available as optional dependencies. Documentation is written in markdown and views are composed in Liquid. Frontmatter and JSON data files are used for the order of navigation and various other reference specific information.\n\n### Commands\n\nAfter installing, run `pnpm dev` to start in development mode. Documentation will build and be deployed via Github actions.\n\n```cli\npnpm dev                 # Starts development in watch mode\npnpm stage               # Serve up via Netlify for staging\npnpm build               # Builds for production and applies version copy .zip\npnpm release             # Runs netlify build, generates sitemap and deploys\npnpm 11ty:build          # Triggers an 11ty build\npnpm 11ty:watch          # Starts 11ty in watch mode with server\npnpm sass:build          # Compiles SASS into CSS\npnpm sass:watch          # Start SASS in watch mode\npnpm ts:build            # Build production JS bundle\npnpm ts:watch            # Start ESBuild in watch mode\n```\n\n# Markdown Customizations\n\nMarkdown files will are processed using [markdown-it](https://github.com/markdown-it/markdown-it) and a couple of custom plugins. Frontmatter and JSON data files are used to the order of navigation and various other reference specific information.\n\n- [Grid Container](#grid-container)\n- [Rule Heading](#rule-heading)\n- [Rule Showcase](#rule-showcase)\n\n## Grid Container\n\nGrid access is made possible using fenced containers in the markdown. The `grid` keyword along with quadruple `::::` or triple `:::` markers will result in content encapsulation in the output rendering. The [Brixtol Bootstrap](https://brixtol.github.io/bootstrap/) variation grid system and CSS framework class utilities are available and used for styling.\n\n### INPUT\n\nTake the following code structure in `.md` files:\n\n```md\n:::: grid row jc-center ai-center\n\n::: grid col-sm-6 col-md-4\nLorem ipsum dolor sit...\n:::\n\n::: grid col-6 col-md-8\nLorem ipsum dolor sit...\n:::\n\n::::\n```\n\n### OUTPUT\n\nThe generated output result in `.html` files:\n\n\u003c!--prettier-ignore--\u003e\n```html\n\u003cdiv class=\"row jc-center ai-center\"\u003e\n\n  \u003cdiv class=\"col-sm-6 col-md-4\"\u003e\n    Lorem ipsum dolor sit...\n  \u003c/div\u003e\n  \u003cdiv class=\"col-6 col-md-8\"\u003e\n    Lorem ipsum dolor sit...\n  \u003c/div\u003e\n\u003c/div\u003e\n```\n\n# Versions\n\nVersion copies are generated automatically for documentation based on SPX versions. Generation happens in the TSUP (TypeScript → JavaScript) bundle process. When SPX versions increment and documentation differs then the previous version will be added to the distributed output (`public/v`). The `.eleventy.js` configuration file provides a Liquid short code for versions made available via `{% versions %}` tag.\n\nThe [version](/docs/version/) directory contains `.zip` files of previously generated documentation in accordance with SPX versions. Running a **production** build (i.e: `pnpm build`) will automatically create an archive of distributed docs and add the `.zip` copy within this directory. The production build will extract contained documentation versions and add them to the `public/v` directory upon deployment.\n\n# License\n\nLicensed under **[MIT](#LICENSE)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpanoply%2Fspx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpanoply%2Fspx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpanoply%2Fspx/lists"}