Skip to content

EvilBit-Labs/hash_hive

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HashHive

HashHive is a distributed password cracking platform that orchestrates hashcat across multiple agents in a LAN environment. Built with the MERN stack (MongoDB, Express, React, Node.js) and TypeScript throughout.

Project Structure

hashhive/
├── backend/          # Node.js + Express API server
├── frontend/         # Next.js + React web UI
├── shared/           # Shared TypeScript types
├── openapi/          # API specifications
└── docs/             # Documentation

Prerequisites

  • Node.js 20+ and npm 10+
  • Docker and Docker Compose
  • Git
  • just (optional, for convenient command running)

Quick Start

1. Install Dependencies

npm install

2. Start Infrastructure Services

docker compose up -d

This starts:

  • MongoDB on port 27017
  • Redis on port 6379
  • MinIO on ports 9000 (API) and 9001 (Console)

3. Configure Environment

# Backend
cp backend/.env.example backend/.env

# Frontend
cp frontend/.env.example frontend/.env

4. Start Development Servers

# Start both backend and frontend
npm run dev

# Or start individually
npm run dev -w backend
npm run dev -w frontend

Development

Available Scripts

Use just for common commands (or run npm scripts directly):

# Development
just dev                 # Start all services
just dev-backend         # Start backend only
just dev-frontend        # Start frontend only

# Building
just build               # Build all packages
just build-backend       # Build backend only
just build-frontend      # Build frontend only

# Testing
just test                # Run all tests
just test-backend        # Backend tests
just test-frontend       # Frontend tests
just test-integration    # Integration tests
just test-e2e            # E2E tests

# Code Quality
just lint                # Lint all packages
just format              # Format code with Prettier
just type-check          # TypeScript type checking

# Docker
just docker-up           # Start services
just docker-down         # Stop services
just docker-logs         # View logs

# Or use npm scripts directly
npm run dev              # Start all services
npm run build            # Build all packages
npm run test             # Run all tests

Project Configuration

  • TypeScript: Strict mode enabled with shared base config
  • ESLint: Consistent rules across all packages
  • Prettier: Automated code formatting (TypeScript, JavaScript, JSON, Markdown, YAML)
  • Jest: Unit and integration testing
  • Playwright: E2E testing for frontend

Architecture

HashHive follows a monorepo structure with:

  • Backend: Express API with Mongoose ODM, BullMQ for queues, Pino for logging
  • Frontend: Next.js with App Router, shadcn/ui components, React Query for data fetching
  • Shared: Common TypeScript types and Zod schemas

Infrastructure Services

MongoDB

  • Primary database for all application data
  • Mongoose ODM with TypeScript support
  • Health checks and automatic reconnection

Redis

  • BullMQ job queues for task distribution
  • Session storage
  • Caching layer

MinIO

  • S3-compatible object storage
  • Stores hash lists, wordlists, and other binary artifacts
  • Development alternative to AWS S3

Testing

# Run all tests
npm test

# Backend unit tests
npm run test -w backend

# Backend integration tests (requires Docker)
npm run test:integration -w backend

# Frontend component tests
npm run test -w frontend

# E2E tests
npm run test:e2e -w frontend

Documentation

See the docs/ directory for:

  • MERN migration proposal
  • Implementation plans
  • Architecture decisions
  • API specifications

License

This is a test/development project based on the CipherSwarm architecture, and is relicensed under the Apache-2.0 license.

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages