# Moe-Counter
Multiple styles of Moe-Counters to choose from
**English** | [简体中文](docs/README-zhcn.md)
![Moe-Counter](https://count.getloli.com/get/@Moe-counter.github)
More theme
##### asoul
![asoul](https://count.getloli.com/get/@demo?theme=asoul)
##### moebooru
![moebooru](https://count.getloli.com/get/@demo?theme=moebooru)
##### rule34
![Rule34](https://count.getloli.com/get/@demo?theme=rule34)
##### gelbooru
![Gelbooru](https://count.getloli.com/get/@demo?theme=gelbooru)
=======
# *Moe Counter!*
多种风格可选的萌萌计数器
More theme
### *[Contribute themes is welcome!](https://github.com/journey-ad/Moe-Counter/issues/new?assignees=&labels=theme&projects=&template=contribute-theme.yml&title=%5BTheme%5D%3A+)*
##### 3d-num
![3d-num](https://count.getloli.com/@demo?theme=3d-num)
##### ai-1
![ai-1](https://count.getloli.com/@demo?theme=ai-1)
##### asoul
![asoul](https://count.getloli.com/@demo?theme=asoul)
##### booru-ffsr
![booru-ffsr](https://count.getloli.com/@demo?theme=booru-ffsr)
##### booru-helltaker
![booru-helltaker](https://count.getloli.com/@demo?theme=booru-helltaker)
##### booru-huggboo
![booru-huggboo](https://count.getloli.com/@demo?theme=booru-huggboo)
##### booru-jaypee
![booru-jaypee](https://count.getloli.com/@demo?theme=booru-jaypee)
##### booru-koe
![booru-koe](https://count.getloli.com/@demo?theme=booru-koe)
##### booru-lewd
![booru-lewd](https://count.getloli.com/@demo?theme=booru-lewd)
##### booru-lisu
![booru-lisu](https://count.getloli.com/@demo?theme=booru-lisu)
##### booru-mjg
![booru-mjg](https://count.getloli.com/@demo?theme=booru-mjg)
##### booru-mof
![booru-mof](https://count.getloli.com/@demo?theme=booru-mof)
##### booru-nandroid
![booru-nandroid](https://count.getloli.com/@demo?theme=booru-nandroid)
##### booru-qualityhentais
![booru-qualityhentais](https://count.getloli.com/@demo?theme=booru-qualityhentais)
##### booru-r6gdrawfriends
![booru-r6gdrawfriends](https://count.getloli.com/@demo?theme=booru-r6gdrawfriends)
##### booru-rfck
![booru-rfck](https://count.getloli.com/@demo?theme=booru-rfck)
##### booru-smtg
![booru-smtg](https://count.getloli.com/@demo?theme=booru-smtg)
##### booru-snyde
![booru-snyde](https://count.getloli.com/@demo?theme=booru-snyde)
##### booru-the-collection
![booru-the-collection](https://count.getloli.com/@demo?theme=booru-the-collection)
##### booru-touhoulat
![booru-touhoulat](https://count.getloli.com/@demo?theme=booru-touhoulat)
##### booru-townofgravityfalls
![booru-townofgravityfalls](https://count.getloli.com/@demo?theme=booru-townofgravityfalls)
##### booru-twifanartsfw
![booru-twifanartsfw](https://count.getloli.com/@demo?theme=booru-twifanartsfw)
##### booru-ve
![booru-ve](https://count.getloli.com/@demo?theme=booru-ve)
##### booru-vivi
![booru-vivi](https://count.getloli.com/@demo?theme=booru-vivi)
##### booru-vp
![booru-vp](https://count.getloli.com/@demo?theme=booru-vp)
##### booru-yuyuyui
![booru-yuyuyui](https://count.getloli.com/@demo?theme=booru-yuyuyui)
##### capoo-1
![capoo-1](https://count.getloli.com/@demo?theme=capoo-1)
##### capoo-2
![capoo-2](https://count.getloli.com/@demo?theme=capoo-2)
##### e621
![e621](https://count.getloli.com/@demo?theme=e621)
##### food
![food](https://count.getloli.com/@demo?theme=food)
##### gelbooru
![gelbooru](https://count.getloli.com/@demo?theme=gelbooru)
##### green
![green](https://count.getloli.com/@demo?theme=green)
##### kasuterura-1
![kasuterura-1](https://count.getloli.com/@demo?theme=kasuterura-1)
##### kasuterura-2
![kasuterura-2](https://count.getloli.com/@demo?theme=kasuterura-2)
##### kasuterura-3
![kasuterura-3](https://count.getloli.com/@demo?theme=kasuterura-3)
##### kasuterura-4
![kasuterura-4](https://count.getloli.com/@demo?theme=kasuterura-4)
##### kyun
![kyun](https://count.getloli.com/@demo?theme=kyun)
##### love-and-deepspace
![love-and-deepspace](https://count.getloli.com/@demo?theme=love-and-deepspace)
##### minecraft
![minecraft](https://count.getloli.com/@demo?theme=minecraft)
##### moebooru
![moebooru](https://count.getloli.com/@demo?theme=moebooru)
##### morden-num
![morden-num](https://count.getloli.com/@demo?theme=morden-num)
##### nixietube-1
![nixietube-1](https://count.getloli.com/@demo?theme=nixietube-1)
##### nixietube-2
![nixietube-2](https://count.getloli.com/@demo?theme=nixietube-2)
##### normal-1
![normal-1](https://count.getloli.com/@demo?theme=normal-1)
##### normal-2
![normal-2](https://count.getloli.com/@demo?theme=normal-2)
##### original-new
![original-new](https://count.getloli.com/@demo?theme=original-new)
##### original-old
![original-old](https://count.getloli.com/@demo?theme=original-old)
##### rule34
![rule34](https://count.getloli.com/@demo?theme=rule34)
##### shimmie2
![shimmie2](https://count.getloli.com/@demo?theme=shimmie2)
##### sketch-1
![sketch-1](https://count.getloli.com/@demo?theme=sketch-1)
##### sketch-2
![sketch-2](https://count.getloli.com/@demo?theme=sketch-2)
## Demo
[https://count.getloli.com](https://count.getloli.com)
## How to use
For information on counter usage and configuration, refer to the [demo website](https://count.getloli.com).
## Usage
### Install
#### Run on Replit
- Open the url [https://replit.com/@journeyad/Moe-Counter](https://replit.com/@journeyad/Moe-Counter)
- Just hit the **Fork** button
- And hit the **Run** button
#### Run on Glitch
- Open [Glitch project](https://glitch.com/~moe-counter-api)
- Just hit the **Remix your own** button
- That's it!
#### Deploying on your own server
```shell
$ git clone https://github.com/journey-ad/Moe-Counter.git
$ cd Moe-Counter
$ yarn install
$ yarn start
$ pnpm install
$ pnpm run start
```
### Configuration
`config.yml`
```yaml
app:
# site: https://count.getloli.com # your website
port: 3000
db:
type: sqlite # sqlite or mongodb
```
If you use mongodb, you need to specify the environment variable `DB_URL`
```shell
# eg:
export DB_URL=mongodb+srv://account:passwd@***.***.***.mongodb.net/db_count
```
Replit can use Secrets, check [documentation](https://docs.replit.com/programming-ide/storing-sensitive-information-environment-variables)
```
DB_URL="mongodb+srv://account:passwd@***.***.***.mongodb.net/db_count"
=======
Set `.env` file to specify the environment variables. *[.env.example](./.env.example)*
```dosini
# Specify your website URL
# APP_SITE=https://count.getloli.com
# Application port
APP_PORT=3000
# Database type: either 'sqlite' or 'mongodb'
DB_TYPE=sqlite
# If using MongoDB, provide the connection string
# DB_URL=mongodb://127.0.0.1:27017
# Database write interval in seconds (0 for real-time)
DB_INTERVAL=60
# Log level: either 'debug' | 'info' | 'warn' | 'error' | 'none'
LOG_LEVEL=debug
# Google Analytics `G-Tag` ID
# GA_ID=G-XXXX
```
## Credits
* [replit](https://replit.com/)
* [A-SOUL_Official](https://space.bilibili.com/703007996)
* [moebooru](https://github.com/moebooru/moebooru)
* rule34.xxx NSFW
* gelbooru.com NSFW
* [Icons8](https://icons8.com/icons/set/star)
## License
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fjourney-ad%2FMoe-Counter.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fjourney-ad%2FMoe-Counter?ref=badge_large)
=======
* [Glitch](https://glitch.com/)
* [A-SOUL_Official](https://space.bilibili.com/703007996)
* [moebooru](https://github.com/moebooru/moebooru)
* gelbooru.com NSFW
* [Icons8](https://icons8.com/icon/80355/star)
* *And all booru site...*
## License
[MIT License](./LICENSE), excluding all themes
---