Skip to content

Chen-Software/design-system.chen.software

 
 

Repository files navigation

Design-System.Chen.Software Website

https://Design-System.Chen.Software

Introduction

This project utilizes TinaCMS, a git-backed, React-based headless CMS that enables seamless content management. This system allows both technical and non-technical users to maintain website content through an intuitive interface.

Local Development

Cloning the Repository

This repository is available on both Radicle and GitHub:

Radicle (Recommended)

Clone using the Radicle CLI:

rad clone rad:z29UsQSSCXfxJonkQY3xaAAJZ6w4a

Or clone from the public Radicle seed node using standard git:

git clone https://seed.radicle.garden/z29UsQSSCXfxJonkQY3xaAAJZ6w4a.git design-system.chen.software

GitHub (Alternative)

If using GitHub, clone from the dev/main branch to avoid propagating GitHub-specific references to Radicle:

git clone -b dev/main https://github.com/Chen-Software/design-system.chen.software.git

Note: The Radicle version is considered the canonical source of truth.

Setup & Running

1. Install dependencies

pnpm install

2. Start development server

pnpm dev

3. Open http://localhost:3000 in your browser

Production Build (Using TinaCMS Content API)

1. Create .env file from template

cp .env.example .env

2. Configure environment variables

NEXT_PUBLIC_TINA_CLIENT_ID=<From Tina.io Dashboard>
TINA_TOKEN=<From Tina.io Dashboard> 
NEXT_PUBLIC_TINA_BRANCH=<Branch with Tina configuration>

3. Build the project

pnpm build

Content Management

Admin Interface Access

Access the CMS dashboard at:

https://localhost:3000/admin

For direct page editing:

https://localhost:3000/admin#/collections/edit/page/{page-name}

Replace {page-name} with your target page (e.g., about)

Editing Workflow

  1. Authentication: Login with your credentials
  2. Navigation: Use sidebar to locate content sections
  3. Modification: Edit content using visual/WYSIWYG controls
  4. Versioning: Changes auto-save to content/main branch

Publishing Process

Branch Strategy

  • content/main: Contains CMS-generated content changes
  • main: Production branch combining code and content

Deployment Steps

1. Create PR from content/main to main

https://github.com/Chen-Software/design-system.chen.software/compare/main...content/main

2. Review changes in GitHub interface

3. Merge PR to publish updates

Branch Management

  • 🔄 Automatic Commits: CMS edits directly push to content/main
  • 🛡️ Protected Branches:
    • main: Requires PR review
    • content/main: CMS-write protected
  • Sync Frequency: Merge content/mainmain regularly

Troubleshooting

Issue Solution
Edits not visible Verify PR merge from content/main
Authentication failure Contact admin for credential refresh
Formatting issues Validate markdown syntax in CMS interface

For advanced configurations, consult the TinaCMS documentation.

About

The Design System of Chen Software, Ltd.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 61.4%
  • JavaScript 19.1%
  • MDX 14.6%
  • CSS 4.9%