https://github.com/thearmagan/4chan-full
www.4chan.org non-official read only api.
https://github.com/thearmagan/4chan-full
4chan board thread watcher
Last synced: 6 months ago
JSON representation
www.4chan.org non-official read only api.
- Host: GitHub
- URL: https://github.com/thearmagan/4chan-full
- Owner: TheArmagan
- Created: 2020-07-08T21:17:25.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-03T15:35:03.000Z (over 2 years ago)
- Last Synced: 2025-03-17T19:34:54.446Z (7 months ago)
- Topics: 4chan, board, thread, watcher
- Language: JavaScript
- Homepage:
- Size: 108 KB
- Stars: 12
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
> # 4CHAN-FULL 🎉
>
> www.4chan.org non-official read only api.---
## Installation
```diff
npm install 4chan-full
```---
### Possibilities
- [Custom Request Handler](https://example.com/) (`new FourChanFull(yourHandler)`);
- [Get Thread](https://example.com/ "Example Result") (`.thread(boardCode, threadId)`)
- [Watching Thread for Updates](https://example.com/ "Example Result") (`.threadWatcher(boardCode, threadId, [options])`);
- [Get Board](https://example.com/ "Example Result") (`.board(boardCode, page)`)
- [Get Archive](https://example.com/ "Example Result") (`.archive(boardCode)`)
- [Get Popular Threads](https://example.com/ "Example Result") (`.popular(safetyType)`)
- [Get Stats](https://example.com/ "Example Result") (`.stats()`)
- [Board List](https://example.com/ "Example Result") (`.boards`)### Example Codes
That small script lists all files of the thread..
```js
const { fchf } = require("4chan-full");(async () => {
const thread = await fchf.thread("wg", "7694540");// thread.file -> Thread owner (OP) file.
// thread.replies[?].file -> reply file.const files = [thread.file, ...thread.replies.map((i) => i?.file)].filter(
(i) => i != null
);console.log(files);
})();
```That small script watches the thread for new replies..
```js
const { fchf } = require("4chan-full");(async () => {
let watcher = fchf.threadWatcher("vg", "337012489");// Events: updated, nowUpdated, checked, error, #start, #stop
watcher.on("updated", (oldThread, newThread) => {
console.log({ oldThread, newThread });
});watcher.on("notUpdated", () => {
console.log("there is no new replies..");
});watcher.on("checked", (oldThread, newThread) => {
console.log("checked new checkInterval:", watcher.checkInterval);
});watcher.start();
})();
```## TODO
- [x] Full Code REWRITE
- [x] Parse Message Contents (Quotes etc.)
- [x] Thread Update Watcher
- [ ] Board Update Watcher## Type List
- [Archive](https://github.com/TheArmagan/4chan-full/tree/master/src/types/Archive.js)
- [ArchiveItem](https://github.com/TheArmagan/4chan-full/tree/master/src/types/ArchiveItem.js)
- [Board](https://github.com/TheArmagan/4chan-full/tree/master/src/types/Board.js)
- [BoardInfo](https://github.com/TheArmagan/4chan-full/tree/master/src/types/BoardInfo.js)
- [File](https://github.com/TheArmagan/4chan-full/tree/master/src/types/File.js)
- [MessageContent](https://github.com/TheArmagan/4chan-full/tree/master/src/types/MessageContent.js)
- [MessageContentPart](https://github.com/TheArmagan/4chan-full/tree/master/src/types/MessageContentPart.js)
- [PopularThreadPart](https://github.com/TheArmagan/4chan-full/tree/master/src/types/PopularThreadPart.js)
- [PopularThread](https://github.com/TheArmagan/4chan-full/tree/master/src/types/PopularThread.js)
- [PopularThreads](https://github.com/TheArmagan/4chan-full/tree/master/src/types/PopularThreads.js)
- [Reply](https://github.com/TheArmagan/4chan-full/tree/master/src/types/Reply.js)
- [SemiThread](https://github.com/TheArmagan/4chan-full/tree/master/src/types/SemiThread.js)
- [Stats](https://github.com/TheArmagan/4chan-full/tree/master/src/types/Stats.js)
- [Thread](https://github.com/TheArmagan/4chan-full/tree/master/src/types/Thread.js)## HUGE Update 1.2.0
- Thread Watcher
- Update Boards
- Bug fixes### Update 1.1.1
- Parse Message Contents
- Add Type List To README MD## HUGE Update 1.1.0
- Full Rewrite API
- Update README MD