2019-09-09 19:34:55 +02:00
# [![Firefox Send](./assets/icon.svg)](https://send.firefox.com/) Firefox Send
2017-06-26 21:34:31 +02:00
2017-07-20 17:08:13 +02:00
[![CircleCI ](https://img.shields.io/circleci/project/github/mozilla/send.svg )](https://circleci.com/gh/mozilla/send)
2017-06-26 21:34:31 +02:00
2018-03-06 01:29:09 +01:00
**Docs:** [FAQ ](docs/faq.md ), [Encryption ](docs/encryption.md ), [Build ](docs/build.md ), [Docker ](docs/docker.md ), [Metrics ](docs/metrics.md ), [More ](docs/ )
2017-07-14 22:20:28 +02:00
2017-08-20 14:05:48 +02:00
---
2017-10-06 21:03:14 +02:00
## Table of Contents
* [What it does ](#what-it-does )
* [Requirements ](#requirements )
* [Development ](#development )
* [Commands ](#commands )
* [Configuration ](#configuration )
* [Localization ](#localization )
* [Contributing ](#contributing )
* [Testing ](#testing )
2019-07-12 16:07:24 +02:00
* [Deployment ](#deployment )
2018-09-19 16:19:18 +02:00
* [Android ](#android )
2017-10-06 21:03:14 +02:00
* [License ](#license )
---
2017-08-20 14:05:48 +02:00
2017-06-26 21:34:31 +02:00
## What it does
2017-07-19 18:23:42 +02:00
A file sharing experiment which allows you to send encrypted files to other users.
2017-06-26 21:34:31 +02:00
2017-08-20 14:05:48 +02:00
---
2017-06-26 21:34:31 +02:00
## Requirements
2019-09-19 19:37:05 +02:00
- [Node.js 10.x ](https://nodejs.org/ )
2017-08-25 22:58:51 +02:00
- [Redis server ](https://redis.io/ ) (optional for development)
- [AWS S3 ](https://aws.amazon.com/s3/ ) or compatible service. (optional)
2017-06-26 21:34:31 +02:00
2017-08-25 22:58:51 +02:00
---
## Development
To start an ephemeral development server run:
2017-06-26 21:34:31 +02:00
```sh
2017-08-25 22:58:51 +02:00
npm install
npm start
2017-06-26 21:34:31 +02:00
```
2017-08-26 00:41:53 +02:00
Then browse to http://localhost:8080
2017-08-20 14:05:48 +02:00
---
2017-08-25 22:58:51 +02:00
## Commands
2017-06-26 21:34:31 +02:00
| Command | Description |
|------------------|-------------|
| `npm run format` | Formats the frontend and server code using **prettier** .
| `npm run lint` | Lints the CSS and JavaScript code.
| `npm test` | Runs the suite of mocha tests.
2017-08-24 23:54:02 +02:00
| `npm start` | Runs the server in development configuration.
| `npm run build` | Builds the production assets.
| `npm run prod` | Runs the server in production configuration.
2017-06-26 21:34:31 +02:00
2017-08-20 14:05:48 +02:00
---
2017-08-25 22:58:51 +02:00
## Configuration
2017-08-27 22:45:38 +02:00
The server is configured with environment variables. See [server/config.js ](server/config.js ) for all options and [docs/docker.md ](docs/docker.md ) for examples.
2017-08-25 22:58:51 +02:00
---
2017-06-26 21:34:31 +02:00
## Localization
2017-12-21 16:35:44 +01:00
Firefox Send localization is managed via [Pontoon ](https://pontoon.mozilla.org/projects/test-pilot-firefox-send/ ), not direct pull requests to the repository. If you want to fix a typo, add a new language, or simply know more about localization, please get in touch with the [existing localization team ](https://pontoon.mozilla.org/teams/ ) for your language or Mozilla’ s [l10n-drivers ](https://wiki.mozilla.org/L10n:Mozilla_Team#Mozilla_Corporation ) for guidance.
2017-06-26 21:34:31 +02:00
2018-03-06 01:29:09 +01:00
see also [docs/localization.md ](docs/localization.md )
2017-08-20 14:05:48 +02:00
---
2017-06-26 21:34:31 +02:00
## Contributing
2017-12-31 12:09:57 +01:00
Pull requests are always welcome! Feel free to check out the list of ["good first issues" ](https://github.com/mozilla/send/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22 ).
2017-06-26 21:34:31 +02:00
2017-08-20 14:05:48 +02:00
---
2017-07-05 18:47:22 +02:00
## Testing
2017-06-26 21:34:31 +02:00
2017-07-05 18:47:22 +02:00
| ENVIRONMENT | URL
|-------------|-----
2017-07-06 21:12:01 +02:00
| Production | < https: / / send . firefox . com / >
2019-03-08 02:03:50 +01:00
| Stage | < https: / / stage . send . nonprod . cloudops . mozgcp . net / >
| Development | < https: / / send2 . dev . lcip . org / >
2017-06-26 21:34:31 +02:00
2017-08-20 14:05:48 +02:00
---
2019-07-12 16:07:24 +02:00
## Deployment
see also [docs/deployment.md ](docs/deployment.md )
---
2018-09-19 16:19:18 +02:00
## Android
The android implementation is contained in the `android` directory, and can be viewed locally for easy testing and editing by running `ANDROID=1 npm start` and then visiting < http: // localhost:8080 > . CSS and image files are located in the `android/app/src/main/assets` directory.
---
2017-06-26 21:34:31 +02:00
## License
[Mozilla Public License Version 2.0 ](LICENSE )
2017-08-20 14:05:48 +02:00
---