-
Notifications
You must be signed in to change notification settings - Fork 32
Developer Quick Start
Prerequisites: Git, Go (1.1 of greater), Markdown, and Make
Recommended: Screen
You can develop on Ubuntu or Mac.
For local testing, you'll need to add the following line to /etc/hosts
:
127.0.0.1 local.scramble.io
Then, clone the repo:
git clone [email protected]:dcposch/scramble.git
Compile and run:
cd scramble
make
This creates the default Scramble server configuration at ~/.scramble/config.json
. You may have to edit it to specify your database password. You'll also need to paste in the Development Notary:
Run the server again.
make
Now you're running your own local server. Go to http://local.scramble.io:8888
to try it out.
You should be able to create an account. You can send email to yourself. You can even send email to an outside address if your ISP allows outbound SMTP on port 25 -- but of course you can't receive the replies, since local.scramble.io
is not a real domain.
Happy hacking!
- Go
- Standard formatting. Using
gofmt
before committing. - Write godoc.
- Write tests.
- Tabs, not spaces
- Standard formatting. Using
- Javascript
- No semicolons at the end of the line.
- Always use braces.
- Write comments before each function.
- We'll add jslint or something soon.
- For javascript we'll use spaces.
- Both languages
- No lines over 80 characters. Unix line endings.
- Use consisent prefixes and suffixes in variable names to avoid confusion.
For example,
plainSubject
,cipherSubject
,plainBody
,cipherBody
.
And to steal from the Zen of Python...
- Explicit is better than implicit
- Flat is better than nested
- Beautiful is better than ugly
You can make your first pull request in an hour or so!
- Fix a bug: https://github.com/dcposch/scramble/issues
- Write a unit test
- Pull requests that only add comments or documentation are still cool