Skip to content

Semi-centralized version of Group Income for prototyping and research

License

Notifications You must be signed in to change notification settings

dotmacro/group-income-simple

 
 

Repository files navigation

Group Income (Simple Edition)

                                  Gitter Build Status Deps Dev Deps Donate

About

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.

Getting Started

  1. Install Node.js (version 12 or greater).
  2. Install Grunt: npm install -g grunt-cli
  3. Clone this repo (or a fork of it if you plan on contributing) and cd into it.
  4. Install dependencies: npm install
  5. Now try out the dev workflow.

Contributing

We use standard for the code style and Github project boards for efficient project management.

js-standard-style

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 or best to reach Level AAA in some areas of the application.

Level Double-A conformance, W3C WAI Web Content Accessibility Guidelines 2.0

Read first

Basic workflow

Group Income is an application based on Vue.js. Here's how you can get started the development:

Run all servers + watch files for changes

grunt dev

Build the app for distribution

grunt dist

Clean up files in dist/

grunt clean

Running tests

# 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 other 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.

For example:

npm run docker -- npm install
npm run docker -- grunt dev
npm run docker -- grunt test --skipbuild

For details, see: Docker.md

Troubleshooting

If you run into any errors during the setup, try the suggestions in Troubleshooting.md.

Donating

Donations to the okTurtles Foundation support the development of Group Income and related projects.

License

AGPLv3. See LICENSE for license details and CONTRIBUTING.md for contributing policy.

About

Semi-centralized version of Group Income for prototyping and research

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 49.6%
  • Vue 46.2%
  • CSS 3.8%
  • Other 0.4%