Contributing

November 5, 2025 ยท View on GitHub

Prerequisites

Installation

  1. Clone the repository:
    git clone https://github.com/Termix-SSH/Termix
    
  2. Install the dependencies:
    npm install
    

Running the development server

Run the following commands:

npm run dev
npm run dev:backend

This will start the backend and the frontend Vite server. You can access Termix by going to http://localhost:5174/.

Contributing

  1. Fork the repository: Click the "Fork" button at the top right of the repository page.
  2. Create a new branch:
    git checkout -b feature/my-new-feature
    
  3. Make your changes: Implement your feature, fix, or improvement.
  4. Commit your changes:
    git commit -m "Feature request my new feature"
    
  5. Push to your fork:
    git push origin feature/my-feature-request
    
  6. Open a pull request: Go to the original repository and create a PR with a clear description.

Guidelines

  • Follow the existing code style. Use Tailwind CSS with shadcn components.
  • Use the below color scheme with the respective CSS variable placed in the className of a div/component.
  • Place all API routes in the main-axios.ts file. Updating the openapi.json is unneeded.
  • Include meaningful commit messages.
  • Link related issues when applicable.
  • MobileApp.tsx renders when the users screen width is less than 768px, otherwise it loads the usual DesktopApp.tsx.

Color Scheme

Background Colors

CSS VariableColor ValueUsageDescription
--color-dark-bg#18181bMain dark backgroundPrimary dark background color
--color-dark-bg-darker#0e0e10Darker backgroundsDarker variant for panels and containers
--color-dark-bg-darkest#09090bDarkest backgroundsDarkest background (terminal)
--color-dark-bg-light#141416Light dark backgroundsLighter variant of dark background
--color-dark-bg-very-light#101014Very light dark backgroundsVery light variant of dark background
--color-dark-bg-panel#1b1b1ePanel backgroundsBackground for panels and cards
--color-dark-bg-panel-hover#232327Panel hover statesBackground for panels on hover

Element-Specific Backgrounds

CSS VariableColor ValueUsageDescription
--color-dark-bg-input#222225Input fieldsBackground for input fields and form elements
--color-dark-bg-button#23232aButton backgroundsBackground for buttons and clickable elements
--color-dark-bg-active#1d1d1fActive statesBackground for active/selected elements
--color-dark-bg-header#131316Header backgroundsBackground for headers and navigation bars

Border Colors

CSS VariableColor ValueUsageDescription
--color-dark-border#303032Default bordersStandard border color
--color-dark-border-active#2d2d30Active bordersBorder color for active elements
--color-dark-border-hover#434345Hover bordersBorder color on hover states
--color-dark-border-light#5a5a5dLight bordersLighter border color for subtle elements
--color-dark-border-medium#373739Medium bordersMedium weight border color
--color-dark-border-panel#222224Panel bordersBorder color for panels and cards

Interactive States

CSS VariableColor ValueUsageDescription
--color-dark-hover#2d2d30Hover statesBackground color for hover effects
--color-dark-active#2a2a2cActive statesBackground color for active elements
--color-dark-pressed#1a1a1cPressed statesBackground color for pressed/clicked elements
--color-dark-hover-alt#2a2a2dAlternative hoverAlternative hover state color

Support

If you need help or want to request a feature with Termix, visit the Issues page, log in, and press New Issue. Please be as detailed as possible in your issue, preferably written in English. You can also join the Discord server and visit the support channel, however, response times may be longer.