An open API service indexing awesome lists of open source software.

https://github.com/michaeljwright/agile-lead-platform

An Agile Platform for Product Engineering. Create your team, set sprint goals, track waste and play planning poker to help estimate your stories
https://github.com/michaeljwright/agile-lead-platform

agile agile-development agile-methodologies firebase firebase-auth firestore free mit-license nextjs open-source planning-poker radix-ui react scrum-poker self-hosted sprint-goals sprint-planner sprint-planning stand-up waste-snake

Last synced: 6 months ago
JSON representation

An Agile Platform for Product Engineering. Create your team, set sprint goals, track waste and play planning poker to help estimate your stories

Awesome Lists containing this project

README

          

## Requirements

- [Node.js 18v >=](https://nodejs.org/en/) _always use NVM locally_
- Firebase (Auth, Firestore, Analytics)

## Clone the repo

```bash
$ git clone https://github.com/michaeljwright/agile-lead-platform.git

$ cd agile-lead-platform
```

## Setup

1. Copy `.env-example` and rename to `.env-local`
2. Go to https://firebase.google.com and create a project for a webapp. Then add the details to the `.env-local` file.
3. Create a Firebase firestore db and set rules to those within `firestore-rules.txt`
4. Remember to change the `SITE_URL` in `.env-local` if you are using a different server or port.
5. If you're deploying to a live environment, its worth setting `ANONYMOUS_SIGNIN_ENABLED` in your env to blank (not false).

## Install & Run

```bash
$ npm install
# or
$ yarn

# Run in Development
$ npm run dev
# or
$ yarn dev

# Run in Production
$ npm run build
$ npm run start
#or
$ yarn build
$ yarn start
```

## Setup & Run Tests

A lot of work needs doing on the test coverage. We are working on it!

### Jest Unit Tests

To run the unit tests, simply run `npm test`

### Cypress E2E Tests

To run the E2E tests, you need to jump through a few hoops due to Firebase auth etc.

1. Generate and download a service account as described in https://firebase.google.com/docs/admin/setup#initialize_the_sdk_in_non-google_environments
2. Create the file `./serviceAccount.json` in your project root and add the contents of the downloaded json file from above.
3. Create the file `./cypress.env.json` in your project root and add the following below.

```json
{
"TEST_UID": "",
"FIREBASE_PROJECT_ID": "",
"FIREBASE_API_KEY": ""
}
```

4. Run the tests with cypress using `npx cypress open` and then selecting the specific tests you want to run.