{"id":19999520,"url":"https://github.com/fossrit/posse","last_synced_at":"2025-10-25T01:19:31.516Z","repository":{"id":3495657,"uuid":"4552088","full_name":"FOSSRIT/posse","owner":"FOSSRIT","description":"Syllabus for POSSE","archived":false,"fork":false,"pushed_at":"2018-06-14T21:51:10.000Z","size":21090,"stargazers_count":11,"open_issues_count":1,"forks_count":13,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-12T10:12:19.659Z","etag":null,"topics":["education","educational-materials","python","rochester","rochester-institute-of-technology","sphinx-doc","teaching-materials"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/FOSSRIT.png","metadata":{"files":{"readme":"README.rst","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":"2012-06-04T20:32:44.000Z","updated_at":"2020-03-23T19:04:50.000Z","dependencies_parsed_at":"2022-09-08T05:10:10.812Z","dependency_job_id":null,"html_url":"https://github.com/FOSSRIT/posse","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOSSRIT%2Fposse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOSSRIT%2Fposse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOSSRIT%2Fposse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOSSRIT%2Fposse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FOSSRIT","download_url":"https://codeload.github.com/FOSSRIT/posse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224393887,"owners_count":17303725,"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":["education","educational-materials","python","rochester","rochester-institute-of-technology","sphinx-doc","teaching-materials"],"created_at":"2024-11-13T05:12:01.792Z","updated_at":"2025-10-25T01:19:31.441Z","avatar_url":"https://github.com/FOSSRIT.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"README.rst -- Tools for teaching the open source projects seminar @ RIT\n=======================================================================\n\nThis is an all-purpose repository for storing some content, but mostly tools for\nteaching the open source projects seminar @ RIT.\n\nFuture tools could include things like scripts to produce blog/commit/unittest\nstatistics.  This is also a place the syllabus could live, where students could\nfork and produce pull requests.\n\nSetting up your environment\n---------------------------\n\nBefore you can do anything with this (build the documentation or run any of the\nscripts) you'll need to setup and activate a python `virtualenv\n\u003chttp://pypi.python.org/pypi/virtualenv\u003e`_.  Run the following at the command\nprompt...\n\nOn Linux/Mac OS X\n+++++++++++++++++\n\nIf you don't have virtualenv installed yet, try::\n\n $ sudo easy_install virtualenv virtualenvwrapper\n\nIf you're using a distro like Fedora or Ubuntu, you should try this instead::\n\n $ sudo yum install python-virtualenv\n\nOnce you have virtualenv installed, you should be able to run::\n\n $ virtualenv --no-site-packages -p python2 sphinxenv\n $ source sphinxenv/bin/activate\n $ git clone git@github.com:YOUR_USERNAME/posse.git\n $ cd posse\n $ python setup.py develop\n\nOn Windows\n++++++++++\n\nAt the windows command prompt::\n\n $ virtualenv --no-site-packages -p python2 sphinxenv\n $ sphinxenv/Scripts/activate.bat\n\nIn msysGit or git-bash::\n\n $ git clone git@github.com:YOUR_USERNAME/posse.git\n\nBack in the windows command prompt::\n\n $ cd posse\n $ python setup.py develop\n\n\nBuilding the \"Documentation\"\n----------------------------\n\nThe \"documentation\" for the course (the syllabus, all the homework assignments,\nnotes on the lectures) are all kept in the ``doc/`` directory of this\nrepository.  The files all end with the extension ``.rst`` which is the file\nextension for the `reStructuredText \u003chttp://sphinx.pocoo.org/rest.html\u003e`_ markup\nlanguage.  They are all furthermore tied together the the `sphinx` framework for\nbuilding integrated docs.\n\nYou might notice that the syllabus, et. al. is hosted on\nhttp://readthedocs.org/.  The `upstream github repository\n\u003chttp://github.com/ralphbean/posse\u003e`_ has a hook installed\nthat automatically triggers a ``git pull`` at http://readthedocs.org from\nhttp://github.com.  Thus, every time we change the docs here, they are\nautomatically re-built into HTML for us and posted online.  Awesome!\n\nThis however means that we should be careful before we push anything to github,\nor it will 'go live'.  To be careful, you should rebuild the documentation\nlocally (on your machine) to check that whatever modifications you made to the\n``.rst`` files actually renders into the HTML that you want.\n\nIn order to do that, first make sure you have your virtualenv activated.\n\nBeing certain of that, in the root directory, simply run::\n\n $ sphinx-build -b html doc html-output\n\nThe html documentation will be generated in ``html-output/``.  Check\n``html-output/html/index.html`` to see if it exists.\n\n.. note:: If your machine complains that 'sphinx-build' is a command that could\n   not be found, try running \"$ python setup.py develop\" in the root of the\n   posse repository first.  That ``setup.py`` file contains\n   information about all *other* open source projects that are *required* for\n   this project, and will automatically install them from\n   http://pypi.python.org/\n\nValidating the ``data/students.yaml`` file\n------------------------------------------\n\nThe ``data/students.yaml`` file is a structured data file that keeps track of\nall the students in the class and metadata about them.  Using this file and the\nbindings in ``lib/posse/model/students.py`` we can build scripts that count\nhow many lines of code each student modifies each week, or how many\nwords/blogpost, or whatever we like.\n\nThe data format (`YAML \u003chttp://www.yaml.org/\u003e`_) can be a little prickly though.\nIt is `whitespace-sensitive`, meaning that how many spaces you put before an\nentry on each line has an impact on how the data is interpreted.  It also means\nthat tabs and spaces are distinctly different in their meaning.  It also means\nthat editing such a file is easy to mess up.\n\nIn order to ensure that you don't introduce any unparseable errors into the\nfile, there is a script in ``lib/posse/model/validate.py`` that reads in the\nfile and checks each entry.  You should run it after every time you edit\n``data/students.yaml``.\n\nIn order to run the ``validate.py`` script, make sure you have your\nvirtualenv activated.\n\nIn the root of the cloned source directory, run::\n\n  $ python lib/posse/model/validate.py\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffossrit%2Fposse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffossrit%2Fposse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffossrit%2Fposse/lists"}