Knowledge Base Web Application
Overview
This project is a full-stack Knowledge Base (KB) web application designed to centralise documentation, guides, and internal resources for small and mid-sized teams.
It was originally developed as a standalone tool, later integrated into my larger sales admin system.
The goal:
๐ Replace scattered Google Docs, PDFs, emails, and โtribal knowledgeโ with one clean, searchable, role-based knowledge platform.
Core Features
๐ Full-Text Search Across All Articles
Fast, asynchronous search powered by optimized SQL queries.
Instant filtering by keywords, category, or tag.
๐ Rich-Text Article Editor
Integrated WYSIWYG editor (Quill.js) for formatting, embedding links, and writing long-form guides without touching code.
๐ Structured Categories & Tagging
Helps users browse logically, minimising time spent digging for information.
๐ฅ Role-Based Access Control
Admin, Editor, Viewer permissions with secure JWT-based authentication.
Admins can manage categories, users, and approve new articles.
๐๏ธ Draft / Publish Workflow
Editors can submit articles for approval.
Admins approve, reject, or request changes.
๐ Dashboard & Metrics
A clean visual dashboard showing:
- Recent articles
- Popular articles
- Pending approvals
- Category distribution
- Article view counts
Designed to give admins real-time visibility into team knowledge activity.
โก High-Performance API Layer (FastAPI)
- Fully asynchronous backend
- Auto-generated OpenAPI docs
- JSON REST endpoints
- Predictable, modular router structure
๐๏ธ Database & Infrastructure
- PostgreSQL-ready schema (SQLite for dev)
- SQLAlchemy ORM
- Deployed via PythonAnywhere / Docker-ready
Gallery