Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 6 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,66 +1,9 @@
[![Twitter](https://img.shields.io/twitter/follow/inkonchain)](https://x.com/inkonchain)
# Ink Documentation

# InkChain Documentation App
Welcome to the official documentation for Ink, Kraken's dedicated DeFi chain.

An advanced, streamlined documentation platform built with Next.js and Nextra for InkChain.
## Getting Started
- Connect your wallet to Ink
- Bridge assets and acquire testnet funds
- Explore tutorials and start building onchain!

## 🚀 Build & Run

1. **Build Docker image**:
```bash
docker build -t docs .
```

2. **Run Docker container**:
```bash
docker run -p 3000:3000 docs
```

## 📋 Requirements

* **Node.js**: v20.11.0 or higher

## 📖 Overview

This is a documentation application powered by [Nextra](https://nextra.site/) and built on [Next.js](https://nextjs.org/). Nextra simplifies the creation of documentation sites, allowing us to leverage the **Pages Router** for efficient navigation and routing. Currently, due to compatibility limitations, we have not yet upgraded to the App Router.

## 🏁 Getting Started

To get started with local development:

1. **Clone the repository**
2. **Install dependencies**:
```bash
pnpm install
```
3. **Start development server**:
```bash
pnpm run dev
```

## 🛠 Tooling

Our development setup includes multiple tools to maintain high-quality code and documentation:

* **[CSpell](https://cspell.org/)**: Real-time spell checking to maintain documentation accuracy.
* **[Remark](https://remark.js.org/)**: Processes and renders Markdown content with added plugins.
* **[ESLint](https://eslint.org/)**: Ensures code quality by catching potential issues.
* **[Prettier](https://prettier.io/)**: Enforces consistent code formatting.
* **[Tailwind CSS](https://tailwindcss.com/)**: Utility-first CSS framework for fast, responsive UI development.

## 🚦 CI/CD Pipeline

Our CI/CD setup utilizes GitHub Actions to run automated checks on every pull request (PR):

* **js-lint**: Ensures proper JavaScript code formatting with ESLint.
* **md-lint**: Checks Markdown code formatting with Remark.
* **format**: Enforces consistent code style with Prettier.
* **spell-check**: Uses CSpell to verify correct spelling in the documentation. For any unique terms (e.g., "InkChain"), add them to the [`./cspell/project-words.txt`](./cspell/project-words.txt) file to whitelist.

## 🌐 Feature Branch Deployment

For every new PR, our CI/CD pipeline deploys a temporary environment via **AWS Amplify**. This real-time deployment enables live testing and review of changes before merging, ensuring a smoother workflow. The deployment URL is automatically provided within the PR checks, allowing team members to interact with new features.

## 🚀 Production Deployment

The `main` branch is configured for automatic continuous deployment via **AWS Amplify**. Every merge triggers a new build and deployment, ensuring that the latest version of the documentation is available to users without manual intervention.
41 changes: 23 additions & 18 deletions cspell.json
Original file line number Diff line number Diff line change
@@ -1,18 +1,23 @@
{
"$schema": "https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json",
"version": "0.2",
"dictionaryDefinitions": [
{
"name": "project-words",
"path": "./cspell/project-words.txt",
"addWords": true
}
],
"dictionaries": [
"project-words"
],
"ignorePaths": [
"node_modules",
"/project-words.txt"
]
}
{
"$schema": "https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json",
"version": "0.2",
"dictionaryDefinitions": [
{
"name": "project-words",
"path": "./cspell/project-words.txt",
"addWords": true
}
],
"dictionaries": [
"project-words"
],
"ignorePaths": [
"node_modules",
"/project-words.txt"
],
"words": [
"roadmaps",
"Inkworks",
"tokenomics"
]
}
2 changes: 1 addition & 1 deletion src/utils/networks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ export function useNetwork(network: NetworkType): UseNetworkResponse {
chainId.toLowerCase() ===
networkParams[network].chainId.toLowerCase();
setIsSelected(isCurrentNetwork);
setIsAdded(prev => isCurrentNetwork || prev); // If we're on the network, it must be added
setIsAdded((prev) => isCurrentNetwork || prev); // If we're on the network, it must be added
} catch (error) {
console.error("Error checking network:", error);
}
Expand Down