Skip to content

Latest commit

 

History

History

README.md

VerifyWise Code Rules & Best Practices

A comprehensive collection of coding standards, best practices, and guidelines for the VerifyWise project. This documentation is designed to ensure consistency, maintainability, and quality across the entire codebase.

Tech Stack

Layer Technologies
Frontend React 19, TypeScript, Vite, Material-UI
Backend Node.js, Express.js, TypeScript, Sequelize
Python Services FastAPI, Python 3.12
Database PostgreSQL
Testing Vitest (80% coverage target), Jest, DeepEval
Linting ESLint with TypeScript strict mode

Quick Navigation

Table of Contents

1. Foundations

Core programming principles that apply across all languages and frameworks.

2. TypeScript Standards

TypeScript-specific guidelines aligned with our ESLint configuration.

3. React Guidelines

Frontend development standards for React applications.

4. Backend Guidelines

Node.js and Express.js development standards.

5. Python Standards

Python and FastAPI development guidelines.

6. Security

Security best practices aligned with OWASP guidelines.

7. Testing

Testing strategies and implementation guidelines.

8. Workflow

Development workflow and collaboration guidelines.

9. Design System

Visual design standards extracted from the VerifyWise StyleGuide.

Checklists

Quick reference checklists for common tasks.

Templates & Examples

Copy-paste templates for common patterns.

Key Sources

These guidelines are based on industry best practices from:

Topic Source
Clean Code Robert C. Martin - "Clean Code"
DRY/KISS/YAGNI Andy Hunt & Dave Thomas - "The Pragmatic Programmer"
SOLID Principles Robert C. Martin
Security OWASP Top 10 & Secure Coding Practices
TDD Kent Beck - "Test-Driven Development"
TypeScript Google TypeScript Style Guide
React React 19 Documentation
Node.js goldbergyoni/nodebestpractices
Python PEP 8 Style Guide

Contributing

When updating these guidelines:

  1. Ensure changes align with existing ESLint configuration
  2. Provide concrete examples for each guideline
  3. Include both good and bad examples where applicable
  4. Update the relevant checklist if adding new requirements
  5. Keep guidelines actionable and specific to VerifyWise

Project Standards

These guidelines align with existing project standards:

  • ESLint Configuration: See Clients/eslint.config.js for enforced rules
  • Clean Architecture: See Clients/clean-architecture.md for layer structure
  • PR Template: See .github/pull_request_template.md for submission requirements