Skip to content

Update website presentation#3

Merged
AnastaZIuk merged 82 commits into
Devsh-Graphics-Programming:masterfrom
Erfan-Ahmadi:master
May 12, 2026
Merged

Update website presentation#3
AnastaZIuk merged 82 commits into
Devsh-Graphics-Programming:masterfrom
Erfan-Ahmadi:master

Conversation

@AnastaZIuk
Copy link
Copy Markdown
Member

Refreshes the public website pages and media presentation. Container CI runs for pull requests while publishing remains limited to master pushes.

## Original task
Port the Vercel/Next.js import (devsh-website) to the pnpm workspace stack
as a react-vite artifact, preserving full visual and functional parity.

## What was done
- Created react-vite artifact at artifacts/devsh-website/ (previewPath: /)
- Copied all public assets from .migration-backup/public/ including:
  - Client images (baw, ditt, imverse, wild, apps_in_cadd)
  - Vulkanised conference photos (2023, 2024, 2026)
  - Nabla framework screenshots and GIFs
  - FuturaPT font files (3 weights)
  - Logo and branding assets
- Converted Next.js app router (app/) to wouter SPA routing
- Replaced next/image with <img> tags (blur effects via CSS absolute positioning)
- Replaced next/link with wouter <Link> and <a> tags
- Replaced next/navigation usePathname with wouter useLocation
- Replaced @next/third-parties YouTubeEmbed with custom iframe embed
- Replaced next/font/local with @font-face declarations in index.html
- Converted layout.tsx to React Layout wrapper component in App.tsx
- All 4 pages ported: Home, About, Nabla, Services
- Copied app/data/vulkanised.json for Vulkanised gallery data
- Updated index.css to use FuturaPT, black background, teal devsh-link styles
- Removed postcss.config.mjs conflict (Tailwind v4 uses @tailwindcss/vite)
- No API routes in original app so no Express backend changes needed

## Deviations from original
- Blog page was in navbar links in original but had no implementation — omitted
- No not-found.tsx route from original (app/not-found.tsx) but scaffold has one
- Tailwind v4 @plugin syntax used instead of v3 config plugins array

## Result
All 4 pages render correctly matching the original design: black background,
FuturaPT custom font, teal accent links, sticky navbar with mobile dropdown,
YouTube embed gallery, animated Nabla slides, photo grids with blur effects.
## Original task
Port the Vercel/Next.js import (devsh-website) to the pnpm workspace stack
as a react-vite artifact, preserving full visual and functional parity.

## What was done
- Created react-vite artifact at artifacts/devsh-website/ (previewPath: /)
- Copied all public assets from .migration-backup/public/ including:
  - Client images (baw, ditt, imverse, wild, apps_in_cadd)
  - Vulkanised conference photos (2023, 2024, 2026)
  - Nabla framework screenshots and GIFs
  - FuturaPT font files (3 weights)
  - Logo and branding assets
- Converted Next.js app router (app/) to wouter SPA routing
- Replaced next/image with <img> tags (blur effects via CSS absolute positioning)
- Replaced next/link with wouter <Link> and <a> tags
- Replaced next/navigation usePathname with wouter useLocation
- Replaced @next/third-parties YouTubeEmbed with custom iframe embed
- Replaced next/font/local with @font-face declarations in index.html
- Converted layout.tsx to React Layout wrapper component in App.tsx
- All 4 pages ported: Home, About, Nabla, Services
- Copied app/data/vulkanised.json for Vulkanised gallery data
- Updated index.css to use FuturaPT, black background, teal devsh-link styles
- Removed postcss.config.mjs conflict (Tailwind v4 uses @tailwindcss/vite)
- No API routes in original app so no Express backend changes needed
- Fixed favicon reference to use /favicon.svg (which exists in public/)
- Fixed IntersectionObserver null check in OptimizedLoopVideo (&&  -> ||)

## Deviations from original
- Blog page was in navbar links in original but had no implementation — omitted
- Tailwind v4 @plugin syntax used instead of v3 config plugins array

## Result
All 4 pages render correctly matching the original design: black background,
FuturaPT custom font, teal accent links, sticky navbar with mobile dropdown,
YouTube embed gallery, animated Nabla slides, photo grids with blur effects.
## Original task
User imported the DevSH Graphics Programming Next.js site from Vercel; it was
auto-converted to Vite + React. User asked to undo that and restore the
original Next.js file layout — preview only, no publish needed.

## What was done
- Moved everything from `.migration-backup/` back to project root:
  - `app/` (App Router pages, components, hooks, fonts, data, globals.css)
  - `public/` (all images, videos, logos, client assets)
  - `next.config.ts`, `tailwind.config.ts`, `postcss.config.mjs`,
    `eslint.config.mjs`, `tsconfig.json`, `package.json`,
    `package-lock.json`, `.gitignore`, `README.md`
  - Original deployment configs: `Caddyfile`, `Dockerfile`,
    `docker-compose.yml`, `.dockerignore`, `.github/`
