Skip to content

Commit 58b25b9

Browse files
Merge pull request #73 from SamixYasuke/feat/add-ci-pipeline
chore: add git ci workflow
2 parents 167a42d + 3aa2113 commit 58b25b9

File tree

5 files changed

+74
-9052
lines changed

5 files changed

+74
-9052
lines changed

.github/workflows/ci.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Frontend CI
2+
3+
on:
4+
push:
5+
branches: [main, develop]
6+
pull_request:
7+
branches: [main, develop]
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Set up Node.js
17+
uses: actions/setup-node@v4
18+
with:
19+
node-version: "20"
20+
cache: "npm"
21+
22+
- name: Install dependencies
23+
run: npm ci
24+
25+
- name: Run Lint
26+
run: npm run lint
27+
28+
- name: Run Type Check
29+
run: npm run type-check
30+
31+
- name: Run Build
32+
run: npm run build
33+
34+
- name: Run Tests
35+
run: npm run test

README.md

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
21
### 🌐 `web/README.md`
32

43
# 📚 TeachLink Frontend
54

5+
![Frontend CI](https://github.com/teachlink/frontend/actions/workflows/ci.yml/badge.svg)
6+
67
**TeachLink** is a decentralized platform built for technocrats to **share, analyze, and monetize knowledge** through collaborative content, blockchain-based tipping, and gamified reputation. This repository contains the frontend codebase built with **Next.js (App Router)**, **Tailwind CSS**, and integrated with **Starknet** for seamless Web3 interactions.
78

89
---
@@ -11,19 +12,19 @@
1112

1213
TeachLink empowers users to:
1314

14-
- 📢 Share knowledge, tutorials, or insights
15-
- 🧠 Engage in discussions and collaborative learning
16-
- 💸 Earn through on-chain tipping
17-
- 🔗 Build reputation with verifiable Web3 credentials
15+
- 📢 Share knowledge, tutorials, or insights
16+
- 🧠 Engage in discussions and collaborative learning
17+
- 💸 Earn through on-chain tipping
18+
- 🔗 Build reputation with verifiable Web3 credentials
1819

1920
This frontend serves as the main user interface for interacting with TeachLink's decentralized knowledge ecosystem. It supports wallet-based login, markdown post creation, tipping, theming, user profiles, and topic feeds—all while maintaining a seamless Web2.5 user experience.
2021

2122
---
2223

2324
## 🧱 Tech Stack
2425

25-
| Layer | Technology |
26-
|------------|--------------------------|
26+
| Layer | Technology |
27+
| ---------- | ------------------------ |
2728
| Framework | Next.js (App Router) |
2829
| Styling | Tailwind CSS |
2930
| Web3 | Starknet.js, StarknetKit |
@@ -37,13 +38,13 @@ This frontend serves as the main user interface for interacting with TeachLink's
3738

3839
## ⚙️ Features
3940

40-
- 🔐 **Starknet Wallet Integration** – Login and interact using Starknet-compatible wallets
41-
- 🧾 **Markdown-Based Post Editor** – Rich, previewable post creation using markdown
42-
- 💡 **Tipping System** – Send and receive on-chain tips via smart contracts
43-
- 🌙 **Dark/Light Theme Toggle** – Accessible theming using Tailwind CSS
44-
- 🔎 **Dynamic Routing with App Router** – Clean, scalable navigation
45-
- 📂 **Profile and Topic Pages** – View user-specific content and explore topic-specific posts
46-
- 📱 **Responsive Layout** – Fully mobile-ready with modular components
41+
- 🔐 **Starknet Wallet Integration** – Login and interact using Starknet-compatible wallets
42+
- 🧾 **Markdown-Based Post Editor** – Rich, previewable post creation using markdown
43+
- 💡 **Tipping System** – Send and receive on-chain tips via smart contracts
44+
- 🌙 **Dark/Light Theme Toggle** – Accessible theming using Tailwind CSS
45+
- 🔎 **Dynamic Routing with App Router** – Clean, scalable navigation
46+
- 📂 **Profile and Topic Pages** – View user-specific content and explore topic-specific posts
47+
- 📱 **Responsive Layout** – Fully mobile-ready with modular components
4748

4849
---
4950

@@ -67,6 +68,7 @@ globals.css → Tailwind directives
6768
## 🛠 Setup Instructions
6869

6970
1. **Clone the repo**
71+
7072
```bash
7173
git clone https://github.com/teachlink/frontend.git
7274
cd frontend
@@ -143,3 +145,4 @@ let make our code clean, maintainable and scallable. Keep to Standard
143145
📜 License
144146
MIT © 2025 TeachLink DAO
145147

148+
```

package-lock.json

Lines changed: 17 additions & 27 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
"test": "vitest run",
1111
"test:coverage": "vitest run --coverage",
1212
"test:ui": "vitest --ui",
13-
"test:watch": "vitest --watch"
13+
"test:watch": "vitest --watch",
14+
"type-check": "tsc --noEmit"
1415
},
1516
"dependencies": {
1617
"@dnd-kit/core": "^6.3.1",
@@ -52,6 +53,9 @@
5253
"@testing-library/jest-dom": "^6.8.0",
5354
"@testing-library/react": "^16.3.0",
5455
"@testing-library/user-event": "^14.6.1",
56+
"@types/chai": "^5.2.3",
57+
"@types/d3-array": "^3.2.2",
58+
"@types/d3-color": "^3.1.3",
5559
"@types/node": "^20",
5660
"@types/react": "^18.3.27",
5761
"@types/react-dom": "^18.3.7",

0 commit comments

Comments
 (0)