{"id":16476374,"url":"https://github.com/softprops/picture-show","last_synced_at":"2025-03-16T18:31:35.861Z","repository":{"id":57736628,"uuid":"754746","full_name":"softprops/picture-show","owner":"softprops","description":"slip and slide picture shows for the web ","archived":false,"fork":false,"pushed_at":"2014-07-27T18:24:55.000Z","size":474,"stargazers_count":77,"open_issues_count":14,"forks_count":17,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-06T16:50:14.457Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Scala","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/softprops.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":"2010-07-03T06:47:17.000Z","updated_at":"2021-04-02T02:15:14.000Z","dependencies_parsed_at":"2022-08-24T14:57:20.112Z","dependency_job_id":null,"html_url":"https://github.com/softprops/picture-show","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softprops%2Fpicture-show","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softprops%2Fpicture-show/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softprops%2Fpicture-show/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softprops%2Fpicture-show/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/softprops","download_url":"https://codeload.github.com/softprops/picture-show/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243826788,"owners_count":20354220,"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-10-11T12:42:15.625Z","updated_at":"2025-03-16T18:31:34.558Z","avatar_url":"https://github.com/softprops.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# picture show\n\nmake slideshows with markdown text.\n\nrequirements:\n\n- a text editor\n- [conscript][cs]\n\n## Install\n\nRun as a [conscript][cs] program\n\n    cs softprops/picture-show\n\nThis will will install a program called `pshow` in your `~/bin` directory. Ensure this is your path.\n\n## Usage\n\nOnce installed you can serve a picture show that exists in the current directory with\n\n    pshow\n\nAfter validating a file called `conf.js` at the root of your presentation, your slides will be available for viewing by pointing your browser to `http://localhost:3000`\n\nTo service a specific show or host on a specific port use the `s` and or `p` command line flags which represent the absolute show path and port respectively\n\n    pshow -s=/path/to/show -p=1234\n\nThis will serve your show located at `/path/to/show` at `http://localhost:1234`\n\nShow path resolution can default to a target directory specified in an environment variable called `SHOW_HOME`\n\n    export SHOW_HOME=/path/to\n    pshow -s=show\n\nThis will serve your show located at `/path/to/show` at `http://localhost:3000`\n\nOn the go? You can export a show as a static html file that can run anywhere. Just add the flag `offline`\n\n    pshow --offline\n\nThis will generate the static contents of your show in a directory relative to your current one called `out`\n\nTo out the produced files to a target directory, add the `o` flag\n\n    pshow --offline -o=/path/to/output\n\nThe directory contents of a show are expected to be in the format\n\n    /yourshow\n      conf.js\n      /sectiona\n        sectiona.md\n      /sectionb\n        sectionb.md\n\nGisting your picture show\n\nYou can also host your picture show as gist on [github](http://gist.github.com) by specficying the gist by url using the `g` flag.\n\n     pshow -g=https://gist.github.com/asdfasdf\n     \nGists only support a flat file structure. Simply flatten the structure described above and picture show will take care of the rest.\n\n\n### conf-iguration\n\nShows are configurable through a `conf.js` file. This file should be in json\nformat should include a sections key with an array of section names to render and an optional title. From the example above\n\n\n    \u003e cat conf.js\n    {\n      \"title\": \"some show title\",\n      \"sections\": [\n        \"sectiona\",\n        \"sectionb\"\n      ]\n    }\n\nYou can leave out a section or rearrange sections but you should provide at least one.\n\n### slides\n\nSlides represent content that is rendered. One slide is rendered at a time and slides are ordered based on the order of configured sections mentioned above.\n\nSlides are generated from the provided markdown (.md) files as denoted with\na `!SLIDE` delimiter.\n\nThe example below generates 3 slides.\n\n    \u003e cat some.md\n    !SLIDE\n\n    one\n\n    !SLIDE\n\n    two\n\n    !SLIDE\n\n    three\n\nSlide content is, by default, expected in the form of markdown which will be transformed into html.\n\nYou can also embed images. It's recommended to place them under the section directory of the same markdown file and to use a relative path.\n\nIf you have a project with includes a `sectiona` section with a `foo.jpg` file\n\n    /show\n       ..\n       /sectiona\n         sectiona.md\n         foo.jpg\n\nIn `sectiona.md`, you'll want to reference `foo.jpg` as\n\n     ![foo](sectiona/foo.jpg)\n\n### subtitles\n\nHere's how you can add subtitles to a slide.\n\n    !SLIDE\n\n    ハロー!\n\n    #SUB Hello!\n\n### assets\n\n#### js and css\n\nYou can customize your show with css and javascript by adding a `css/custom.css` or `js/custom.js` /yourshow directory. The content will then be added to the shows header.\n\n#### files\n\nIf you want to embed an image or or other resource in your slides. Use the path from the root of your show\n\n     /show\n        /foo\n           bar.jpg\n           bar.md\n\n    cat show/foo/bar.md\n    #SLIDE!\n\n    ![bar](foo/bar.jpg \"bar\")\n\n## giter8\n\nAn example [giter8](http://github.com/n8han/giter8#readme) template is available via\n\n    g8 softprops/picture-show\n\n## why?\n\nI say why not. Slideshows should be relatively portable and should not require proprietary formats to run. Slideshow presentations should be as simple as possible for an audience to understand. Software should be the same way.\n\n## todo\n\n* use a grownup command line parser of options. possibly [scopt](https://github.com/jstrachan/scopt)\n* supported exporting a show to pdf\n\n## issues/suggestions\n\nI'll take them [here][issues].\n\ndoug tangren [softprops] 2010-12\n\n[cs]: https://github.com/n8han/conscript#readme\n[issues]: https://github.com/softprops/picture-show/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoftprops%2Fpicture-show","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoftprops%2Fpicture-show","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoftprops%2Fpicture-show/lists"}