- Removed pnpm monorepo scaffolding from root: `artifacts/`, `lib/`,
  `scripts/`, `pnpm-workspace.yaml`, `pnpm-lock.yaml`,
  `tsconfig.base.json`, root `tsconfig.json`, root `package.json`,
  the entire `.migration-backup/` folder, and the pnpm-managed
  `node_modules/`
- Ran `npm install` (386 packages) for a clean Next.js dep tree
- Updated `next.config.ts` to add `allowedDevOrigins` for preview
  proxy (`*.replit.dev` and friends)
- Configured a single workflow "Start application" that runs `npm run dev`
- Updated `package.json` `dev` script to `next dev -p 24631 -H 0.0.0.0`
  to match the existing port mapping in `.replit` (port 24631 -> 80),
  since direct edits to `.replit` ports are not allowed
- Rewrote `replit.md` to describe the restored Next.js layout

## Deviations / known limitations
- The artifact registry still ghost-lists three artifacts (devsh-website,
  api-server, mockup-sandbox) even though their directories are gone, and
  there is a "not_started" `artifacts/api-server: API Server` workflow that
  cannot be removed via the workflow tool because it's marked as
  artifact-managed. These do not affect the running site.
- `.replit` still has the original `[deployment]` and `[postMerge]` blocks
  from the pnpm workspace; direct edits are blocked, but they are inert
  given the new layout (no scripts/ dir, no pnpm setup).
- `.npmrc` still has pnpm-specific `auto-install-peers` and
  `strict-peer-dependencies` settings; npm prints harmless warnings.
- A non-standard dev port (24631) is used instead of 3000/5000 to align
  with the pre-existing port mapping.

## Result
- Project root now contains the original Next.js file structure (`app/`,
  `public/`, `next.config.ts`, etc.) — no Vite, no monorepo
- `npm run dev` boots Next.js 15.5.7 successfully
- All four routes return HTTP 200 through the preview proxy:
  `/`, `/about`, `/services`, `/nabla`
Remove temporary files from `.old_nm_trash` directory, including executables and a lock file, as part of a broader cleanup effort following a user-requested reversal of a migration.
Introduce HeroHeader and ExpertiseGrid components, defining brand accent colors in globals.css and integrating them into app/page.tsx.
Update HeroHeader and ExpertiseGrid components to reduce element sizes, modify layout to use flexbox for centering, and ensure all content is visible on screen without requiring scrolling.
Update ExpertiseGrid component to constrain width to 60% on desktop and center cards, adjust card widths for responsiveness. Modify HeroHeader component to allow headline text wrapping on mobile and increase the size and minimum width of the call to action button.
Replace SVG visuals with placeholder images and update the expertise list in the ExpertiseGrid component.
Update the ExpertiseGrid component to accept image URLs for each item, defaulting to placeholders and providing a clear instruction comment for easy image updates.
Refactor the main page with new sections for projects, testimonials, Nabla, ecosystem, and about. Implement a reusable CTA button component and update global styles with new brand colors.
Adjusted ExpertiseGrid cards to use an aspect-square ratio, increased their sizing responsively across breakpoints, and enhanced hover animations with slower transitions, a stronger glow, and an accent ring for better visual feedback.
Update ProjectsSection.tsx and ExpertiseGrid.tsx to include a partner logo strip, real project details, and correct slugs for linking expertise to projects.
Update `ProjectsSection.tsx` to increase the font size of company names in project rows and change the default state of partner logos from grayscale to full color.
Create a new '/presentations' page displaying embedded YouTube videos from Vulkanised events, and add a "Watch our Presentations" link to the Ecosystem section.
Update `app/data/vulkanised.json` to structure video data by event title and optional URL, and modify `app/presentations/page.tsx` to display events with associated links.
Modify the presentations page to make titles clickable and remove redundant links. Update the main landing page's ecosystem section to include a "Technical Blog" button and revise its descriptive text.
Update `EcosystemSection.tsx` to increase the padding, font size, and icon size of the "Watch our Presentations" and "Technical Blog" buttons, and add more vertical spacing above them.
Update ExpertiseGrid.tsx to adjust hover effects, transition durations, and shadow intensity for interactive cards.
Reduce global scroll padding and remove article-specific scroll margins to ensure accurate anchor point alignment.
Refactors the NablaSection component to include a smaller centered SVG, a left column with GitHub stats and bullet points, and a right column featuring an interactive image slideshow with controls. Updates GitHub stats and adds placeholder slide data.
Move NablaGlyph component to appear after the section title and subtitle in NablaSection.tsx.
Update `EcosystemSection.tsx` to replace placeholder images with actual event photos and corresponding captions.
Modify the EcosystemSection component to use the correct image file and caption for the "Presenting at Vulkanised 2026" event.
Update Nabla section images and captions, replacing the N glyph with a new SVG and updating slide sources.
@AnastaZIuk AnastaZIuk merged commit 560b98b into Devsh-Graphics-Programming:master May 12, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants