Skip to content

JoeHancock1995/AllianceOne

Repository files navigation

AllianceOne

AllianceOne is a monorepo-based web platform for an industrial engineering and services company operating in the oil, gas, marine, and subsea sectors.

The project is designed to mirror the visual and structural aesthetic of the AllianceOne corporate brochure, while providing a modern, scalable web architecture for future expansion.


Project Goals

  • Present AllianceOne’s services, capabilities, and contact information
  • Match the brochure’s industrial, high-contrast aesthetic
  • Maintain clean separation between frontend, backend, and shared code
  • Provide a scalable foundation for future features (catalog, admin, portal)

Tech Stack

Frontend (apps/web)

  • Next.js (App Router)
  • React
  • Tailwind CSS v4 (CSS-first, brochure-aligned design)
  • TypeScript

Backend (apps/api)

  • NestJS
  • TypeScript
  • REST API

Monorepo Tooling

  • pnpm workspaces
  • Node.js >= 18
  • Optional Docker (for future database use)

Repository Structure

allianceone-monorepo/
├─ apps/
│  ├─ web/          # Next.js frontend
│  └─ api/          # NestJS backend
├─ packages/
│  └─ shared/       # Shared types & schemas
├─ infra/           # Infrastructure (optional / future)
├─ pnpm-workspace.yaml
├─ package.json
└─ README.md

Design System

The frontend design is intentionally minimal and industrial, derived directly from the AllianceOne brochure:

  • High contrast (white background + orange accents)
  • Strong, uppercase headings
  • Left-aligned layouts
  • No rounded cards or decorative UI
  • Orange used only for emphasis and structure

Design tokens are defined using Tailwind v4 @theme variables in:

apps/web/src/styles/globals.css

Running the App Locally

Prerequisites

  • Node.js >= 18
  • pnpm >= 9

Install pnpm if needed:

npm install -g pnpm

Install dependencies

From the repo root:

pnpm install

Run the app

pnpm dev

This starts:


Run apps individually

pnpm --dir apps/web dev
pnpm --dir apps/api dev

Tailwind CSS Notes

This project uses Tailwind CSS v4 in CSS-first mode.

  • Design tokens defined via @theme
  • PostCSS plugin: @tailwindcss/postcss
  • No JS config required unless extending defaults

Common Scripts

pnpm dev
pnpm build
pnpm lint
pnpm typecheck

Brochure Integration

  • Brochure PDF is hosted in apps/web/public/brochures/
  • Site layout mirrors brochure sections
  • Typography and spacing match presentation slides

Future Roadmap

  • Service detail pages
  • Parts / catalog browsing
  • Contact form API integration
  • Admin or customer portal
  • CMS-driven content
  • Authentication & database integration

Development Principles

  • Frontend handles presentation only
  • Backend owns validation and logic
  • Shared code lives in packages/shared
  • Design decisions are centralized
  • Brochure aesthetic drives UI decisions

License

Internal project for AllianceOne. All rights reserved.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors