Skip to content

Code Heroes transforms professional work activities into rewarding experiences, starting with Git integrations (GitHub, BitBucket, Azure). A gamification platform designed to measure, recognize and celebrate professional growth across teams and disciplines. 🏆

License

Notifications You must be signed in to change notification settings

dutchhackers/codeheroes

Repository files navigation

Codeheroes

A monorepo project built with Nx workspace architecture.

Project Structure

Applications

Libraries

Shared Libraries (Cross-platform)

Libraries that can be used in both server and client applications

Server Libraries (Backend Only)

Legacy Libraries (Deprecated)

The following libraries are deprecated and will be removed in future versions:

Note: Database seeds library is maintained for development purposes:

Prerequisites

  • Node.js
  • Firebase CLI: npm install -g firebase-tools
  • NX CLI: npm install -g nx

Getting Started

  1. Install dependencies:

    npm install
  2. Configure Firebase project:

    • Create a .env file in the root directory with the following variables:
      FIREBASE_PROJECT_ID=your-firebase-project-id
      FIREBASE_API_KEY=your-firebase-api-key
      FIREBASE_AUTH_DOMAIN=your-project.firebaseapp.com
      FIREBASE_STORAGE_BUCKET=your-project.appspot.com
      FIREBASE_MESSAGING_SENDER_ID=your-sender-id
      FIREBASE_APP_ID=your-app-id
    • These values can be found in your Firebase Console under Project Settings > General
    • Run the setup script to generate environment files:
      npm run setup
      This will:
    • Generate .firebaserc file with your project ID
    • Create environment files for the web application:
      • apps/web/src/environments/environment.local.ts (development)
      • apps/web/src/environments/environment.prod.ts (production)
  3. Start development environment:

    • To start the Firebase emulator suite with the firebase-app:
      nx serve firebase-app
      This will:
    • Start the Firebase emulators (Functions, Firestore, Auth, etc.)
    • Watch for code changes and rebuild automatically
    • Import/export emulator data from .emulators directory
  4. Access development environment:

Contributing

  1. Create a feature branch
  2. Make your changes
  3. Run tests: nx affected:test
  4. Run lint: nx affected:lint
  5. Submit a pull request

License

This project is licensed under the ISC License - see the LICENSE file for details.

About

Code Heroes transforms professional work activities into rewarding experiences, starting with Git integrations (GitHub, BitBucket, Azure). A gamification platform designed to measure, recognize and celebrate professional growth across teams and disciplines. 🏆

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •