{"id":13424009,"url":"https://github.com/rundel/livecode","last_synced_at":"2026-01-26T21:57:03.931Z","repository":{"id":61749205,"uuid":"203604883","full_name":"rundel/livecode","owner":"rundel","description":null,"archived":false,"fork":false,"pushed_at":"2024-02-22T09:58:43.000Z","size":1220,"stargazers_count":119,"open_issues_count":12,"forks_count":12,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-15T17:37:28.982Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rundel.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2019-08-21T14:46:39.000Z","updated_at":"2025-03-10T20:03:28.000Z","dependencies_parsed_at":"2024-05-01T19:16:03.981Z","dependency_job_id":"4b2b824f-95f5-418a-a999-9c3560c2866d","html_url":"https://github.com/rundel/livecode","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rundel/livecode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rundel%2Flivecode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rundel%2Flivecode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rundel%2Flivecode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rundel%2Flivecode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rundel","download_url":"https://codeload.github.com/rundel/livecode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rundel%2Flivecode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28789574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T21:49:50.245Z","status":"ssl_error","status_checked_at":"2026-01-26T21:48:29.455Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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-07-31T00:00:46.650Z","updated_at":"2026-01-26T21:57:03.911Z","avatar_url":"https://github.com/rundel.png","language":"CSS","funding_links":[],"categories":["CSS"],"sub_categories":[],"readme":"---\noutput: github_document\n---\n# livecode \u003cimg src='man/figures/logo.png' align=\"right\" height=\"140\" /\u003e\n\n\u003c!-- badges: start --\u003e\n[![R build status](https://github.com/rundel/livecode/workflows/R-CMD-check/badge.svg)](https://github.com/rundel/livecode/actions?query=workflow%3AR-CMD-check)\n![](https://img.shields.io/badge/lifecycle-experimental-orange.svg)\n\u003c!-- badges: end --\u003e\n\n\u003cbr/\u003e\n\nlivecode is an R package that enables you to broadcast a local R (or any other text) document over the web and provide live updates as it is edited.\n\n\u003cbr/\u003e\n\n![](man/figures/livecode.png)\n\n\n## Installation\n\nYou can install the development version of `livecode` from this GitHub repository:\n\n``` r\nremotes::install_github(\"rundel/livecode\")\n```\n\n## Usage\n\n``` r\n# From RStudio with an open R script\nserver = livecode::serve_file()\n#\u003e ✔ Started sharing 'example.R' at 'http://192.168.1.128:30000'.\n#\u003e ✖ The current ip address ('192.168.1.128') for the server is private, only users on the same local network are likely to be able to connect.\n\n# Once started, send messages to your users.\nserver$send_msg(\"Hello World!\", type = \"success\")\nserver$send_msg(\"Oh no!\\n\\n Something bad has happened.\", type = \"error\")\n\n# Once finished, shut the server down.\nserver$stop()\n#\u003e ✔ Stopped server at 'http://192.168.1.128:30000'.\n```\n\n## Using bitly\n\n`livecode` has built in functionality for generating a bitlink automatically for your livecoding session. To do this you will need to provide `livecode` with a bitly API access token. To obtain one of these tokens you will need to create an account with bitly (the free tier is sufficient) and then select \u003ckbd\u003eProfile Settings\u003c/kbd\u003e \u003e \u003ckbd\u003eGeneric Access Token\u003c/kbd\u003e and then enter your password when prompted. This results in a long hexidecimal string that you should copy to your clipboard.\n\n`livecode` looks for this token in an environmental variable called `BITLY_PAT`. To properly configure this environmental variable we can use the `usethis` package. In R run the following,\n\n```r\nusethis::edit_r_environ()\n```\n\nwhich will open your `.Renviron` file for you and you will just need to add a single line with the format\n\n```\nBITLY_PAT=0123456789abcdef0123456789abcdef01234567\n```\n\nreplacing `0123456789abcdef0123456789abcdef01234567` with the hexidecimal string you copied from bitly. After saving `.Renviron` you will need to restart your R session and can then test that your token is function correctly by running,\n\n```r\nlivecode::bitly_test_token()\n#\u003e ✔ Your bitly token is functioning correctly.\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frundel%2Flivecode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frundel%2Flivecode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frundel%2Flivecode/lists"}