Frontend for the foodsaving tool using AngularJS 1.5 (component-based style). Read more about our contribution guidelines.
The backend had quite some progress in the last months and is currently in a stable state. If you find a bug or miss something in the API, please file an issue in the backend repository.
We used the NG6-starter kit.
The foodsaving tool will be the first release of the yunity platform. The FSINT team within yunity provides additional resources to build up foodsaving. At a later point, more features could be added that support the yunity vision and mission, e.g. multi-sharing communities, item pooling, integrated decision making (syscon).
- user: sign-up with name and email address
- group/community: create a group, add yourself to a group, leave a group, set up name, description, address and position of a group
- store: create a store which belongs to a group, set up name, description, address and position of a store
- pick-ups: create a pick-up date which belongs to a store, set time and max. amount of ppl who can collect food, user can enter themselves for pick-up
- conversations: write messages to one or more people (present in the backend but is not a priority task for frontend)
We are keeping the features down to a minimum (check out that meeting's notes), in order to progressively build up a useful tool.
In future, we want our feature requests to come directly from foodsaving communities, to fulfill their needs and desires.
We don't have testing communities yet: we are in touch with existing foodsaving networks who have shown interest in testing the tool once it presents sufficient features for them.
We are using Transifex to provide the foodsaving tool in many languages. To help us with translation, please create an account and apply for foodsaving tool group.
After selecting your destination language and choosing the resource file, go ahead to start translating!
- nodejs and npm
- gulp
npm install -g gulp
- chrome (for testing)
To clone and install
git clone
cd foodsaving-frontend
npm install
To run the local dev server
npm run dev
To lint and run the tests
npm run lint
npm run test
If you want to use an eslint plugin for your editor, please keep in mind that you either have to install all eslint plugins listed in package.json globally or you run npm install
. Otherwise your eslint plugin may not work.
Per default, all requests to /api
are forwarded to the online backend fstool.yunity.org/api
.
To use a local backend, create a file .env
with content like
BACKEND=http://localhost:8080/
Configuration for the transifex CLI client is in .tx/config
. After instaling the client, you can use tx push
and tx pull
to synchronize the strings with the transifex server.
Join our open chatroom on matrix.org!