# 📝 Node Blog
<div align="center">
💨 A simple, fast, and easy-to-use blog platform 🚀
⚠️ *Work in progress — Not production ready yet* 🚧
https://github.com/bs32g1038/node-blog/workflows/Node%20Blog%20CI/badge.svg
https://github.com/bs32g1038/node-blog/workflows/Release%20Docker%20CI/badge.svg
https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg
https://img.shields.io/lgtm/alerts/g/bs32g1038/node-blog.svg?logo=lgtm&logoWidth=18](https://lgtm.com/projects/g/bs32g1038/node-blog/alerts/)
https://img.shields.io/lgtm/grade/javascript/g/bs32g1038/node-blog.svg?logo=lgtm&logoWidth=18](https://lgtm.com/projects/g/bs32g1038/node-blog/context:javascript)
https://codecov.io/gh/bs32g1038/node-blog/branch/master/graph/badge.svg](https://codecov.io/gh/bs32g1038/node-blog)
https://img.shields.io/github/license/bs32g1038/node-blog.svg
</div>
https://github.com/bs32g1038/node-blog/blob/master/docs/images/home.png?raw=true
**🌐 Preview:** https://www.lizc.net
---
## ✨ Features
- 🌙☀ **Themes**: Light & Dark mode
- 🐐 **REST API** built with Node.js + Express
- 🚜 **Database**: MongoDB + Mongoose
- 🔨 **Build system**: Webpack
- 🍓 **Tech stack**: React, Ant Design, Express, Typescript, ...
- 🌲 **Next.js** for server-side rendering
- 📲 **Responsive layout** for mobile
- ⚙️ **Clean workflow** and maintainable architecture
- … and more
---
## 📁 Project Structure
ROOT │ ├─ server # Blog backend (Node.js + MongoDB) │ └─ client ├─ web # Frontend UI ├─ admin # Admin UI │ ├─ docker-compose.yml # Docker Compose configuration
---
## ✅ Todo List
- [x] Article tags
- [x] In-browser article writing
- [x] Comments
- [x] Search functionality
- [x] Mobile web support
- [x] Light & Dark themes
- [x] Other improvements ...
---
## 🛠 Development Setup
### 1. Clone repository
```bash
git clone https://github.com/bs32g1038/node-blog.git
cd node-blog
npm installnpm run init:dev:datanpm run devnpm run buildThe project includes everything needed for deployment: client UI, Dockerfile and docker-compose.yml.
- Pull the project to your server
- Install
dockeranddocker-compose - Build containers:
docker-compose build
- Start services:
docker-compose up -d
- Install dependencies:
npm install
- Start in production mode:
npm run start:prod
- Ensure MongoDB is installed and running.
- OS: Linux, macOS, or Windows
- Node.js: v14.x or newer (LTS recommended)
- Database: MongoDB v5.x or newer
| Edge | Firefox | Chrome | Safari | Opera |
|---|---|---|---|---|
| last 2 versions | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
If you find this project helpful, please consider giving it a ⭐ on GitHub.
Your support means a lot!
MIT License.
---