chore: initialization of the website rebuild to nextjs in the nextjs folder#1
Conversation
…folder Signed-off-by: Daniel Ntege <danientege785@gmail.com>
…folder Signed-off-by: Daniel Ntege <danientege785@gmail.com>
There was a problem hiding this comment.
Pull request overview
This PR introduces a new nextjs/ Next.js app (App Router) into the repo, including TypeScript + Tailwind setup and baseline lint/build tooling to support a rebuild/dev workflow.
Changes:
- Added a standalone Next.js project under
nextjs/with TS config, ESLint flat config, PostCSS/Tailwind setup, and pnpm lock/workspace metadata. - Implemented initial App Router structure (
app/layout.tsx,app/page.tsx,app/globals.css) plus favicon. - Added repository tooling/config updates (
.codacy.yaml) and project docs/ignores.
Reviewed changes
Copilot reviewed 12 out of 15 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| nextjs/package.json | Defines the Next.js app package scripts and dependencies. |
| nextjs/pnpm-lock.yaml | Locks resolved dependency versions for reproducible installs. |
| nextjs/tsconfig.json | TypeScript configuration for the Next.js app. |
| nextjs/eslint.config.mjs | ESLint flat config using Next.js presets and ignores. |
| nextjs/postcss.config.mjs | PostCSS config enabling Tailwind integration. |
| nextjs/pnpm-workspace.yaml | pnpm workspace settings (ignored build deps). |
| nextjs/next.config.ts | Baseline Next.js config scaffold. |
| nextjs/app/layout.tsx | Root layout and font setup for the App Router. |
| nextjs/app/page.tsx | Initial homepage UI/content. |
| nextjs/app/globals.css | Tailwind import + theme tokens + global styles. |
| nextjs/app/favicon.ico | Adds an app-level favicon. |
| nextjs/global.d.ts | Adds CSS module typing shim. |
| nextjs/README.md | Starter documentation for running and learning Next.js. |
| nextjs/.gitignore | Ignores build artifacts and environment files for the Next app. |
| .codacy.yaml | Excludes the Next.js pnpm lockfile from Codacy analysis. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
| <Image | ||
| className="dark:invert" | ||
| src="/next.svg" | ||
| alt="Next.js logo" | ||
| width={100} | ||
| height={20} | ||
| priority | ||
| /> | ||
| <div className="flex flex-col items-center gap-6 text-center sm:items-start sm:text-left"> | ||
| <h1 className="max-w-xs text-3xl font-semibold leading-10 tracking-tight text-black dark:text-zinc-50"> | ||
| To get started, edit the page.tsx file. | ||
| </h1> | ||
| <p className="max-w-md text-lg leading-8 text-zinc-600 dark:text-zinc-400"> | ||
| Looking for a starting point or more instructions? Head over to{" "} | ||
| <a | ||
| href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
| className="font-medium text-zinc-950 dark:text-zinc-50" | ||
| > | ||
| Templates | ||
| </a>{" "} | ||
| or the{" "} | ||
| <a | ||
| href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
| className="font-medium text-zinc-950 dark:text-zinc-50" | ||
| > | ||
| Learning | ||
| </a>{" "} | ||
| center. | ||
| </p> | ||
| </div> | ||
| <div className="flex flex-col gap-4 text-base font-medium sm:flex-row"> | ||
| <a | ||
| className="flex h-12 w-full items-center justify-center gap-2 rounded-full bg-foreground px-5 text-background transition-colors hover:bg-[#383838] dark:hover:bg-[#ccc] md:w-[158px]" | ||
| href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| > | ||
| <Image | ||
| className="dark:invert" | ||
| src="/vercel.svg" | ||
| alt="Vercel logomark" | ||
| width={16} | ||
| height={16} | ||
| /> |
There was a problem hiding this comment.
next/image is rendering /next.svg and /vercel.svg, but there is no nextjs/public/ directory (or these SVG files) in this PR. This will 404 at runtime and can fail builds depending on how images are handled. Add the referenced assets under nextjs/public/ or update the page to use assets that actually exist (or remove the images).
|
|
||
| # typescript | ||
| *.tsbuildinfo | ||
| next-env.d.ts |
There was a problem hiding this comment.
tsconfig.json includes next-env.d.ts, but that file is not added in this PR, and it is also listed in .gitignore (so it won’t be committed if generated). In Next.js TypeScript projects this file is typically checked in to provide the /// <reference types="next" /> and related global typings. Add nextjs/next-env.d.ts and remove it from nextjs/.gitignore so new clones get correct TS types without needing a first run.
| next-env.d.ts |
| body { | ||
| background: var(--background); | ||
| color: var(--foreground); | ||
| font-family: Arial, Helvetica, sans-serif; |
There was a problem hiding this comment.
layout.tsx sets up Geist font variables, but globals.css hard-codes body { font-family: Arial, Helvetica, sans-serif; }, which prevents the Geist fonts from being applied globally (unless every page/component explicitly adds font-sans). To make the configured fonts take effect app-wide, update the global body font-family to use the Geist CSS variable (or add the appropriate Tailwind font class on <body> and avoid overriding it in CSS).
| font-family: Arial, Helvetica, sans-serif; | |
| font-family: var(--font-geist-sans); |
Jexsie
left a comment
There was a problem hiding this comment.
Thanks @danielmarv, just a few comments
| "eslint": "^9", | ||
| "eslint-config-next": "16.1.6", | ||
| "tailwindcss": "^4", | ||
| "typescript": "^5" |
There was a problem hiding this comment.
Would be nice if we hav all the minor version added here
There was a problem hiding this comment.
Since the configuration files are utilizing ES6 syntax, it would be more consistent to define"type": "module" in the project settings. This allows us to remove the .m extension from the filenames while maintaining native module support
There was a problem hiding this comment.
Is this something scraped just for the start? What is the source here?
nextjs/pnpm-workspace.yaml
Outdated
There was a problem hiding this comment.
I dont think we need this file since this won't be a monorepo
…folder Signed-off-by: Daniel Ntege <danientege785@gmail.com>
Signed-off-by: Daniel Ntege <danientege785@gmail.com>
Signed-off-by: Daniel Ntege <danientege785@gmail.com>
Description
This pull request sets up a new Next.js project with TypeScript, Tailwind CSS, and essential tooling for development, linting, and formatting. It includes initial configuration files, a basic homepage, and documentation to help get started. The changes are grouped below by theme.
Project Initialization and Configuration
nextjs/package.jsonwith scripts for development, build, start, and linting, and dependencies for Next.js, React, Tailwind CSS, TypeScript, and ESLint.nextjs/tsconfig.jsonfor TypeScript configuration, enabling strict type-checking and Next.js plugin support.nextjs/next.config.tsto define (currently empty) Next.js configuration options.nextjs/eslint.config.mjsto configure ESLint with Next.js and TypeScript support.nextjs/postcss.config.mjsfor PostCSS, enabling Tailwind CSS integration..gitignoreto exclude build artifacts, dependencies, and environment files..codacy.yamlto excludepnpm-lock.yamlfrom code analysis.nextjs/pnpm-workspace.yamlto ignore certain dependencies in the workspace.Styling and Fonts
nextjs/app/globals.cssto set up Tailwind CSS, custom CSS variables for light/dark mode, and font families.nextjs/app/layout.tsxto import fonts (Geist and Geist_Mono), apply them globally, and define basic metadata.App Structure and Content
nextjs/app/page.tsxwith Next.js and Vercel branding, links to documentation, and instructions to get started.Documentation
nextjs/README.mdwith instructions for development, editing, learning resources, and deployment guidance.Changes Made
Related Issues
Screenshots (if applicable)
Checklist
Deployment Notes
https://github.com/OpenElements/Hiero-Funding/issues/24