{"id":19741101,"url":"https://github.com/marrow/tutorial","last_synced_at":"2025-06-10T11:36:31.731Z","repository":{"id":66821887,"uuid":"57013477","full_name":"marrow/tutorial","owner":"marrow","description":"An example wiki project with commits and tags to accompany the WebCore Tutorial.","archived":false,"fork":false,"pushed_at":"2016-11-19T06:24:26.000Z","size":56,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"wiki","last_synced_at":"2025-01-10T19:52:54.144Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/marrow.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2016-04-25T05:16:39.000Z","updated_at":"2016-10-23T04:17:49.000Z","dependencies_parsed_at":"2023-04-23T06:47:25.472Z","dependency_job_id":null,"html_url":"https://github.com/marrow/tutorial","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marrow%2Ftutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marrow%2Ftutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marrow%2Ftutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marrow%2Ftutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marrow","download_url":"https://codeload.github.com/marrow/tutorial/tar.gz/refs/heads/wiki","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241070188,"owners_count":19904335,"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":[],"created_at":"2024-11-12T01:24:41.876Z","updated_at":"2025-02-27T22:44:33.387Z","avatar_url":"https://github.com/marrow.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"WebCore Wiki Tutorial / Example\n===============================\n\nThis is a sample Wiki application for WebCore, using marrow.mongo and RESTful Resource Dispatch.\n\nIn order to run the example, you will want to:\n\n1. Create a virtual environment to house the project by running::\n\n      python3.5 -m venv wiki\n\n2. Activate the virtual environment::\n\n      cd wiki\n      source bin/activate\n\n3. Check out a copy of this code into the environment::\n\n      git clone -b wiki https://github.com/amcgregor/WebCore-Tutorial.git src\n\n4. Install the project, which will pull in any required dependencies::\n\n      cd src\n      python setup.py develop\n\n5. Make sure you have MongoDB running locally.\n\n6. Run the example in the development web server::\n\n      python -m web.app.wiki\n\nThat's about it.  To follow the tutorial, `browse the commit history on GitHub`_, starting at the oldest commit and working your way up.  Each commit is generally accompanied by an extensive commit message describing what changed and providing any further instructions related to that change.\n\nHappy hacking!\n\n\nEmbedding a Wiki in your own Application\n----------------------------------------\n\nAs of commit `78ccad1`_ the example wiki implementation is relocatable to paths other than the root, and as of commit `e163ee4`_ the collection used to store articles is configurable. Being entirely reusable, now, you can embed a wiki in your own application very easily:\n\n.. code:: python\n\n   from web.app.wiki.root import Wiki\n   \n   class YourApplicationRoot:\n       wiki = Wiki\n\nThis will attach a wiki to your application, accessible as ``/wiki``. If you wish to override the name of the collection used to store articles you can subclass ``Wiki`` and override the ``__collection__`` attribute:\n\n.. code:: python\n\n   from web.app.wiki.root import Wiki\n   \n   class YourApplicationRoot:\n       class wiki(Wiki):\n           __collection__ = 'articles'\n\n.. _browse the commit history on GitHub: https://github.com/amcgregor/WebCore-Tutorial/commits/wiki\n\n.. _78ccad1: https://github.com/amcgregor/WebCore-Tutorial/commit/78ccad1ffbbf84295d74b151534eb9f9383c5bc5\n.. _e163ee4: https://github.com/amcgregor/WebCore-Tutorial/commit/e163ee44a3256eed906bbe4b7109a8f8c1c074f0\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarrow%2Ftutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarrow%2Ftutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarrow%2Ftutorial/lists"}