{"id":18024206,"url":"https://github.com/robisim74/nodejs-mvc","last_synced_at":"2026-03-12T21:01:05.240Z","repository":{"id":143841943,"uuid":"371747468","full_name":"robisim74/nodejs-mvc","owner":"robisim74","description":"Build a Node.js MVC web app with Webpack, Babel, TypeScript or ES, critical CSS. SEO \u0026 performance friendly","archived":false,"fork":false,"pushed_at":"2022-07-28T15:06:30.000Z","size":2717,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-08T14:38:39.630Z","etag":null,"topics":["critical","express","mvc","nodejs","typescript","webpack"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/robisim74.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-28T15:40:24.000Z","updated_at":"2023-05-26T14:03:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"c1594b27-fc7a-4812-864a-14eb8309dcf7","html_url":"https://github.com/robisim74/nodejs-mvc","commit_stats":null,"previous_names":[],"tags_count":4,"template":true,"template_full_name":"robisim74/static-web-app","purl":"pkg:github/robisim74/nodejs-mvc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robisim74%2Fnodejs-mvc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robisim74%2Fnodejs-mvc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robisim74%2Fnodejs-mvc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robisim74%2Fnodejs-mvc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robisim74","download_url":"https://codeload.github.com/robisim74/nodejs-mvc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robisim74%2Fnodejs-mvc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30444283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T20:23:30.529Z","status":"ssl_error","status_checked_at":"2026-03-12T20:23:14.027Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["critical","express","mvc","nodejs","typescript","webpack"],"created_at":"2024-10-30T07:12:10.051Z","updated_at":"2026-03-12T21:01:05.214Z","avatar_url":"https://github.com/robisim74.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Node.js MVC\n![Node.js CI](https://github.com/robisim74/nodejs-mvc/workflows/Node.js%20CI/badge.svg)\n\u003e Build a Node.js MVC web app with Webpack, Babel, TypeScript or ES, critical CSS. SEO \u0026 performance friendly\n\n## Features\n\n* _Express_ \u0026 MVC pattern\n* _Handlebars_ view engine \u0026 partial views\n* _Helmet_ for security\n* _Babel_ \u0026 _webpack_ to build the client\n* _Rollup_ to build the Express app\n* _TypeScript_ \u0026 ES\n* _Tailwind_\n* CSS, _SASS_ with _Autoprefixer_\n* Critical CSS\n* HMR \u0026 Live reload\n* ES modules\n* Sitemap\n\n\n## Contents\n* [Getting started](#1)\n* [Project structure](#2)\n* [What's new](#3)\n\n\n## \u003ca name=\"1\"\u003e\u003c/a\u003eGetting started\nDownload the code \u0026 configure the project in `config.js` file.\n\n### Installation\n_Node.js_ 16 or higher is required.\n\n```Shell\nnpm install\n```\n\n### Start DevServer\n```Shell\nnpm run dev\n```\n\n### Build\n```Shell\nnpm run build\n```\n\n\n## \u003ca name=\"2\"\u003e\u003c/a\u003eProject structure\n- App\n    - **src/** source code folder\n        - **src/app.ts** Express entry point\n        - **src/app.controller.ts** controllers file\n        - **src/views/** views folder\n        - **src/routes/** routes folder\n            - **index.ts** client ts file for `views/index.html`\n            - **index.scss** client css file for `views/index.html`\n    - **config.js** app configuration\n    \n- Scripts \u0026 configuration files\n    - **build.js** building process\n        - runs _Rollup_ to build the app\n        - runs _webpack_ to generate client bundles\n        - runs _critical_ to inline critical CSS\n        - runs _sitemap_ to generate `sitemap.xml`\n    - **scripts/** scripts used by the building process\n    - **babel.config.js** _Babel_ configuration\n    - **webpack.config.dev.js** _webpack_ configuration for development\n    - **webpack.config.prod.js** _webpack_ configuration for building client bundles\n    - **rollup.config.js** _Rollup_ configuration for building the Express app\n    - **.browserslistrc** target browsers for _Autoprefixer_\n    - **postcss.config.cjs** _PostCSS_ configuration file to use _Autoprefixer_ \u0026 _Tailwind_\n    - **tailwind.config.cjs** _Tailwind_ configuration\n    - **tsconfig** _TypeScript_ configuration file\n    - **package.json** _npm_ options \u0026 scripts\n\n\n## \u003ca name=\"3\"\u003e\u003c/a\u003eWhat's new\nYou can find template changes [here](https://github.com/robisim74/nodejs-mvc/releases).\n\n\n## License\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobisim74%2Fnodejs-mvc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobisim74%2Fnodejs-mvc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobisim74%2Fnodejs-mvc/lists"}