{"id":16482913,"url":"https://github.com/ecthiender/mouchak","last_synced_at":"2025-09-11T02:38:15.235Z","repository":{"id":6808181,"uuid":"8056069","full_name":"ecthiender/mouchak","owner":"ecthiender","description":"A web framework to deploy and build websites quickly.","archived":false,"fork":false,"pushed_at":"2014-03-06T05:29:23.000Z","size":1788,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-28T22:41:53.158Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ecthiender.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-02-06T17:23:32.000Z","updated_at":"2014-05-28T22:41:29.000Z","dependencies_parsed_at":"2022-08-26T07:02:31.000Z","dependency_job_id":null,"html_url":"https://github.com/ecthiender/mouchak","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ecthiender/mouchak","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecthiender%2Fmouchak","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecthiender%2Fmouchak/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecthiender%2Fmouchak/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecthiender%2Fmouchak/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ecthiender","download_url":"https://codeload.github.com/ecthiender/mouchak/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecthiender%2Fmouchak/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274568498,"owners_count":25309281,"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","status":"online","status_checked_at":"2025-09-11T02:00:13.660Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-10-11T13:12:25.381Z","updated_at":"2025-09-11T02:38:15.215Z","avatar_url":"https://github.com/ecthiender.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Mouchak\n=======\n\nA Javascript framework for building websites quickly.\n\nIt aims to provide a visual editing interface to create a website and edit its\ncontent, primarily for non-technical users.\n\nUnder the hood, Mouchak abstracts the content of the website into a JSON\nstructure and uses Backbone model and views to render them dynamically.\nThis makes the site entirely run on the client side and syncs with the server\nwhenever there is a update.\nThis also makes Mouchak quite extensible. The built-in types to represent HTML\nelements and media and such can be used and extended to build more custom\ntypes.\n\nMouchak can also load external JS/CSS files. Any magic that can be done using\nJavascript and CSS can be easily integrated into Mouchak. Just specify Mouchak\nthe plugin to load and the callback to execute.\n\nAdditionally, Mouchak can also provide a semantic rich environment. It provides\nthe user to specify tags or keywords with each associated content. To\ncomplement it, Mouchak provides an API (filterTags) to get all the related\ncontent together. One can easily built a view if this kind of functionality is\nnecessary.\n\n\nHow to use it\n=============\n\nInstalling\n----------\nEither download this codebase or git clone the repo.\n\n**Pre-requisites**\n\nYou need to have Python, MongoDB, Flask and PyMongo.\nTo install python and mongodb on your platform, please use search engines to\nfind instructions. As they are quite popular softwares, getting help online\nshould not be difficult.\n\nTo install Flask and PyMongo -\n\u003e pip install flask pymongo\n\nConfiguring\n-----------\nConfiguration of Mouchak consists of configuring which database to use,\nhostname, port no, title of the website etc.\nOpen up mouchak.conf, edit the file according to your needs, and then save it.\nIdeally, you should set up seperate db for every project.\n\nRunning\n-------\nOnce you have installed all the dependencies, go to the directory where the\ncode is located and type:\n\u003e python server.py\n\nThis starts the Mouchak server. You can now point your browser to\n[http://localhost:5000](http://localhost:5000)\n\nThis will load up and display the website.\nTo edit the website go to [/edit](http://localhost:5000/edit)\n\n\nThe global object for this framework is exposed as the variable M. This can be\ninspected in the console.\n\nThe M.filterTags() method takes an array of strings representing the tags to filter.\nIt returns an array of the content objects with the matched tags.\n\n\nHow it works\n============\n\nIt takes the content of the site in the form of JSON. The JSON should describe the content\n(in terms of type like text, audio or image) and also provide the content (in case of text\nthe content is as it is, in case images urls are given). The JSON should also describe the\ncontent semantically by giving it tags.\n\nMouchak provides a very simple and easy to use editor to edit the JSON.\n\nThe framework provides an easy way to pull up related content by just specifying the tags.\n\nBackbone models are used to model the content. Different content has different types.\nAgain all types are derived from one base type.\nEach model has a corresponding view as well. The views manage how the content are rendered.\n\nEach page is made of multiple content (content objects).\nPages are also modeled in Backbone models and their view is managed via Backbone views.\n\nThe framework also use Backbone router to handle client side routing.\n\n\nWhat it uses\n============\n\nMouchak uses HTML5 Boilerplate and Bootstrap project as a boilerplate code for the website.\nMouchak also leverages powerful libraries like Backbone.js and Underscore.js to manage and render\ncontent. This gives more flexibility to the content of the website.\n\n\nSupport\n=======\n\nEmail to rayanon at servelots dot com / arvind at servelots dot com for any kind of feedback.\n\n\nIssues\n======\n\nReport issues [here](http://trac.pantoto.org/mouchak/)\nFirst, check if your issue is already submitted by anyone else, by clicking on\n\"View Tickets\".\nIf your issue is not reported, you can report it by clicking on \"New Ticket\".\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecthiender%2Fmouchak","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fecthiender%2Fmouchak","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecthiender%2Fmouchak/lists"}