You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a collection of all components required to run Nylas Mail.
4
+
**Nylas Mail is an open-source mail client built on the modern web with [Electron](https://github.com/atom/electron), [React](https://facebook.github.io/react/), and [Flux](https://facebook.github.io/flux/).** It was designed to be easy to extend, and many third-party plugins are available that add functionality to the client.
5
+
6
+
**⚠️ Nylas Mail was initially released and open-sourced in early 2015 and was maintained by Nylas until Spring 2017.** While Nylas no longer supports Nylas Mail, you can download the latest release or build it from source. There are also **[several forks](#forks)** that are being actively developed and maintained.
1.`npm run lint-client`: Lint the source (ESLint + Coffeelint + LESSLint)
31
+
32
+
### Exploring the Source
33
+
34
+
This repository contains the full source code to the Nylas Mail client and it's backend services. It is divided into the following packages:
4
35
5
36
1.[**Isomorphic Core**](https://github.com/nylas/nylas-mail-all/tree/master/packages/isomorphic-core): Shared code across local client and cloud servers
6
37
1.[**Client App**](https://github.com/nylas/nylas-mail-all/tree/master/packages/client-app): The main Electron app for Nylas Mail
@@ -15,24 +46,98 @@ See `/packages` for the separate pieces. Each folder in `/packages` is
15
46
designed to be its own stand-alone repository. They are all bundled here
16
47
for the ease of source control management.
17
48
18
-
#Initial Setup for All Local & Cloud Services:
49
+
## Digging Deeper
19
50
20
-
## New Computer (Mac):
51
+
In early 2016, the Nylas Mail team wrote [extensive documentation](https://nylas.github.io/nylas-mail/) for the app that was intended for plugin developers. This documentation lives on GitHub Pages and offers a great overview of the app's architecture and important classes. Here are some good places to get started:
-[Blog: Nylas Mail & PGP](https://github.com/nylas/nylas-mail-all/raw/cleanup/blog-posts/pgp.pdf)
69
+
-[Blog: Calendar Events and RRULEs](https://github.com/nylas/nylas-mail-all/raw/cleanup/blog-posts/rrules.pdf)
70
+
71
+
## Running the Cloud
72
+
73
+
When you download and build Nylas Mail from source it runs without its cloud components. The concept of a "Nylas ID" / subscription has been removed, and plugins that require server-side processing are disabled by default. (Plugins like Snooze, Send Later, etc.)
74
+
75
+
In order to use these plugins and get the full Nylas Mail experience, you need to deploy the backend infrastructure located in the `cloud-*` packages. Deploying these services is challenging because they are implemented as microservices and designed to be run at enterprise scale with Redis, Postgres, etc. Because these backend services must access your email account, it is also important to use security best-practices (at the very least, SSL, encryption at rest, and a partitioned VPC). For more information about building and deploying this part of the stack, check out the [cloud-core README](https://github.com/nylas/nylas-mail-all/blob/master/packages/cloud-core/README.md).
76
+
77
+
## Themes
78
+
79
+
The Nylas Mail user interface is styled using CSS, which means it's easy to modify and extend. Nylas Mail comes stock with a few beautiful themes, and there are many more which have been built by community developers
-[Darkside](https://github.com/nylas/nylas-mail/tree/master/internal_packages/ui-darkside) (designed by [Jamie Wilson](https://github.com/jamiewilson))
86
+
-[Taiga](https://github.com/nylas/nylas-mail/tree/master/internal_packages/ui-taiga) (designed by [Noah Buscher](https://github.com/noahbuscher))
87
+
-[Ubuntu](https://github.com/nylas/nylas-mail/tree/master/internal_packages/ui-ubuntu) (designed by [Ahmed Elhanafy](https://github.com/ahmedlhanafy))
88
+
-[Less Is More](https://github.com/nylas/nylas-mail/tree/master/internal_packages/ui-less-is-more) (designed by [Alexander Adkins](https://github.com/P0WW0W))
2. In Nylas Mail, select `Developer > Install a Package Manually... `
107
+
3. Navigate to where you downloaded the theme and select the root folder. The theme is copied into the `~/.nylas-mail` folder for your convinence
108
+
5. Select `Change Theme...` from the top level menu, and you'll see the newly installed theme. That's it!
109
+
110
+
Want to dive in more? Try [creating your own theme](https://github.com/nylas/nylas-mail-theme-starter)!
111
+
112
+
## Plugins
113
+
114
+
Some plugins come pre-installed, and are a great starting points for creating your own:
115
+
116
+
-[Translate](https://github.com/nylas/nylas-mail/tree/master/internal_packages/composer-translate)—Works with 10 languages
117
+
-[Quick Replies](https://github.com/nylas/nylas-mail/tree/master/internal_packages/composer-templates)—Send emails faster with templates
118
+
-[Emoji Keyboard](https://github.com/nylas/nylas-mail/tree/master/internal_packages/composer-emoji)—Insert emoji by typing a colon (:) followed by the name of an emoji symbol
Note these are not tested or officially supported by Nylas, but we still think they are really cool! If you find bugs with them, please open GitHub issues on their individual project pages, not the Nylas Mail (N1) repo page. Thanks!
|[Unsubscribe](https://github.com/colinking/n1-unsubscribe)|[Squirt Speed Reader](https://github.com/HarleyKwyn/squirt-reader-N1-plugin/)|[Website Launcher](https://github.com/adriangrantdotorg/nylas-n1-background-webpage)—Opens a URL in separate window|
|[Mail in Chat (WIP)](https://github.com/yjchen/mail_in_chat)|[Evernote](https://github.com/grobgl/n1-evernote)|[Wunderlist](https://github.com/miguelrs/n1-wunderlist)|
When you install packages, they're moved to ~/.nylas-mail/packages, and Nylas Mail runs apm install on the command line to fetch dependencies listed in the package's package.json
137
+
138
+
# Forks
33
139
34
-
# Running Nylas Mail
140
+
There are several forks of Nylas Mail that you should check out!
35
141
36
-
1.`npm install` (Only on fresh install and new packages)
37
-
1.`npm run start-client`: Starts Electron app client
38
-
1.`npm run start-cloud`: Starts cloud API locally
142
+
-[Merra](github.com/bengotow/N1) - Significant rewrite by one of the original authors focused on performance and cloud plugins
143
+
-[Nylas Mail Lives](https://github.com/nylas-mail-lives/nylas-mail) - Community effort to fix bugs and improve the client!
"test-cloud": "cd packages/cloud-api && npm test && cd ../cloud-core && npm test && cd ../cloud-workers && npm test && cd ../isomorphic-core && npm test",
0 commit comments