Encrypted accounting for freelancers
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.circleci
apps
config
.gitignore
.markdownlintrc
.travis.yml
CODE_OF_CONDUCT.md
Gruntfile.js
LICENSE
Makefile
README.md
appveyor.yml
mix.exs
mix.lock
package-lock.json
package.json
yarn.lock

README.md

Sealas - Zero Knowledge Online Accounting Software For Freelancers

Follow the journey of our development of a secure client-side encrypted accounting software.

Learn with us the ins and outs of working on a project with the focus on security and usability. We write about the challenges, hows and whys behind our technical, design and business decisions.

You can read our articles here: https://sealas.at/blog

Build Status

We build our software on three different CI systems, and then compare the result:

Travis CI: Travis CI Build Status CircleCI: CircleCI Build Status AppVeyor: AppVyor Build status

Elixir status

Deps Status Inline docs

Structure

Sealas is built as an umbrella app (explained in more detail here: https://sealas.at/blog/2017-08/setting-up-a-phoenix-umbrella-app/)

apps/sealas_sso

The SSO or authentication app handles all interaction with the user database. Registration, authorization and access recovery are done here.

apps/sealas_api

All interaction with the permanent datastore goes through this part, as well as some access to authentication mechanisms.

apps/sealas_web

The main part of the client and the one that relies the least on the backend, as it's mostly static content. All of the javascript base lies here, along with the generators and CSS files.

Development

To start dev server:

  • Install dependencies with mix deps.get
  • Create and migrate your database with mix ecto.create && mix ecto.migrate
  • Start Phoenix endpoint with mix phx.server

Now you can visit localhost:4000 from your browser.

Ready to run in production? Please check our deployment guides.