{"id":13554997,"url":"https://github.com/roundcube-next/roundcube-shell","last_synced_at":"2025-04-03T07:33:34.300Z","repository":{"id":146323918,"uuid":"44561727","full_name":"roundcube-next/roundcube-shell","owner":"roundcube-next","description":"The client-side backbone of Roundcube Next","archived":false,"fork":false,"pushed_at":"2016-10-23T12:58:38.000Z","size":92,"stargazers_count":17,"open_issues_count":3,"forks_count":1,"subscribers_count":14,"default_branch":"master","last_synced_at":"2024-08-01T12:33:34.102Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/roundcube-next.png","metadata":{"files":{"readme":"README.md","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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2015-10-19T20:22:44.000Z","updated_at":"2021-06-21T17:48:07.000Z","dependencies_parsed_at":"2024-01-24T12:14:25.650Z","dependency_job_id":null,"html_url":"https://github.com/roundcube-next/roundcube-shell","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roundcube-next%2Froundcube-shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roundcube-next%2Froundcube-shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roundcube-next%2Froundcube-shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roundcube-next%2Froundcube-shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roundcube-next","download_url":"https://codeload.github.com/roundcube-next/roundcube-shell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222935629,"owners_count":17060398,"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-08-01T12:02:59.445Z","updated_at":"2024-11-04T03:31:35.870Z","avatar_url":"https://github.com/roundcube-next.png","language":"JavaScript","readme":"# Roundcube Shell\n\nThe Roundcube shell is responsible for doing authentication, providing the event-bus, UI routing, and common UI components;\nessentially, features which are crucial requirements for most other apps.\nIt is meant to embed other big and small Roundcube applications, such as Mail, Calendar, Notifications, and so forth.\nRunning Roundcube means running the Shell with some applications enabled.\n\n## Prerequisites\n\nYou need to have a JMAP server running somewhere. Currently, the Roundcube Server in conjunction with the perl JMAP proxy provides the most complete set of JMAP capabilities and the shell is developed against that.\n\n* [Roundcube Server](https://github.com/roundcube-next/roundcube-server) connected to [JMAP Proxy](http://github.com/jmapio/jmap-perl)\n* [Node.js](http://nodejs.org/) (with NPM)\n* [Bower](http://bower.io/)\n* [Ember CLI](http://www.ember-cli.com/)\n* [PhantomJS](http://phantomjs.org/) (only for future tests)\n* Ruby with [Bundler](http://bundler.io) (for generating the UI styleguide)\n\n## Setup\n\nBring in all dependencies and set up the project:\n\n* `bundle`\n* `npm install`\n* `bower install`\n* `ember g roundcube-mail`\n\n## Running / Development\n\nThe JMAP proxy happens to only support a very basic sort of authentication at this moment. You can link your IMAP account with the proxy server, and it should provide a secret UUID that identifies you.\n\n* `export JMAP_HOST=http://ip:port \u0026\u0026 STYLEGUIDE=true \u0026\u0026 ember server`\n* Open Roundcube at `http://localhost:4200`\n* See the pretty styleguide at `http://localhost:4200/assets/styleguide.html`\n\n### Installing apps for development\n\nFor development, Roundcube apps (aka Ember addons) from other repositories can be symlinked into the shell root with `npm link` as suggested in the [ember-cli guide](http://ember-cli.com/extending/#link-to-addon-while-developing).\n\nThis is how to pull everything together for developing Roundcube Next:\n\n* Clone [roundcube-notifications](https://github.com/roundcube-next/roundcube-notifications) and export it with `npm link`.\n* Clone [roundcube-mail](https://github.com/roundcube-next/roundcube-mail.git) and export it with `npm link`.\n* Change to this directory and link the two repos into node_modules:  \n    `npm link roundcube-notifications roundcube-mail`\n* Pull bower dependencies from modules into shell project by generating from blueprints:  \n    `ember g roundcube-mail`\n\n### Building\n\n* `ember build` (development)\n* `ember build --environment production` (production)\n\n## License\n\nThis program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with this program. If not, see [www.gnu.org/licenses/](http://www.gnu.org/licenses/gpl-3.0).\n","funding_links":[],"categories":["JavaScript","others"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froundcube-next%2Froundcube-shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froundcube-next%2Froundcube-shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froundcube-next%2Froundcube-shell/lists"}