# ArtalkJS
**Repository Path**: congqian/ArtalkJS
## Basic Information
- **Project Name**: ArtalkJS
- **Description**: Artalk 是一款简洁的自托管评论系统,前端采用 TypeScript (Vanilla JS),后端采用 Golang,功能非常强悍,Markdown 语法 + 代码高亮、显示
- **Primary Language**: HTML/CSS
- **License**: LGPL-3.0
- **Default Branch**: master
- **Homepage**: https://www.oschina.net/p/artalk
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2022-06-18
- **Last Updated**: 2022-06-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Artalk
[](https://www.npmjs.com/package/artalk)
[](https://www.npmjs.com/package/artalk)
[](https://bundlephobia.com/package/artalk)
[](https://circleci.com/gh/ArtalkJS/Artalk/tree/master)
> 🌌 A Self-hosted comment system
[简体中文](./README.md) / [Documentation](https://artalk.js.org) / [Releases](https://github.com/ArtalkJS/ArtalkGo/releases) / [ArtalkGo](https://github.com/ArtalkJS/ArtalkGo)
---
- 🍃 Lightweight (~30kB)
- 👨👧👦 Secure (Self-hosted)
- 🐳 Easy to use (Very Easy)
- 🍱 Golang backend (Fast and Cross Platform)
- 🌊 TypeScript × Vanilla × Vite (No Dependencies)
## Features
- Sidebar: Multi-site centralized management
- Notification Center: Red badge alert / Mark as read
- Verification: User Verification Badge / Password access
- Moderation: Anti-spam detection / Captcha frequency limit
- Emoticons: Insert emoji / Quickly import presets
- Email Notify: Template customization / Send to multi-admin
- Site Isolation: Multi-site management / Admin assignment
- Page Management: Provide page title / Easy to look up
- Image Upload: Upload to localhost / various remote image host
- Private Space Mode: Only visible to yourself / Message board
- Multiple Msg Pushers: Support Telegram / Slack / LINE
- Nested Comments: Switchable to Flat Mode
- Comment Vote: For or against comments
- Comment Sort: Sort by popularity or time
- Comment PIN: Pin important comments
- Track only author: Show only author's comments
- Asynchronous: Send comments without waiting
- Infinite Scrolling: Provide various comment content pagination custom
- AutoSave: A anti-lost editor
- AutoFill: Autofill user profile
- Preview: Real-time preview of markdown
- Dark Mode: Prevents eye disease damage
- Collapse Comment: I do not want you to see this comment
- Data Backup: Prevent comment data loss
- Data Migration: Switch back and forth between different commenting systems
- Multiple comments on one page: Multiple comment areas on one page (seems useless
- Markdown: Markdown syntax was supported by default
- LaTex support: Import KaTex plugin to integrate LaTex parser for artalk
- Using [Vite](https://github.com/vitejs/vite): The ultimate developer experience
## Getting Started
Reference to:[**Documentation**](https://artalk.js.org/guide/deploy.html)
```sh
$ pnpm add artalk
```
```ts
import Artalk from 'artalk'
new Artalk({
el: '#Comments',
pageKey: 'http://your_domain/post/1', // Page Link
pageTitle: 'The title of your page', // Page Title
server: 'http://localhost:8080/api', // Server URL
site: 'Site Name',
i18n: 'en-US'
})
```
### Docker
```sh
# Create a directory for Artalk
mkdir Artalk
cd Artalk
# Download config template
curl -L https://raw.githubusercontent.com/ArtalkJS/ArtalkGo/master/artalk-go.example.yml > conf.yml
docker run -d \
--name artalk \
-p 0.0.0.0:8080:23366 \
-v $(pwd)/conf.yml:/conf.yml \
-v $(pwd)/data:/data \
artalk/artalk-go
```
### Docker Compose
```sh
mkdir Artalk
cd Artalk
vim docker-compose.yaml
```
```yaml
version: "3.5"
services:
artalk:
container_name: artalk
image: artalk/artalk-go
ports:
- 8080:23366
volumes:
- ./conf.yml:/conf.yml
- ./data:/data
```
```sh
docker-compose up -d
```
## Contributors
[](https://github.com/ArtalkJS/Artalk/graphs/contributors)
## Supporters
[](https://github.com/ArtalkJS/Artalk/stargazers)
## Feedback
Thanks for the help and feedback provided by the community, if you have good suggestions or comments, please go to [issues](https://github.com/ArtalkJS/Artalk/issues) to let us know at any time.
## Stargazers over time
[](https://starchart.cc/ArtalkJS/Artalk)
## License
[LGPL-3.0](./LICENSE)
[](https://app.fossa.com/projects/git%2Bgithub.com%2FArtalkJS%2FArtalk?ref=badge_shield)
[](https://app.fossa.com/projects/git%2Bgithub.com%2FArtalkJS%2FArtalk?ref=badge_large)