GithubHelp home page GithubHelp logo

API about monaba HOT 8 OPEN

ahushh avatar ahushh commented on June 26, 2024
API

from monaba.

Comments (8)

catamphetamine avatar catamphetamine commented on June 26, 2024 1

Если будете писать README по API, можете взять для примера вот такой документ, который я писал для "двача":
https://github.com/catamphetamine/captchan/blob/master/docs/2ch.hk.md

from monaba.

ahushh avatar ahushh commented on June 26, 2024 1

@catamphetamine Добавил документацию для RO методов, описания там нет, но есть примеры - по ним в целом должно быть понятно.
https://documenter.getpostman.com/view/5005722/SzRxVpvC?version=latest

from monaba.

catamphetamine avatar catamphetamine commented on June 26, 2024

Так, я понял, "Not under active development".
Ну вообще да, пять лет уже, так долго проекты не живут.
Есть какой-то lynxchan, но я его не смотрел.
Он на Node.js и MongoDB, хотя чанам база данных, наверное, не нужна, и прямо в файлы писать будет быстрее (я так предполагаю).
Иначе почему 2ch.hk грузится молниеносно.

from monaba.

ahushh avatar ahushh commented on June 26, 2024

@catamphetamine апи есть в зачаточном состоянии, почти не протестировано и скорее всего будет меняться еще.
Список роутов вот, там внизу самом https://github.com/ahushh/Monaba/blob/docker/monaba/config/routes

from monaba.

ahushh avatar ahushh commented on June 26, 2024

Я в принципе и планировал в ближайшее время его доделать и сваять доку. Появление клиента для этого апи будет приятным бонусом.

from monaba.

catamphetamine avatar catamphetamine commented on June 26, 2024

Список роутов вот, там внизу самом

Ага, вижу.

/api/posts                             ApiPostR PUT
/api/posts/#Int                        ApiPostByIdR GET PATCH

/api/boards                            ApiListBoardsR GET
/api/boards/#Text/page/#Int            ApiBoardR GET
/api/boards/#Text/threads/#Int         ApiThreadR GET
/api/boards/#Text/threads/#Int/deleted ApiDeletedPosts GET

/api/feed/page/#Int                    ApiFeedR GET
/api/catalog/#Text                     ApiCatalogR GET
/api/home                              ApiHomeR GET
/api/captcha                           ApiCaptchaR GET
/api/file                              ApiFileR PUT

Плюс, ещё, видимо, эти:

/ajax/post/preview                AjaxPostPreviewR  POST
/ajax/postform/#Text              AjaxGetPostFormR  GET
/ajax/thread/#Text/#Int/new/#Int  AjaxNewPostsR     GET
/ajax/thread/#Text/#Int/last/#Int AjaxLastPostsR    GET
/ajax/thread/#Text/#Int/all       AjaxAllPostsR     GET
/ajax/thread/#Text/#Int/deleted   AjaxDeletedPostsR GET
/ajax/postbyid/#Int               AjaxPostByIdR     GET
/ajax/post/#Text/#Int             AjaxPostR         GET
/ajax/post/#Text/#Int/rawmsg      AjaxPostRawMsgR   GET
/ajax/feed/#Int                   AjaxFeedOffsetR   GET
/ajax/newfeed/#Int                AjaxNewFeedR      GET
/ajax/hide/thread/#Text/#Int/#Int AjaxHideThreadR   GET
/ajax/unhide/thread/#Text/#Int    AjaxUnhideThreadR GET
/ajax/board/stats                 AjaxBoardStatsR   GET
/ajax/board/stats/read            AjaxBoardStatsReadR GET
/jsonfrommsg/#Text                JsonFromMsgR      GET

Я в принципе и планировал в ближайшее время его доделать и сваять доку.

@ahushh А я тут тоже, клиент допиливать планировал к лету.

Как вообще ваш движок по производительности?
Это по сути самое основное, я так полагаю, для больших досок.
Если на имиджборде сидит много человек, то нагрузка большая. Если же это небольшое сообщество, то без разницы.
Я так понял, 2ch.hk вообще просто пишет всё прямо в файлы (*.html и *.json), потому что грузится он у меня за 12 миллисекунд (что API, что страницы).
Да и расширения в путях как бы намекают.
Видимо, старый-добрый подход начала 90-ых здесь — самый оптимальный.

Появление клиента для этого апи будет приятным бонусом.

Даа, по планам сейчас допилить GUI до юзабельного состояния (мб летом доделаю), потом попробовать обкатать где-нибудь на дваче.

from monaba.

catamphetamine avatar catamphetamine commented on June 26, 2024

Ага, Postgres, вижу.
Ну, реляционные базы — тоже хорошо.
Как плюс — они гибкие, и можно всегда добавлять какие-то фичи, которые были бы сложны в условиях просто файлов.
Да и в случае роста всегда можно поднять read-only реплики.
lynxchan пишут на MongoDB, но в своё время многие обожлись с этим MongoDB, так что я не особо им доверяю теперь.
Хаскель — понимаю, почему он был выбран: интересно было попробовать "что-нибудь такое".
Хрен где найдёте второго программиста на Хаскеле, конечно )
Но основную свою задачу — весело провести время — он наверняка выполнил.

Ладно тогда, я мб появлюсь где-нибудь летом, мб вы уже запилите какой-нибудь минимальный README со списком простейших read-only методов API (получить список досок, получить список тредов доски, получить сообщения треда — три штуки пока хватит) и примеров возвращаемых JSON объектов, а я на основе этой минимальной доки мб сваяю какой-нибудь простейший read-only адаптер для GUI.

from monaba.

binakot avatar binakot commented on June 26, 2024

Почему бы не вынести API на отдельную страницу Wiki или хотя бы добавить раздел в конец README.

from monaba.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.