{"id":21026483,"url":"https://github.com/nimblehq/jekyll-templates","last_synced_at":"2026-04-10T12:04:27.219Z","repository":{"id":34776142,"uuid":"148295677","full_name":"nimblehq/jekyll-templates","owner":"nimblehq","description":"Nimble optimized Jekyll templates used in our projects ","archived":false,"fork":false,"pushed_at":"2022-12-02T12:20:05.000Z","size":970,"stargazers_count":1,"open_issues_count":19,"forks_count":1,"subscribers_count":4,"default_branch":"development","last_synced_at":"2025-01-20T14:34:14.083Z","etag":null,"topics":["jekyll","ruby","template","vuejs","webpack"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/nimblehq.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":"2018-09-11T09:47:06.000Z","updated_at":"2021-06-06T04:03:18.000Z","dependencies_parsed_at":"2022-09-11T12:11:23.829Z","dependency_job_id":null,"html_url":"https://github.com/nimblehq/jekyll-templates","commit_stats":null,"previous_names":[],"tags_count":4,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nimblehq%2Fjekyll-templates","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nimblehq%2Fjekyll-templates/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nimblehq%2Fjekyll-templates/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nimblehq%2Fjekyll-templates/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nimblehq","download_url":"https://codeload.github.com/nimblehq/jekyll-templates/tar.gz/refs/heads/development","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243463281,"owners_count":20295086,"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":["jekyll","ruby","template","vuejs","webpack"],"created_at":"2024-11-19T11:44:51.035Z","updated_at":"2025-11-11T20:45:02.968Z","avatar_url":"https://github.com/nimblehq.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n   Modern starter kit for rapid static site development with \u003cstrong\u003eJekyll\u003c/strong\u003e\n\u003c/p\u003e\n\n---\n\n## Technologies\n\nThis template offers rich development experience using the following technologies:\n\n| **Tech*-                                          | **Description*-                                                   |\n|---------------------------------------------------|-------------------------------------------------------------------|\n| [Jekyll](https://jekyllrb.com/)                   | Transform plain text into static websites and blogs.              |\n| [Kramdown](https://kramdown.gettalong.org/)       | Ruby-based markdown parser allowing to use both Markdown and HTML.|\n| [TailwindCSS](https://tailwindcss.com/)           | A utility-first CSS framework for rapidly building custom designs.| \n| [Stimulus JS](https://stimulus.hotwire.dev/)      | A A modest JavaScript framework for the HTML you already have.    |\n| [ESLint](http://eslint.org/)                      | Lint JS. Reports syntax and style issues.                         |\n| [Webpack](https://webpack.js.org)                 | Bundles npm packages and application JS together.                 |\n| [Docker](https://www.docker.com/)                 | Open platform to build, ship, and run applications everywhere.    | \n\n## Get Started\n\n### Using Docker and Docker Compose 🐳\n\nThis is the fastest way to get started working on Jekyll:\n\n- Rename the env file `.env.sample` to `.env` and add the required environment variables\n\n- Build the image locally and start the application:\n\n```bash\n$ ./bin/docker-start\n```\n\nThe container is running in development mode by default making the application reachable at `http://localhost:4000`.\n\n### Without Docker\n\n- Make sure that you have Ruby `2.7.x` and Node.JS \u003e `12.x.x`\n\n- Install dependencies\n\n```bash\n$ ./bin/setup\n```\n\n- Use Jekyll to serve the website locally (by default, at `http://localhost:4000`):\n\n- Use Jekyll to serve the website locally (by default, at `http://localhost:4000`):\n\n```bash\n$ ./bin/start\n```\n\n## Managing Content\n\nAll content is written using [kramdown](https://kramdown.gettalong.org/) which is basically Markdown with the ability to use HTML tags. \n\n### Text Content\n\n- Text content is stored in `_pages` into sub-directories. No content must be placed in the root of `_pages`.\n- File names must be kebab-cased (hyphenated delimited) corresponding to an entry in the navigation (see below) \n- Each file must be written in markdown and have an `.md` extension as Jekyll converts markdown files into HTML\n- Each file must contain a front-matter block at the beginning of the file with the config params `id` and `title`:\n\n```yaml\nid: about\ntitle: About\n```\n\nIn case of a sub-level page (i.e. not in the root directory), the front-matter block needs to include a config `parent` matching the parent page `id`:\n\n```yaml\nid: about-team\ntitle: Team\nparent: about\n```\n\n### Navigation\n\nThe navigation is generated from the data stored in `_data/menu/header.yml` and `_data/menu/footer.yml`:\n\n- Each pages contains a `title`, `slug` and `sub-pages`\n- The `slug` and `sub-pages` need to be kebab-cased as these strings are used to generate URLs\n- The `slug` corresponds to the page or sub-directory in `pages`\n\nExample:\n\n```yaml\n- title: Section Name\n  slug: section-name\n  sub-pages:\n  - sub-section-item\n  - another-sub-section-item\n```\n\nCorresponding to the following file structure:\n\n```ascii\n.\n+-- _pages\n|   +-- section-name.md\n|   +-- section-name/\n|   |   +-- sub-section-item.md\n|   |   +-- another-sub-section-item.md\n```\n\n\u003e Note: Note more than two-node sub-navigation (section -\u003e sub-pages) is currently supported in either the partials \n`_includes/header.html` or  `_includes/footer.html`. The files can be edited to add deeper levels navigation.\n\n### Assets\n\n- Media used to enrich text content must be stored in `assets/\u003cmedia type\u003e/pages/\u003csection-name\u003e`. \n- In the case of using media other than images, prefer creating a new sub-directory e.g. `assets/videos/pages/\u003csection-name\u003e` \n- To embed these media in the content, use the absolute path to each file: `/assets/\u003cmedia type\u003e/pages/\u003csection-name\u003e/\u003cfilename.extension\u003e`\n\n## Tests\n\nAs a static site grows to tens of hundreds of pages, broken links or HTML could easily make its way to a number of pages. \nTo prevent this issue, we use [HTMLProofer](https://github.com/gjtorikian/html-proofer).\n\n### Using Docker and Docker Compose 🐳\n\nMake sure to define the following environment variables:\n\n- `DOCKER_IMAGE` e.g. it must match the name defined in your registry of choice such as Docker Hub or Github Container Registry\n- `BRANCH_TAG` e.g. for the current branch name `development`, `export BRANCH_TAG=development`\n\nThen execute all tests:\n\n```bash\n$ docker-compose -f docker-compose.test.yml up -d\n```\n\n### Without Docker\n\nRun this locally or your CI / CD pipeline:\n\n```bash\n$ ./bin/test\n```\n\n## Deployment\n\n### Using GitHub Pages\n\n- Make sure that `index.md` is in the root of the directory\n- Head over to the setting page of the repository: `https://github.com/\u003cREPLACE_WITH_HANDLE\u003e/\u003cREPLACE_WITH_REPOSITORY_NAME\u003e/settings` e.g. `https://github.com/nimblehq/jekyll-templates/settings`\n- Select the option `master branch` in the Github Pages section\n\nYou are all set 🏄‍♂ ️ For complete details, header over to the [official documentation](https://help.github.com/en/github/working-with-github-pages)\n\n## License\n\nThis project is Copyright (c) 2014 and onwards Nimble. It is free software,\nand may be redistributed under the terms specified in the [LICENSE] file.\n\n[LICENSE]: /LICENSE\n\n## About\n\n![Nimble](https://assets.nimblehq.co/logo/dark/logo-dark-text-160.png)\n\nThis project is maintained and funded by Nimble.\n\nWe love open source and do our part in sharing our work with the community!\nSee [our other projects][community] or [hire our team][hire] to help build your product.\n\n[community]: https://github.com/nimblehq\n[hire]: https://nimblehq.co/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnimblehq%2Fjekyll-templates","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnimblehq%2Fjekyll-templates","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnimblehq%2Fjekyll-templates/lists"}