This repository contains the source code for the DNS IT Services marketing website. It is a modern, single-page application built with Next.js and TypeScript, designed to showcase the company's services, expertise, and client testimonials.
The website is composed of several key sections, each built as a distinct React component:
- Hero Section: A prominent introduction with the company's main value proposition.
- Services: A grid of cards detailing the core services offered: IT Services, Managed Print Services, Document Management, and Communications.
- Partners: A section displaying the logos of key clients and partners.
- Progress: Highlights the company's long history ("since 1996") with a side-by-side layout featuring a background video.
- Case Studies Slider: An interactive carousel powered by Swiper.js, showcasing customer testimonials and quotes.
- FAQ & Insights: A dual-purpose section featuring an accordion-style FAQ for common questions and a grid of recent news articles.
- Features: A grid highlighting key company statistics and accreditations, such as years in business and the number of expert team members.
- Contact & Footer: A comprehensive final section with a contact form, company address, opening hours, and sitemap links.
- Framework: Next.js 15 (App Router)
- UI Library: React 19
- Language: TypeScript
- Styling: Sass Modules & Tailwind CSS
- Interactivity: Swiper.js for sliders
- Linting & Formatting: ESLint & Prettier
- Package Manager: pnpm
The project follows a standard Next.js App Router structure, with a focus on component-based architecture.
/
├── public/ # Static assets (images, videos, icons)
├── src/
│ ├── app/ # Main application pages and layout
│ └── components/ # Reusable React components for each page section
│ ├── Header/
│ ├── Hero/
│ ├── Services/
│ ├── Partners/
│ ├── Progress/
│ ├── Slider/
│ ├── FAQ/
│ ├── Features/
│ └── Contacts/
├── next.config.ts # Next.js configuration
├── tailwindcss.config.mjs # Tailwind CSS configuration
└── package.json # Project dependencies and scripts
To get a local copy up and running, follow these steps.
- Node.js (v18.18.0 or newer)
- pnpm
- Clone the repository:
git clone https://github.com/aulanchik/dns-website.git
- Change into the project directory:
cd dns-website - Install the dependencies:
pnpm install
To start the development server (powered by Turbopack), run:
pnpm run devOpen http://localhost:3000 in your browser to view the website. The page will automatically reload as you make changes to the code.
In the project directory, you can run the following commands:
pnpm dev: Starts the development server with Turbopack.pnpm build: Creates a production-ready build of the application.pnpm start: Starts the production server after a build.pnpm lint: Runs ESLint to analyze the code for potential issues.