{"id":31701948,"url":"https://github.com/getlantern/lantern-ui","last_synced_at":"2025-10-08T21:10:25.647Z","repository":{"id":4610044,"uuid":"5753554","full_name":"getlantern/lantern-ui","owner":"getlantern","description":"UI for Lantern","archived":false,"fork":false,"pushed_at":"2020-10-02T20:13:30.000Z","size":101393,"stargazers_count":26,"open_issues_count":7,"forks_count":25,"subscribers_count":23,"default_branch":"master","last_synced_at":"2024-04-15T03:25:46.144Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://lantern-ui.nodejitsu.com/app/index.html","language":"JavaScript","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/getlantern.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-09-10T18:07:04.000Z","updated_at":"2020-10-02T20:13:25.000Z","dependencies_parsed_at":"2022-09-03T20:51:01.824Z","dependency_job_id":null,"html_url":"https://github.com/getlantern/lantern-ui","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/getlantern/lantern-ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getlantern%2Flantern-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getlantern%2Flantern-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getlantern%2Flantern-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getlantern%2Flantern-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/getlantern","download_url":"https://codeload.github.com/getlantern/lantern-ui/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getlantern%2Flantern-ui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000716,"owners_count":26082837,"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-10-08T02:00:06.501Z","response_time":56,"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":"2025-10-08T21:10:23.959Z","updated_at":"2025-10-08T21:10:25.639Z","avatar_url":"https://github.com/getlantern.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **UNMAINTAINED** lantern-ui\n\n### This project is no longer maintained nor is it used anywhere in lantern products anymore\n\n[![Build\nStatus](https://secure.travis-ci.org/getlantern/lantern-ui.png)](http://travis-ci.org/getlantern/lantern-ui \"Build Status\")\n[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/getlantern/lantern-ui/trend.png)](https://bitdeli.com/free \"Bitdeli Badge\")\n\n![screenshot-welcome](./screenshots/welcome.png)\n\nUI for [Lantern](https://github.com/getlantern/lantern).\n\nA live demo is deployed to https://lantern-ui.nodejitsu.com/app/index.html running\nagainst the bundled mock server, which simulates a real Lantern backend.\nThe real backend serves lantern-ui only over localhost, where minification,\nconcatenation, and other speedups appropriate for remotely hosted files are not\nnecessary. Please keep that in mind when accessing the public demo.\n\n\n## Overview\n\nThis is the repository for the UI of\n[Lantern](https://github.com/getlantern/lantern). It is maintained as\na separate repository to facilitate development. This code can be run\nindependently of Lantern's Java backend with a lightweight node.js http server\nusing [Faye](http://faye.jcoglan.com/) to implement Lantern's bayeux server.\n\nSee [SPECS.md](https://github.com/getlantern/lantern-ui/blob/master/SPECS.md)\nfor specifications of the state and the state transitions developed for the\nUI (work in progress).\n\n\n## Getting Started\n\nInstall required dependencies (`sudo` as necessary):\n\n* [Node.js](http://nodejs.org/): `brew install node` or equivalent for your\n  system\n\n* [Bower](http://bower.io): `npm install -g bower` (only needed if you want to\n  be able to update dependencies; they're already checked in to the\n  app/bower_components directory so you don't need bower just to fetch them).\n\n* run `npm install` to fetch dependencies specified in package.json\n\n* run `scripts/web-server.js`\n\nYou should get a message telling you the application is up and running with\na link to access it.\n\nWhen you first access the app, you will start at the beginning of the setup\nprocess (will look like the screenshot above). To skip the setup process and\ngo straight to an already set-up app, run `scripts/web-server.js --skip-setup`.\nYou should then see something like this when you open the app:\n\n![screenshot-vis](./screenshots/vis.gif)\n\nThe mock scenarios the app can run with (e.g. your location is London, you have\na friend in Shanghai, etc.) are defined in `mock/scenarios.js`, and are enabled\nin `mock/backend.js`.\n\n\n### For working on the stylesheets:\n\n(Not necessary unless you want to change stylesheets.)\n\n* [ruby](http://www.ruby-lang.org/) (comes with OS X)\n\n* [compass](http://compass-style.org/) 0.12.2:\n  `gem install compass --version '= 0.12.2'`.\n  \nTell compass to watch for changes in the sass stylesheets and\nautomatically compile them into css in the directory specified by the compass\nconfig file (`config/compass.rb`):\n\n    $ scripts/start-compass.sh \u0026\n    \u003e\u003e\u003e Compass is watching for changes. Press Ctrl-C to Stop.\n\n\n## Build\n\nLantern UI uses [Gulp](http://gulpjs.com/) to build assets\n\n* `npm install --global gulp`\n* `npm install`\n* `gulp build`\n\nEmbed 'dist' folder into production.\n\n## i18n\n\nTranslated strings are fetched from json files in the \"app/locale\" directory\nand interpolated into the app using\n[Angular Translate](https://github.com/PascalPrecht/angular-translate).\nTo add or change a translated string, update the corresponding mapping\nin \"app/locale/en_US.json\" and add or update any references to it in the app if\nneeded.\n\n### Transifex\n\nAll translatable content for Lantern has been uploaded to [the Lantern\nTransifex project](https://www.transifex.com/projects/p/lantern/) to help\nmanage translations. Translatable strings from this code have been uploaded to\nthe [ui](https://www.transifex.com/projects/p/lantern/resource/ui/) resource\ntherein. Transifex has been set up to automatically pull updates to that\nresource from [its GitHub\nurl](https://raw.github.com/getlantern/lantern-ui/master/app/locale/en_US.json)\n(see\nhttp://support.transifex.com/customer/portal/articles/1166968-updating-your-source-files-automatically\nfor more information).\n\nAfter translators add translations of these strings to the Transifex project,\nthe [Transifex\nclient](http://support.transifex.com/customer/portal/articles/960804-overview)\ncan be used to pull them. See\nhttp://support.transifex.com/customer/portal/articles/996157-getting-translations\nfor more.\n\n\n## Running tests\n\nLantern UI does not yet have a comprehensive set of tests, but the tests that\nare written are useful and are set up with continuous integration in\n[Travis](https://travis-ci.org/getlantern/lantern-ui).\n\nTo run the tests locally, first install karma (`sudo` as necessary):\n\n    npm install -g karma\n\nand [PhantomJS](http://phantomjs.org/) (brew install phantomjs).\n\nThen look in `.travis.yml` for the commands to run the unit and end-to-end tests.\n\n**TODO**: *expand this*\n\n\n## Further Reading\n\nThe UI is implemented as an [AngularJS](http://angularjs.org) app. Using the\n[AngularJS Batarang](https://github.com/angular/angularjs-batarang)\nChrome extension (especially the performance tab) can come in handy.\n\nThis repo was started with the\n[angular-seed](https://github.com/angular/angular-seed). The\n`scripts/web-server.js` script has been modified to attach a [bayeux\nserver](http://svn.cometd.com/trunk/bayeux/bayeux.html) server as mentioned\nabove and an http API to simulate the Lantern backend. The application logic\nfor the mock backend can be found in `mock/backend.js`.\n\nSpecifications for application states and transitions between them are documented\n[here](https://github.com/getlantern/lantern-ui/blob/master/SPECS.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetlantern%2Flantern-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetlantern%2Flantern-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetlantern%2Flantern-ui/lists"}