Skip to content

customeros/frontera

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Frontera

A React + TypeScript application with middleware support.

contributions welcome license stars twitter slack

Prerequisites

  • Node.js (v20)
  • npm package manager
  • Git

Installation

  1. Clone the repository:
git clone git@github.com:customeros/frontera.git
cd frontera
  1. Install root dependencies:
npm install
  1. Install middleware dependencies:
cd middleware
npm install
  1. Set up environment variables:
cp .env.example .env

Edit the .env file and fill in the required environment variables:

  • CUSTOMER_OS_API_KEY: Your Customer OS API key
  • INTERNAL_API_PATH: Internal API endpoint
  • INTERNAL_API_KEY: Internal API authentication key
  • VITE_MIDDLEWARE_API_URL: URL for the middleware API
  • VITE_CLIENT_APP_URL: Client application URL
  • And other required variables as listed in .env.example

Running the Application

Development Mode

To run both the frontend and middleware simultaneously:

npm run dev

This command uses concurrently to run:

  • Vite development server (frontend)
  • Middleware server

Running Components Separately

To run the frontend only:

npm run vite

To run the middleware only:

npm run middleware

Production Build

npm run build

Available Scripts

  • npm run dev - Start development servers (frontend + middleware)
  • npm run build - Create production build
  • npm run lint - Run ESLint
  • npm run fix:lint - Fix linting issues
  • npm run preview - Preview production build
  • npm run test:e2e - Run end-to-end tests
  • npm run test:integration - Run integration tests

Code Generation

The project includes several code generation scripts:

  • npm run codegen:variants - Generate Tailwind variants
  • npm run codegen:gql - Generate GraphQL types

Testing

  • End-to-end tests: npm run test:e2e
  • Integration tests: npm run test:integration

Contributing

  1. Ensure you have set up the pre-commit hooks (automatically done during npm install)
  2. Make your changes
  3. Run linting and tests before committing
  4. Create a pull request

Contributors

A massive thank you goes out to all these wonderful people (emoji key):

Matt Brown
Matt Brown

📖
Vasi Coscotin
Vasi Coscotin

📖
alexopenline
alexopenline

💻
edifirut
edifirut

🚇 👀
Jonty Knox
Jonty Knox

👀
tsearle
tsearle

💻 📖
Alex Calinica
Alex Calinica

👀 ⚠️ 💻
SilviuOpenline
SilviuOpenline

👀 ⚠️ 💻

License

  • This repo is licensed under Apache 2.0, with the exception of the ee directory (if applicable).
  • Copyright © Openline Technologies Inc. 2022 - 2025

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 9