๐Ÿ“ฆ EqualifyEverything / equalify-hub

Node Lambda API w/ Hono

โ˜… 1 stars โ‘‚ 0 forks ๐Ÿ‘ 1 watching
๐Ÿ“ฅ Clone https://github.com/EqualifyEverything/equalify-hub.git
HTTPS git clone https://github.com/EqualifyEverything/equalify-hub.git
SSH git clone git@github.com:EqualifyEverything/equalify-hub.git
CLI gh repo clone EqualifyEverything/equalify-hub
Christopher Aitken Christopher Aitken Add product-specific signup flow for Reflow w/ landing page 71d16b2 2 days ago ๐Ÿ“ History
๐Ÿ“‚ 71d16b2b5d24313e8cf92c3255330a44bd609077 View all commits โ†’
๐Ÿ“ components
๐Ÿ“ dev
๐Ÿ“ pages
๐Ÿ“ routes
๐Ÿ“ styles
๐Ÿ“ types
๐Ÿ“ utils
๐Ÿ“„ .env.example
๐Ÿ“„ .gitignore
๐Ÿ“„ app.tsx
๐Ÿ“„ dev.tsx
๐Ÿ“„ index.ts
๐Ÿ“„ package.json
๐Ÿ“„ README.md
๐Ÿ“„ tsconfig.json
๐Ÿ“„ yarn.lock
๐Ÿ“„ README.md

Equalify Hub

The central hub for the Equalify project โ€“ organizing documentation, open-source repositories, contribution guides, KPI reports, and support resources in one accessible place.

Live at: https://equalify.uic.edu


Table of Contents


What is Equalify Hub?

Equalify Hub serves multiple audiences:

For the Transition Team

  • Support documentation โ€“ Centralized place for Equalify support (not just bugs)
  • KPI dashboards โ€“ Track development progress and key metrics
  • Issue tracking โ€“ Aggregate view of issues across all repositories

For End Users

  • User documentation โ€“ Learn how to use Equalify effectively
  • Support resources โ€“ Find help and guidance

For Contributors

  • Technical documentation โ€“ API docs, code structure, architecture diagrams
  • Contribution guides โ€“ How to contribute to Equalify projects
  • Repository overview โ€“ Browse all EqualifyEverything repos

Deploy Your Own Instance

Equalify Hub is designed to be deployed by other institutions running their own Equalify instance. Follow these steps to deploy your own Hub.

Prerequisites

  • Node.js 18+ and Yarn
  • AWS account with Lambda and DynamoDB access
  • A running Equalify application instance

Environment Variables

The Hub uses environment variables for configuration. Copy .env.example to .env for local development, or set these as Lambda environment variables for production:

VariableRequiredDefaultDescription
EQUALIFY_APP_URLYeshttps://app.equalify.uic.eduThe URL of your Equalify application. "Sign into Equalify" buttons will link here.
SITE_NAMENoEqualify HubThe display name for your Hub instance.
GITHUB_ORGNoEqualifyEverythingThe GitHub organization to display repos/issues from.
FAVICON_URLNo{EQUALIFY_APP_URL}/favicon.icoCustom favicon URL.
ORG_LOGO_URLNoGitHub org avatarCustom organization logo URL.

Local Development

  • Clone the repository
git clone https://github.com/EqualifyEverything/equalify-hub.git
   cd equalify-hub

  • Install dependencies
yarn install

  • Configure environment
cp .env.example .env
   # Edit .env with your configuration

  • Start development server
yarn start
This builds Tailwind CSS and starts the local server with hot reloading.

  • Build for production
yarn build:css  # Build CSS only
   yarn build      # Full build and deploy to Lambda

AWS Lambda Deployment

1. Set up AWS resources

You'll need:

  • Lambda function โ€“ Node.js 18+ runtime
  • DynamoDB table โ€“ For feature requests and user data
  • API Gateway โ€“ HTTP API or Function URL for web access

2. Configure Lambda environment variables

In the AWS Lambda console, add these environment variables:

EQUALIFY_APP_URL=https://your-equalify-instance.com
SITE_NAME=Your Organization Hub
GITHUB_ORG=YourGitHubOrg

3. Configure AWS CLI profile

Update package.json to use your AWS profile:

{
  "scripts": {
    "sso": "aws sso login --profile your-profile",
    "build": "... --profile your-profile ..."
  }
}

4. Deploy

# Authenticate with AWS
yarn sso

# Build and deploy
yarn build

This will:

  • Build Tailwind CSS
  • Bundle the application with esbuild
  • Create a Lambda deployment package
  • Upload to your Lambda function

Configuration

Customizing the Sign-In Link

The "Sign into Equalify" button appears throughout the Hub. To point it to your Equalify instance:

# In .env (local) or Lambda environment variables (production)
EQUALIFY_APP_URL=https://your-equalify-instance.com

Customizing the Site Name

The site name appears in the header, footer, and page titles:

SITE_NAME=Acme Accessibility Hub

Connecting to Your GitHub Organization

To display repositories and issues from your organization:

GITHUB_ORG=YourOrgName


Tech Stack

  • TypeScript โ€“ Type-safe development
  • Hono โ€“ Lightweight web framework
  • AWS Lambda โ€“ Serverless deployment
  • DynamoDB โ€“ NoSQL database for feature requests
  • Tailwind CSS โ€“ Utility-first styling
  • esbuild โ€“ Fast bundling

Contributing Documentation

Helen's team and other contributors can easily add documentation:

  • Sign in with GitHub โ€“ Must be part of the EqualifyEverything organization
  • Create/edit Markdown files โ€“ Standard markdown format
  • Submit via GitHub โ€“ Basic git operations only

Project Ownership

Owned by Christopher Aitken as part of UIC's Digital Accessibility initiative.

Key Contacts:

  • Christopher Aitken โ€“ Technical lead, Equalify Hub
  • Jemma Ku โ€“ Oversight & integration with internal accessibility projects
  • Blake & Trey โ€“ Equalify leadership

License

MIT License โ€“ see LICENSE for details.