Skip to content

Commit 654a40e

Browse files
authored
Merge pull request #18 from CS3219-AY2425S1/feat/4-ui-homepage
Feat/4 UI homepage
2 parents 94f5762 + 0fca38e commit 654a40e

40 files changed

+6143
-0
lines changed

docker-compose.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
version: "3"
2+
services:
3+
frontend:
4+
build:
5+
context: ./peerprep-fe
6+
dockerfile: Dockerfile
7+
ports:
8+
- "3000:3000"
9+
environment:
10+
- NODE_ENV=production
11+
12+
# Add other microservices here
13+
# backend:
14+
# ...
15+
# database:
16+
# ...

peerprep-fe/.dockerignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
./node_modules
2+
.next
3+
.git
4+
.env*.local

peerprep-fe/.env

Whitespace-only changes.

peerprep-fe/.eslintrc.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"extends": ["next/core-web-vitals", "next/typescript"]
3+
}

peerprep-fe/.gitignore

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2+
3+
# dependencies
4+
/node_modules
5+
/.pnp
6+
.pnp.js
7+
.yarn/install-state.gz
8+
9+
# testing
10+
/coverage
11+
12+
# next.js
13+
/.next/
14+
/out/
15+
16+
# production
17+
/build
18+
19+
# misc
20+
.DS_Store
21+
*.pem
22+
23+
# debug
24+
npm-debug.log*
25+
yarn-debug.log*
26+
yarn-error.log*
27+
28+
# local env files
29+
.env*.local
30+
31+
# vercel
32+
.vercel
33+
34+
# typescript
35+
*.tsbuildinfo
36+
next-env.d.ts

peerprep-fe/Dockerfile

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Use an official Node runtime as the base image
2+
FROM node:18-alpine
3+
4+
# Install pnpm globally
5+
RUN npm install -g pnpm
6+
7+
# Set the working directory in the container
8+
WORKDIR /app
9+
10+
# Copy package.json and pnpm-lock.yaml
11+
COPY package*.json pnpm-lock.yaml ./
12+
13+
# Install dependencies using pnpm
14+
RUN pnpm install
15+
16+
# Install zustand explicitly (in case it's still not included)
17+
RUN pnpm add zustand
18+
19+
# Copy the rest of the application code
20+
COPY . .
21+
22+
# Build the Next.js application
23+
RUN pnpm run build
24+
25+
# Expose the port the app runs on
26+
EXPOSE 3000
27+
28+
# Start the application
29+
CMD ["pnpm", "start"]

peerprep-fe/README.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
2+
3+
## Getting Started
4+
5+
First, run the development server:
6+
7+
```bash
8+
npm run dev
9+
# or
10+
yarn dev
11+
# or
12+
pnpm dev
13+
# or
14+
bun dev
15+
```
16+
17+
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
18+
19+
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20+
21+
This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
22+
23+
## Learn More
24+
25+
To learn more about Next.js, take a look at the following resources:
26+
27+
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28+
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29+
30+
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
31+
32+
## Deploy on Vercel
33+
34+
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35+
36+
Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.

peerprep-fe/components.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"$schema": "https://ui.shadcn.com/schema.json",
3+
"style": "new-york",
4+
"rsc": true,
5+
"tsx": true,
6+
"tailwind": {
7+
"config": "tailwind.config.ts",
8+
"css": "src/styles/globals.css",
9+
"baseColor": "neutral",
10+
"cssVariables": true,
11+
"prefix": ""
12+
},
13+
"aliases": {
14+
"components": "@/components",
15+
"utils": "@/lib/utils",
16+
"ui": "@/components/ui",
17+
"lib": "@/lib",
18+
"hooks": "@/hooks"
19+
}
20+
}

peerprep-fe/next.config.mjs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/** @type {import('next').NextConfig} */
2+
const nextConfig = {
3+
output: "standalone",
4+
};
5+
6+
export default nextConfig;

peerprep-fe/package.json

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
{
2+
"name": "nextjs-dashboard",
3+
"version": "0.1.0",
4+
"private": true,
5+
"scripts": {
6+
"dev": "next dev",
7+
"build": "next build",
8+
"start": "next start -p 3000 -H 0.0.0.0",
9+
"lint": "next lint"
10+
},
11+
"dependencies": {
12+
"@radix-ui/react-dialog": "^1.1.1",
13+
"@radix-ui/react-icons": "^1.3.0",
14+
"@radix-ui/react-popover": "^1.1.1",
15+
"@radix-ui/react-select": "^2.1.1",
16+
"@radix-ui/react-slot": "^1.1.0",
17+
"class-variance-authority": "^0.7.0",
18+
"clsx": "^2.1.1",
19+
"cmdk": "1.0.0",
20+
"lucide-react": "^0.441.0",
21+
"next": "14.2.12",
22+
"react": "^18",
23+
"react-dom": "^18",
24+
"tailwind-merge": "^2.5.2",
25+
"tailwindcss-animate": "^1.0.7",
26+
"zustand": "5.0.0-rc.2"
27+
},
28+
"devDependencies": {
29+
"@types/node": "^20",
30+
"@types/react": "^18",
31+
"@types/react-dom": "^18",
32+
"eslint": "^8",
33+
"eslint-config-next": "14.2.12",
34+
"postcss": "^8",
35+
"tailwindcss": "^3.4.1",
36+
"typescript": "^5"
37+
}
38+
}

0 commit comments

Comments
 (0)