A modern, bilingual website for Triakis - an investment firm specializing in acquiring, managing, and developing profitable French SMBs through technological innovation.
Triakis is an investment company focused on small to medium businesses (SMBs) with annual revenues ranging from €1M to €5M. The company combines managerial expertise, technological innovation, and strategic vision to optimize SME performance while preserving their unique characteristics.
- Acquisition: Targeted identification using AI models and market analysis
- Management: On-site support with process optimization and digital tools
- Development: Sustainable growth strategies and value creation
- Node.js: 22.x
- pnpm: 9.x
- Clone the repository:
git clone <repository-url>
cd website
- Install dependencies:
pnpm install
- Start the development server:
pnpm dev
- Open http://localhost:3000 in your browser.
pnpm dev
- Start development server with Turbopackpnpm build
- Build production applicationpnpm start
- Start production serverpnpm lint
- Run ESLintpnpm lint:fix
- Fix ESLint issues automaticallypnpm ts
- Run TypeScript compiler check
The website supports two languages:
- English (
en
) - Default locale - French (
fr
) - Secondary locale
Language detection is automatic based on browser preferences, with manual switching available.
The project uses a custom design system built with:
- Tailwind CSS 4 for utility-first styling
- Custom color palette optimized for the investment sector
- Responsive typography with fluid scaling
- Consistent spacing and layout patterns
- TypeScript-first: All code written in TypeScript
- Functional components: React functional components with hooks
- Named exports: Prefer named exports over default exports
- Early returns: Use early returns for better readability
// Component structure example
export const ComponentName = () => {
// Hooks
const intl = useTranslations('Namespace');
// Early returns
if (condition) return null;
// Render
return (
<div className="component-styles">
{/* Component content */}
</div>
);
};
- Components: PascalCase (
HomeHero
) - Files: kebab-case (
home-hero.tsx
) - Variables/Functions: camelCase (
handleClick
) - Constants: UPPER_SNAKE_CASE (
API_URL
)
The project is optimized for deployment on Vercel:
- Static optimization: Pages are statically generated where possible
- Image optimization: Automatic image optimization with AVIF/WebP
- Bundle analysis: Package imports are optimized
- Performance monitoring: Vercel Analytics included
This project is licensed under the MIT License.
Built with ❤️ using modern web technologies