{"id":23430628,"url":"https://github.com/fr33z3/semantic_navigation","last_synced_at":"2025-04-12T23:07:50.749Z","repository":{"id":2031395,"uuid":"2967952","full_name":"fr33z3/semantic_navigation","owner":"fr33z3","description":"Simple navigation menus implementation for Rails 3 application with multiple and nesting menus. ","archived":false,"fork":false,"pushed_at":"2023-01-20T00:43:25.000Z","size":299,"stargazers_count":8,"open_issues_count":12,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-26T17:09:12.441Z","etag":null,"topics":["navigation","navigation-menus","nested-menus","rails","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/fr33z3.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-12-12T22:24:40.000Z","updated_at":"2023-10-20T10:25:12.000Z","dependencies_parsed_at":"2023-02-11T22:40:18.033Z","dependency_job_id":null,"html_url":"https://github.com/fr33z3/semantic_navigation","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fr33z3%2Fsemantic_navigation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fr33z3%2Fsemantic_navigation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fr33z3%2Fsemantic_navigation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fr33z3%2Fsemantic_navigation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fr33z3","download_url":"https://codeload.github.com/fr33z3/semantic_navigation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248543883,"owners_count":21121838,"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":["navigation","navigation-menus","nested-menus","rails","ruby"],"created_at":"2024-12-23T09:39:09.921Z","updated_at":"2025-04-12T23:07:50.728Z","avatar_url":"https://github.com/fr33z3.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# semantic_navigation [![Gem Version](https://badge.fury.io/rb/semantic_navigation.png)](http://badge.fury.io/rb/semantic_navigation) [![Build Status](https://travis-ci.org/fr33z3/semantic_navigation.png)](https://travis-ci.org/fr33z3/semantic_navigation)\n\nSimple navigation menus implementation for Rails 3 application with multiple and nesting menus.\n\n## Purpose\n\nForget fat layouts, views and controllers. This gem will do all the menu staff for you.\nYou simply just have to generate configuration file, fill it with your menu hierarchy and renderer it wherever you want.\n\nSimply and customizable it will make for you all the routins you were spending a lot of time before.\n\n### Features\n\n* semantic_navigation supports defining as many separate menus as you want and they can be as deep as you need.\n* supports different styles of url definitions ('route#like', :symbols, 'strings', {hash: 'like'})\n* supports and array of urls for one item\n* supports procs for item name definitions - so you can have dynamic names\n* supports render conditions defined as proc where you have access to controller class variables, request params and even to the rendering item\n* supports multiname definitions where you can set the custom name for each renderer.\n* has renderers compatible with bootstrap - so if you using bootstrap it will be simplier\n* supports controller default styles overriding both - from configuration and view file\n* supports custom renderers\n\n## How to install\n\nWrite the gem dependency in your Gemfile:\n\n```ruby\ngem 'semantic_navigation'\n```\n\nMake the install by bundler\n\n```bash\n$ bundle install\n```\n\nGenerate the config file:\n```bash\n$ rails generate semantic_navigation:install\n```\n\n## Quick start\n\nConfigure your navigation in `config/initializers/semantic_navigation.rb`:\n\n```ruby\nSemanticNavigation::Configuration.run do\n  navigate :root_menu do\n    header :header_item, :name =\u003e 'Header'\n    item :first_item, '#', :name =\u003e 'First Item', :ico =\u003e :tag\n    divider\n    item :second_item, '#', :name =\u003e 'Second Item', :ico =\u003e :user\n  end\nend\n```\n\nAnd try to render it in your layout(code in haml):\n\n```haml\n.well\n  = navigation_for :root_menu, :as =\u003e :bootstrap_list\n```\n\nor\n\n```haml\n.well\n  = bootstrap_list_for :root_menu\n```\n\nRender the navigation using the semantic_navigation helper methods and options for them.\n\nFor the information of how to configure and render your navigation read the [Wiki](https://github.com/fr33z3/semantic_navigation/wiki).\n\n### Dependencies\n\n* Ruby \u003e= 1.9.2\n* Rails \u003e= 3.2.0\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffr33z3%2Fsemantic_navigation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffr33z3%2Fsemantic_navigation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffr33z3%2Fsemantic_navigation/lists"}