Official website for Quantium Rock - an international technology company specializing in cloud solutions (AWS, GCP, Azure), blockchain development (Bitcoin, Solana), AI integration, and mobile applications.
- Nuxt 4 - Latest Nuxt framework with improved performance
- TypeScript - Full type safety across the application
- Nuxt UI - Beautiful, responsive UI components
- @alexcolls/nuxt-ux - Custom UX component library (v0.6.0)
- Multi-language - i18n support (English, Spanish, French)
- Dark Mode - Automatic theme switching with persistence
- SEO Optimized - Meta tags, Open Graph, structured data
- Responsive Design - Mobile-first approach
- Tailwind CSS - Custom theme with Quantium Rock branding
- Prerequisites
- Installation
- Development
- Project Structure
- Environment Variables
- Scripts
- Deployment
- Contributing
- License
Before you begin, ensure you have the following installed:
- Node.js v20.x or higher
- npm v10.x or higher (comes with Node.js)
- Git for version control
- Clone the repository
git clone git@github.com:quantium-rock/qrk-web.git
cd qrk-web- Install dependencies
npm install --legacy-peer-depsNote: The
--legacy-peer-depsflag is required due to peer dependency conflicts between @nuxt/ui v4 and @alexcolls/nuxt-ux (which expects v2).
- Set up environment variables
cp .env.sample .envEdit .env and configure your environment-specific variables.
Start the development server on http://localhost:3000:
npm run devThe application will be available at:
- Local: http://localhost:3000
- Network: http://[your-ip]:3000
- Hot Module Replacement (HMR) - Instant updates without full page reload
- Nuxt DevTools - Built-in development tools (press Shift + Alt + D)
- TypeScript Support - Full IntelliSense and type checking
- ESLint - Code linting and formatting
qrk-web/
├── app/
│ ├── layouts/
│ │ └── default.vue # Default layout with header/footer
│ ├── pages/
│ │ ├── index.vue # Home page
│ │ ├── services.vue # Services page
│ │ ├── technology.vue # Technology stack page
│ │ ├── portfolio.vue # Portfolio/case studies
│ │ ├── team.vue # Team page
│ │ ├── contact.vue # Contact form
│ │ └── blog/
│ │ └── index.vue # Blog listing
│ ├── components/ # Custom components
│ └── app.vue # Root component
├── branding/ # Brand assets (logos, etc.)
├── i18n/
│ └── locales/
│ ├── en.json # English translations
│ ├── es.json # Spanish translations
│ └── fr.json # French translations
├── public/ # Static assets
│ ├── branding/ # Public brand assets
│ ├── favicon.ico
│ └── robots.txt
├── .env.sample # Environment variables template
├── app.config.ts # App configuration (branding, theme)
├── nuxt.config.ts # Nuxt configuration
├── tailwind.config.ts # Tailwind CSS configuration
├── tsconfig.json # TypeScript configuration
├── package.json # Dependencies and scripts
├── CHANGELOG.md # Version history
└── README.md # This file
Create a .env file in the root directory. See .env.sample for available variables:
NUXT_PUBLIC_SITE_URL=https://quantium-rock.com
NUXT_PUBLIC_SITE_NAME=Quantium Rock
NUXT_PUBLIC_CONTACT_EMAIL=contact@quantium-rock.com# Social Media
NUXT_PUBLIC_TWITTER_URL=https://twitter.com/quantiumrock
NUXT_PUBLIC_LINKEDIN_URL=https://linkedin.com/company/quantium-rock
NUXT_PUBLIC_GITHUB_URL=https://github.com/quantium-rock
# Feature Flags
NUXT_PUBLIC_ENABLE_NEWSLETTER=false
NUXT_PUBLIC_ENABLE_AI_CHAT=false
NUXT_PUBLIC_ENABLE_COOKIE_CONSENT=true
# Analytics (Future)
# NUXT_PUBLIC_GOOGLE_ANALYTICS_ID=
# NUXT_PUBLIC_GOOGLE_TAG_MANAGER_ID=# Development
npm run dev # Start development server
# Production
npm run build # Build for production
npm run preview # Preview production build locally
npm run generate # Generate static site
# Maintenance
npm run postinstall # Prepare Nuxt (runs automatically)Brand assets are located in branding/ and configured in app.config.ts:
export default defineAppConfig({
nuxtUx: {
branding: {
logoLight: '/branding/logo-black.png',
logoDark: '/branding/logo-white.jpg',
companyName: 'Quantium Rock',
tagline: 'Technology & Cloud Solutions'
}
}
})Quantium Rock color palette is configured in tailwind.config.ts:
colors: {
qr: {
darkest: '#3E3E3E',
darker: '#585858',
dark: '#706F70',
DEFAULT: '#9B9B9B',
light: '#B1B0B1',
lighter: '#C5C5C5'
}
}- Create translation file in
i18n/locales/(e.g.,de.json) - Add locale configuration in
nuxt.config.ts:
i18n: {
locales: [
// ... existing locales
{ code: 'de', iso: 'de-DE', name: 'Deutsch', file: 'de.json' }
]
}npm run buildThis creates a .output directory with your production-ready application.
For static hosting (Netlify, Vercel, GitHub Pages):
npm run generateThis creates a dist directory with static HTML files.
- Connect your GitHub repository
- Configure build settings:
- Build command:
npm run build - Publish directory:
.output/public
- Build command:
- Add environment variables in platform settings
- Deploy!
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install --legacy-peer-deps
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["node", ".output/server/index.mjs"]See CONTRIBUTING.md for contribution guidelines.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Website: https://quantium-rock.com
- GitHub: https://github.com/quantium-rock
- Company Docs: ../quantium-rock/README.md
For support, email contact@quantium-rock.com
Made with 💚 by the Quantium Rock Team