Group Income is a fair income sharing mechanism that allows groups to provide their members a minimum income.
This semi-centralized "Simple Edition" of Group Income is our way to rapidly prototype, develop, and research the concept with real groups.
- Install Node.js (version 12 or greater).
- Install Grunt:
npm install -g grunt-cli
- Clone this repo (or a fork of it if you plan on contributing) and
- Install dependencies:
- Now try out the dev workflow.
👩🎨Check out how Group Income will feel like by taking a look at the design files on Figma
We are continually improving the user experience for everyone, and applying the relevant accessibility standards. We will be conformant with WCAG 2.0 Level AA and trying our best to reach Level AAA in some areas of the application.
📖CONTRIBUTING.md (required reading to send a PR!) 📖Getting Started — Modern frontend concepts & project overview 📖Style Guide — Our development guidelines 📖Information Flow - walkthrough of the logical layer
Group Income is an application based on Vue.js. Here's how you can get started with development:
Run all servers + watch files for changes
- If all went well you should be able to visit http://localhost:8000
Build the app for distribution
Clean up files in
# all tests grunt test # all tests while skipping build step grunt test --skipbuild # unit tests only grunt test:unit # unit tests while skipping build step grunt test:unit --skipbuild # show e2e tests (Cypress) live in a browser grunt test --browser # run e2e tests (Cypress) in "open" mode grunt test --browser=debug # Developing at the same time as writing E2E tests grunt dev # and in another terminal run Cypress in "open" mode npm run cy:open
Using Docker for extra security
You can run commands in a Docker container by using
npm run docker -- <cmd> instead.
npm run docker -- npm install npm run docker -- grunt dev npm run docker -- grunt test --skipbuild
For details, see:
Donations to the okTurtles Foundation support the development of Group Income and related projects.