Code Monkey home page Code Monkey logo

pages's Introduction

pages's People

Contributors

clarkwinkelmann avatar dependabot[bot] avatar dsevillamartin avatar flarum-bot avatar imorland avatar karaok491 avatar rafaucau avatar rob006 avatar zgq354 avatar ziymed avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pages's Issues

Error in marking

Hello!
Could you check one thing for me? I don't know if it's only me who has this error, but I can't tag users of the forum. After tagging @Fajuu and entering the page /p/1, an error pops up for me.

Failed to load resource: the server responded with a status of 500 ()               /api/pages/1:1

My page settings:

is_html = 0
is_hidden = 0

Could you see if it also occurs in you and possibly say why it happens?

Interacting with api using Flarum ApiKey causes 405 error

Bug Report

Current Behavior
I tried to directly interact with the api /api/pages with authorization of Flarum official api keys, which caused error.

Steps to Reproduce
The node source code I used is here:

fetch('https://FORUMURL/api/pages/1', {
    method: 'POST',
    body: JSON.stringify({
        "data": {
            "type": "pages",
            "id": "1",
            "attributes": {
                    "title": "Donators",
                    "slug": "donate",
                    "content": "test test html",
                    "isHidden": false,
                    "isRestricted": false,
                    "isHtml": true
            }
        }
    }),
    headers: {
        'Content-Type': 'application/json',
        "Authorization": "Token MYTOKENADDED; userId=1",
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"
    }
}).then(res => res.json()).then(json => console.log(json))

which caused an 405 error:
{ errors: [ { status: '405', code: 'method_not_allowed' } ] }

I've already used this api key before with official/extensions' api interfaces, which performs correctly.
But when it comes into FofPages, error occurs.

Environment

  • Flarum version: 1.4.1
  • Extension version: 1.0.4
  • Website URL: https://michan.fun
  • Webserver: nginx
  • Hosting environment: Aliyun vps
  • PHP version: 8.1.7
  • Browser: no
Flarum core 1.4.1
PHP version: 8.1.7
MySQL version: 8.0.24
Loaded extensions: Core, date, libxml, openssl, pcre, sqlite3, zlib, bcmath, ctype, curl, dom, filter, ftp, gd, gettext, hash, iconv, intl, json, mbstring, SPL, session, pcntl, standard, mysqlnd, PDO, pdo_mysql, pdo_sqlite, Phar, posix, Reflection, mysqli, shmop, SimpleXML, soap, sockets, sodium, sysvsem, tokenizer, xml, xmlreader, xmlwriter, zip, fileinfo, exif, apcu, memcached, Zend OPcache
+----------------------------------------+-------------+--------+
| Flarum Extensions                      |             |        |
+----------------------------------------+-------------+--------+
| ID                                     | Version     | Commit |
+----------------------------------------+-------------+--------+
| flarum-flags                           | v1.4.0      |        |
| flarum-suspend                         | v1.4.0      |        |
| flarum-subscriptions                   | v1.4.0      |        |
| flarum-tags                            | v1.4.0      |        |
| flarum-approval                        | v1.4.0      |        |
| askvortsov-auto-moderator              | v0.1.2      |        |
| flarum-sticky                          | v1.4.0      |        |
| flarum-markdown                        | v1.4.0      |        |
| fof-user-directory                     | 1.2.3       |        |
| fof-follow-tags                        | 1.1.5       |        |
| fof-byobu                              | 1.1.7       |        |
| afrux-forum-widgets-core               | v0.1.7      |        |
| v17development-user-badges             | v1.1.0      |        |
| the-turk-stickiest                     | 3.0.1       |        |
| the-turk-flamoji                       | 1.0.4       |        |
| swaggymacro-only-starter               | 0.6.4       |        |
| nearata-internal-links-noreload        | v2.1.1      |        |
| nearata-cakeday                        | v2.0.0      |        |
| matteocontrini-imgur-upload            | v3.9.1      |        |
| kyrne-websocket                        | 3.3.0       |        |
| katosdev-signature                     | 1.2         |        |
| justoverclock-toastme                  | 0.1.1       |        |
| ianm-level-ranks                       | 1.1.0       |        |
| ianm-follow-users                      | 1.1.1       |        |
| fof-username-request                   | 1.0.1       |        |
| fof-user-bio                           | 1.1.0       |        |
| fof-upload                             | 1.2.3       |        |
| fof-profile-image-crop                 | 1.0.1       |        |
| fof-polls                              | 1.1.0       |        |
| fof-pages                              | 1.0.4       |        |
| fof-nightmode                          | 1.4.1       |        |
| fof-links                              | 1.1.1       |        |
| fof-ignore-users                       | 1.1.0       |        |
| fof-geoip                              | 1.0.1       |        |
| fof-formatting                         | 1.0.2       |        |
| fof-filter                             | 1.1.1       |        |
| fof-drafts                             | 1.1.2       |        |
| fof-doorman                            | 1.1.1       |        |
| fof-analytics                          | 1.1.0       |        |
| flarumtr-mobile-search                 | v1.2        |        |
| flarum-statistics                      | v1.4.1      |        |
| flarum-mentions                        | v1.4.0      |        |
| flarum-lock                            | v1.4.0      |        |
| flarum-likes                           | v1.4.0      |        |
| flarum-lang-english                    | v1.4.0      |        |
| flarum-lang-chinese-simplified         | v1.1.1.1220 |        |
| flarum-bbcode                          | v1.4.0      |        |
| ffans-clipboardjs                      | v1.0.0      |        |
| extiverse-mercury                      | 0.2.0       |        |
| ecnu-im-sticky-sidenav                 | v1.1.0      |        |
| davwheat-custom-sidenav-links          | 1.0.1       |        |
| darkle-fancybox                        | 1.1.2       |        |
| clarkwinkelmann-no-email-notifications | 1.0.0       |        |
| blomstra-sort-order-toggle             | 0.2.0       |        |
| blomstra-fontawesome                   | 0.1.4       |        |
| becod-backtotop                        | v1.1        |        |
| askvortsov-rich-text                   | v2.1.7      |        |
| askvortsov-pwa                         | v3.1.3      |        |
| askvortsov-moderator-warnings          | v0.6.1      |        |
| askvortsov-markdown-tables             | v1.2.1      |        |
| afrux-top-posters-widget               | v0.1.4      |        |
| afrux-news-widget                      | v0.1.1      |        |
| afrux-forum-stats-widget               | v0.1.1      |        |
+----------------------------------------+-------------+--------+
Base URL: https://michan.fun
Installation path: /www/wwwroot/michan
Queue driver: sync
Mail driver: smtp
Debug mode: off

Possible solution(s)
Check if the api of this extension matches the standard of Flarum

v0.5.0 errors

There are 2 critical errors. I created the page but it did not appear in the page list. It seemed that I have refreshed the page. I tried opening the page, the link was broken.

[2020-11-06 20:32:44] flarum.ERROR: InvalidArgumentException: No hint path defined for [fof-pages]. in /var/www/html/flarum/vendor/illuminate/view/FileViewFinder.php:112
Stack trace:
#0 /var/www/html/flarum/vendor/illuminate/view/FileViewFinder.php(90): Illuminate\View\FileViewFinder->parseNamespaceSegments()
#1 /var/www/html/flarum/vendor/illuminate/view/FileViewFinder.php(76): Illuminate\View\FileViewFinder->findNamespacedView()
#2 /var/www/html/flarum/vendor/illuminate/view/Factory.php(131): Illuminate\View\FileViewFinder->find()
#3 /var/www/html/flarum/vendor/fof/pages/src/Content/Page.php(71): Illuminate\View\Factory->make()
#4 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Frontend.php(63): FoF\Pages\Content\Page->__invoke()
#5 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Frontend.php(55): Flarum\Frontend\Frontend->populate()
#6 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Controller.php(32): Flarum\Frontend\Frontend->document()
#7 /var/www/html/flarum/vendor/flarum/core/src/Http/RouteHandlerFactory.php(38): Flarum\Frontend\Controller->handle()
#8 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(65): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
#9 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\DispatchRoute->process()
#10 /var/www/html/flarum/vendor/fof/ban-ips/src/Middleware/RegisterMiddleware.php(93): Laminas\Stratigility\Next->handle()
#11 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\BanIPs\Middleware\RegisterMiddleware->process()
#12 /var/www/html/flarum/vendor/fof/stopforumspam/src/Middleware/RegisterMiddleware.php(101): Laminas\Stratigility\Next->handle()
#13 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\StopForumSpam\Middleware\RegisterMiddleware->process()
#14 /var/www/html/flarum/vendor/fof/terms/src/Middlewares/RegisterMiddleware.php(48): Laminas\Stratigility\Next->handle()
#15 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\Terms\Middlewares\RegisterMiddleware->process()
#16 /var/www/html/flarum/vendor/fof/oauth/src/Middleware/ErrorHandler.php(50): Laminas\Stratigility\Next->handle()
#17 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\OAuth\Middleware\ErrorHandler->process()
#18 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/ShareErrorsFromSession.php(57): Laminas\Stratigility\Next->handle()
#19 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\ShareErrorsFromSession->process()
#20 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/SetLocale.php(50): Laminas\Stratigility\Next->handle()
#21 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\SetLocale->process()
#22 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(37): Laminas\Stratigility\Next->handle()
#23 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\CheckCsrfToken->process()
#24 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(32): Laminas\Stratigility\Next->handle()
#25 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\AuthenticateWithSession->process()
#26 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(51): Laminas\Stratigility\Next->handle()
#27 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\RememberFromCookie->process()
#28 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
#29 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\StartSession->process()
#30 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/CollectGarbage.php(46): Laminas\Stratigility\Next->handle()
#31 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\CollectGarbage->process()
#32 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
#33 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\ParseJsonBody->process()
#34 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
#35 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\HandleErrors->process()
#36 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(84): Laminas\Stratigility\Next->handle()
#37 /var/www/html/flarum/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
#38 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\RequestHandler->process()
#39 /var/www/html/flarum/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Laminas\Stratigility\Next->handle()
#40 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\BasePathRouter->process()
#41 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(42): Laminas\Stratigility\Next->handle()
#42 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Laminas\Stratigility\Middleware\OriginalMessages->process()
#43 /var/www/html/flarum/vendor/middlewares/base-path/src/BasePath.php(53): Laminas\Stratigility\Next->handle()
#44 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\BasePath->process()
#45 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(84): Laminas\Stratigility\Next->handle()
#46 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(73): Laminas\Stratigility\MiddlewarePipe->process()
#47 /var/www/html/flarum/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
#48 /var/www/html/flarum/vendor/flarum/core/src/Http/Server.php(42): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
#49 /var/www/html/flarum/index.php(26): Flarum\Http\Server->listen()
#50 {main}


[2020-11-06 11:12:39] flarum.ERROR: Exception: Serialization of 'Closure' is not allowed in /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php:120
Stack trace:
#0 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(120): serialize()
#1 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#2 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#3 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#4 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#5 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#6 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator/Helpers/ConfigHelper.php(117): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#7 /var/www/html/flarum/vendor/s9e/text-formatter/src/Configurator.php(257): s9e\TextFormatter\Configurator\Helpers\ConfigHelper::optimizeArray()
#8 /var/www/html/flarum/vendor/flarum/core/src/Formatter/Formatter.php(156): s9e\TextFormatter\Configurator->finalize()
#9 /var/www/html/flarum/vendor/illuminate/cache/Repository.php(418): Flarum\Formatter\Formatter->Flarum\Formatter\{closure}()
#10 /var/www/html/flarum/vendor/flarum/core/src/Formatter/Formatter.php(157): Illuminate\Cache\Repository->rememberForever()
#11 /var/www/html/flarum/vendor/flarum/core/src/Formatter/Formatter.php(200): Flarum\Formatter\Formatter->getComponent()
#12 /var/www/html/flarum/vendor/flarum/core/src/Forum/ForumServiceProvider.php(100): Flarum\Formatter\Formatter->getJs()
#13 [internal function]: Flarum\Forum\ForumServiceProvider->Flarum\Forum\{closure}()
#14 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Compiler/Source/StringSource.php(35): call_user_func()
#15 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Compiler/Source/StringSource.php(46): Flarum\Frontend\Compiler\Source\StringSource->getContent()
#16 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Compiler/RevisionCompiler.php(239): Flarum\Frontend\Compiler\Source\StringSource->getCacheDifferentiator()
#17 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Compiler/RevisionCompiler.php(73): Flarum\Frontend\Compiler\RevisionCompiler->calculateRevision()
#18 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Compiler/RevisionCompiler.php(125): Flarum\Frontend\Compiler\RevisionCompiler->commit()
#19 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Content/Assets.php(73): Flarum\Frontend\Compiler\RevisionCompiler->getUrl()
#20 [internal function]: Flarum\Frontend\Content\Assets->Flarum\Frontend\Content\{closure}()
#21 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Content/Assets.php(72): array_map()
#22 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Content/Assets.php(55): Flarum\Frontend\Content\Assets->getUrls()
#23 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Frontend.php(63): Flarum\Frontend\Content\Assets->__invoke()
#24 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Frontend.php(55): Flarum\Frontend\Frontend->populate()
#25 /var/www/html/flarum/vendor/flarum/core/src/Frontend/Controller.php(32): Flarum\Frontend\Frontend->document()
#26 /var/www/html/flarum/vendor/flarum/core/src/Http/RouteHandlerFactory.php(38): Flarum\Frontend\Controller->handle()
#27 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(65): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
#28 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\DispatchRoute->process()
#29 /var/www/html/flarum/vendor/fof/secure-https/src/Middlewares/ContentSecurityPolicyMiddleware.php(32): Laminas\Stratigility\Next->handle()
#30 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\SecureHttps\Middlewares\ContentSecurityPolicyMiddleware->process()
#31 /var/www/html/flarum/vendor/fof/ban-ips/src/Middleware/RegisterMiddleware.php(93): Laminas\Stratigility\Next->handle()
#32 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\BanIPs\Middleware\RegisterMiddleware->process()
#33 /var/www/html/flarum/vendor/fof/stopforumspam/src/Middleware/RegisterMiddleware.php(101): Laminas\Stratigility\Next->handle()
#34 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\StopForumSpam\Middleware\RegisterMiddleware->process()
#35 /var/www/html/flarum/vendor/fof/terms/src/Middlewares/RegisterMiddleware.php(48): Laminas\Stratigility\Next->handle()
#36 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\Terms\Middlewares\RegisterMiddleware->process()
#37 /var/www/html/flarum/vendor/fof/oauth/src/Middleware/ErrorHandler.php(50): Laminas\Stratigility\Next->handle()
#38 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): FoF\OAuth\Middleware\ErrorHandler->process()
#39 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/ShareErrorsFromSession.php(57): Laminas\Stratigility\Next->handle()
#40 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\ShareErrorsFromSession->process()
#41 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/SetLocale.php(50): Laminas\Stratigility\Next->handle()
#42 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\SetLocale->process()
#43 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(37): Laminas\Stratigility\Next->handle()
#44 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\CheckCsrfToken->process()
#45 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(32): Laminas\Stratigility\Next->handle()
#46 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\AuthenticateWithSession->process()
#47 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(51): Laminas\Stratigility\Next->handle()
#48 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\RememberFromCookie->process()
#49 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
#50 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\StartSession->process()
#51 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/CollectGarbage.php(46): Laminas\Stratigility\Next->handle()
#52 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\CollectGarbage->process()
#53 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
#54 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\ParseJsonBody->process()
#55 /var/www/html/flarum/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
#56 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Flarum\Http\Middleware\HandleErrors->process()
#57 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(84): Laminas\Stratigility\Next->handle()
#58 /var/www/html/flarum/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
#59 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\RequestHandler->process()
#60 /var/www/html/flarum/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Laminas\Stratigility\Next->handle()
#61 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\BasePathRouter->process()
#62 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(42): Laminas\Stratigility\Next->handle()
#63 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Laminas\Stratigility\Middleware\OriginalMessages->process()
#64 /var/www/html/flarum/vendor/middlewares/base-path/src/BasePath.php(53): Laminas\Stratigility\Next->handle()
#65 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/Next.php(61): Middlewares\BasePath->process()
#66 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(84): Laminas\Stratigility\Next->handle()
#67 /var/www/html/flarum/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(73): Laminas\Stratigility\MiddlewarePipe->process()
#68 /var/www/html/flarum/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
#69 /var/www/html/flarum/vendor/flarum/core/src/Http/Server.php(42): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
#70 /var/www/html/flarum/index.php(26): Flarum\Http\Server->listen()
#71 {main} 

Image in the header et better markdown integration

Feature Request

Is your feature request related to a problem? Please describe.

The static page looks a bit odd in the smooth Flarum environment.

Describe the solution you'd like

It would be quite better if we are able to add an image as header of the page (a bit like the blog page extension).

Also, there is no preview for markdown styling within editing the page, that could help I imagine to have full text editing option.

Describe alternatives you've considered

Blog extension

Mentions in page content are not working: `@"[deleted]"#123`

Bug Report

Current Behavior
When doing a @mention in a page content (I tried that with HTML activated) it renders as @"[deleted]"#123.

Expected Behavior
Either show a normal mention like in a post or show the raw content that has been provided.

Environment

Page title issue on admin area

When I visited the Pages tab in the Admin area, I saw "0" at the end of each page title.

Example:
Page title: Text
Shown as: Text0

Example

HTML content gets parsed

Bug Report

Current Behavior
If HTML content is added and activated via the HTML-Flag, the saved content gets parsed again via Flarum\Formatter (i presume; or any other formatting done by Flarum). Due to the fact that the saved content gets parsed, this results in extremely huge margins/spaces between the elements.

Steps to Reproduce
Create an HTML Page and activate HTML with the following content:

<h4>Headline H4</h4>
<p>some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph</p>
<p>second paragraph second paragraph second paragraph second paragraph second paragraph second paragraph second paragraph</p>

no paragraph just text no paragraph just textno paragraph just textno paragraph just textno paragraph just textno paragraph just text

another line of text another line of text another line of text another line of text another line of text another line of text

This results in the following content in the database. The original and intended HTML gets transformed to HTML-Entities with &lt; and &gt;, and then the additonal parsing adds <p> and <br/> to the content!

<t><p>&lt;h4&gt;Headline H4&lt;/h4&gt;<br/>
&lt;p&gt;some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph some paragraph&lt;/p&gt;<br/>
&lt;p&gt;second paragraph second paragraph second paragraph second paragraph second paragraph second paragraph second paragraph&lt;/p&gt;</p>

<p>no paragraph just text no paragraph just textno paragraph just textno paragraph just textno paragraph just textno paragraph just text</p>

<p>another line of text another line of text another line of text another line of text another line of text another line of text</p></t>

When rendered out, the HTML-Entities get transformed back to HTML-Tags, but the added Tags are not removed which leads to nested <p>-Pargraphs and additonal <br/>-Tags.

Expected Behavior
When saved with the Flag HTML activated, no additional parsing should occur and no additional/unwanted spaces should emerge!

Screenshots
grafik
grafik

Environment

  • Flarum version: 1.1.1
  • Extension version: 1.0.1
  • Website URL:
  • Webserver: nginx
  • Hosting environment: vps
  • PHP version: 7.4.3
  • Browser: Firefox 95.0.2, Chrome 96
Flarum core 1.1.1
PHP version: 7.4.3
MySQL version: 8.0.27-0ubuntu0.20.04.1
Loaded extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, pcntl, Reflection, SPL, session, standard, sodium, mysqlnd, PDO, xml, bz2, calendar, ctype, curl, dom, mbstring, FFI, fileinfo, ftp, gd, gettext, iconv, imagick, json, exif, mysqli, pdo_mysql, Phar, posix, readline, shmop, SimpleXML, sockets, sysvmsg, sysvsem, sysvshm, tokenizer, xmlreader, xmlwriter, xsl, zip, Zend OPcache
+--------------------------------------+----------+------------------------------------------+
| Flarum Extensions                    |          |                                          |
+--------------------------------------+----------+------------------------------------------+
| ID                                   | Version  | Commit                                   |
+--------------------------------------+----------+------------------------------------------+
| flarum-flags                         | v1.1.0   |                                          |
| flarum-bbcode                        | v1.1.0   |                                          |
| flarum-suspend                       | v1.1.0   |                                          |
| flarum-approval                      | v1.1.0   |                                          |
| flarum-tags                          | v1.1.0   |                                          |
| fof-formatting                       | 1.0.2    |                                          |
| wolfgang-demeter-bbcode-5star-rating | dev-main | aa314c8fd20d97e5c4d003071c9c67e94f6f0d83 |
| fof-user-bio                         | 1.0.1    |                                          |
| fof-upload                           | 1.0.7    |                                          |
| fof-terms                            | 1.1.2    |                                          |
| fof-split                            | 1.0.1    |                                          |
| fof-socialprofile                    | 1.1.1    |                                          |
| fof-recaptcha                        | 1.0.0    |                                          |
| fof-pages                            | 1.0.1    |                                          |
| fof-merge-discussions                | 1.1.1    |                                          |
| fof-links                            | 1.0.3    |                                          |
| fof-byobu                            | 1.1.0    |                                          |
| fof-amazon-affiliation               | 1.0.1    |                                          |
| flarum-subscriptions                 | v1.1.0   |                                          |
| flarum-sticky                        | v1.1.0   |                                          |
| flarum-statistics                    | v1.1.0   |                                          |
| flarum-nicknames                     | v1.1.0   |                                          |
| flarum-mentions                      | v1.1.3   |                                          |
| flarum-markdown                      | v1.1.1   |                                          |
| flarum-lock                          | v1.1.0   |                                          |
| flarum-likes                         | v1.1.0   |                                          |
| flarum-lang-german                   | 1.1.4    |                                          |
| flarum-lang-english                  | v1.1.0   |                                          |
| askvortsov-auto-moderator            | v0.1.2   |                                          |
| antoinefr-bbcode-fa                  | v1.0.0   |                                          |
+--------------------------------------+----------+------------------------------------------+
Base URL: https://dev.dvdnarr.com
Installation path: /var/www/dvdnarr.com/flarum
Queue driver: sync
Mail driver: smtp
Debug mode: ON

Possible solution(s)
Do not parse content when HTML is activated

Additional Context

Add as home button

Currently when you click the add homepage option, it disables the set home button if it's already set as home page. But this doesn't give you the option to remove from homepage.

Expected behaviour: When you click the as homepage button, it adds to homepage and if it's already homepage button, disables it from being homepage.

Server returns 500 on every function

I've tried this extension but it only works once ๐Ÿ˜ข , here are my steps:

  1. Install & enable 0.1.1
  2. Add a page without HTML
  3. Browse this page
  4. Modify the page settings to enable HTML
  5. Click save, it returns 500 โ—
  6. After I refresh the pages list, it cannot load pages but return 500, the page preview also breaks down.

Logs

[2019-01-20 17:27:49] production.ERROR: Error: Call to a member function find() on null in /flarum/app/vendor/flarum/mentions/src/Listener/FormatUserMentions.php:76
Stack trace:
#0 /flarum/app/vendor/s9e/text-formatter/src/Utils.php(61): Flarum\Mentions\Listener\FormatUserMentions->Flarum\Mentions\Listener\{closure}(Array)
#1 [internal function]: s9e\TextFormatter\Utils::s9e\TextFormatter\{closure}(Array)
#2 /flarum/app/vendor/s9e/text-formatter/src/Utils.php(63): preg_replace_callback('((<USERMENTION)...', Object(Closure), '<r><QUOTE><i>&g...')
#3 /flarum/app/vendor/flarum/mentions/src/Listener/FormatUserMentions.php(83): s9e\TextFormatter\Utils::replaceAttributes('<r><QUOTE><i>&g...', 'USERMENTION', Object(Closure))
#4 /flarum/app/vendor/illuminate/events/Dispatcher.php(350): Flarum\Mentions\Listener\FormatUserMentions->render(Object(Flarum\Formatter\Event\Rendering))
#5 /flarum/app/vendor/illuminate/events/Dispatcher.php(200): Illuminate\Events\Dispatcher->Illuminate\Events\{closure}('Flarum\\Formatte...', Array)
#6 /flarum/app/vendor/flarum/core/src/Formatter/Formatter.php(78): Illuminate\Events\Dispatcher->dispatch('Flarum\\Formatte...')
#7 /flarum/app/vendor/fof/pages/src/Page.php(101): Flarum\Formatter\Formatter->render('<r><QUOTE><i>&g...', Object(FoF\Pages\Page))
#8 /flarum/app/vendor/illuminate/database/Eloquent/Concerns/HasAttributes.php(438): FoF\Pages\Page->getContentHtmlAttribute(NULL)
#9 /flarum/app/vendor/illuminate/database/Eloquent/Concerns/HasAttributes.php(340): Illuminate\Database\Eloquent\Model->mutateAttribute('content_html', NULL)
#10 /flarum/app/vendor/illuminate/database/Eloquent/Concerns/HasAttributes.php(313): Illuminate\Database\Eloquent\Model->getAttributeValue('content_html')
#11 /flarum/app/vendor/flarum/core/src/Database/AbstractModel.php(118): Illuminate\Database\Eloquent\Model->getAttribute('content_html')
#12 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(1382): Flarum\Database\AbstractModel->getAttribute('content_html')
#13 /flarum/app/vendor/fof/pages/src/Api/Serializer/PageSerializer.php(26): Illuminate\Database\Eloquent\Model->__get('content_html')
#14 /flarum/app/vendor/flarum/core/src/Api/Serializer/AbstractSerializer.php(71): FoF\Pages\Api\Serializer\PageSerializer->getDefaultAttributes(Object(FoF\Pages\Page))
#15 /flarum/app/vendor/tobscure/json-api/src/Resource.php(169): Flarum\Api\Serializer\AbstractSerializer->getAttributes(Object(FoF\Pages\Page), NULL)
#16 /flarum/app/vendor/tobscure/json-api/src/Resource.php(75): Tobscure\JsonApi\Resource->getAttributes()
#17 /flarum/app/vendor/tobscure/json-api/src/Collection.php(123): Tobscure\JsonApi\Resource->toArray()
#18 [internal function]: Tobscure\JsonApi\Collection->Tobscure\JsonApi\{closure}(Object(Tobscure\JsonApi\Resource))
#19 /flarum/app/vendor/tobscure/json-api/src/Collection.php(124): array_map(Object(Closure), Array)
#20 /flarum/app/vendor/tobscure/json-api/src/Document.php(181): Tobscure\JsonApi\Collection->toArray()
#21 /flarum/app/vendor/tobscure/json-api/src/Document.php(224): Tobscure\JsonApi\Document->toArray()
#22 /flarum/app/vendor/flarum/core/src/Api/JsonApiResponse.php(29): Tobscure\JsonApi\Document->jsonSerialize()
#23 /flarum/app/vendor/flarum/core/src/Api/Controller/AbstractSerializeController.php(113): Flarum\Api\JsonApiResponse->__construct(Object(Tobscure\JsonApi\Document))
#24 /flarum/app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(40): Flarum\Api\Controller\AbstractSerializeController->handle(Object(Zend\Diactoros\ServerRequest))
#25 /flarum/app/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(67): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}(Object(Zend\Diactoros\ServerRequest), Array)
#26 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\DispatchRoute->process(Object(Zend\Diactoros\ServerRequest), Object(Closure))
#27 /flarum/app/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(59): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#28 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flagrow\Terms\Middlewares\RegisterMiddleware->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#29 /flarum/app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#30 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\SetLocale->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#31 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(55): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#32 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithHeader->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#33 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(34): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#34 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#35 /flarum/app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#36 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\RememberFromCookie->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#37 /flarum/app/vendor/flarum/core/src/Http/Middleware/StartSession.php(62): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#38 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\StartSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#39 /flarum/app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(31): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#40 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\FakeHttpMethods->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#41 /flarum/app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(29): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#42 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\ParseJsonBody->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#43 /flarum/app/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(42): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#44 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\HandleErrors->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#45 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(91): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#46 /flarum/app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Zend\Stratigility\MiddlewarePipe->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#47 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\RequestHandler->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#48 /flarum/app/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#49 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePathRouter->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#50 /flarum/app/vendor/middlewares/base-path/src/BasePath.php(53): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#51 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePath->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#52 /flarum/app/vendor/zendframework/zend-httphandlerrunner/src/RequestHandlerRunner.php(95): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#53 /flarum/app/vendor/flarum/core/src/Http/Server.php(46): Zend\HttpHandlerRunner\RequestHandlerRunner->run()
#54 /flarum/app/public/index.php(22): Flarum\Http\Server->listen()
#55 {main}

Next Exception: Call to a member function find() on null in /flarum/app/vendor/flarum/core/src/Api/ErrorHandler.php:41
Stack trace:
#0 /flarum/app/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(44): Flarum\Api\ErrorHandler->handle(Object(Error))
#1 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\HandleErrors->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#2 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(91): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#3 /flarum/app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Zend\Stratigility\MiddlewarePipe->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#4 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\RequestHandler->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#5 /flarum/app/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#6 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePathRouter->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#7 /flarum/app/vendor/middlewares/base-path/src/BasePath.php(53): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#8 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePath->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#9 /flarum/app/vendor/zendframework/zend-httphandlerrunner/src/RequestHandlerRunner.php(95): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#10 /flarum/app/vendor/flarum/core/src/Http/Server.php(46): Zend\HttpHandlerRunner\RequestHandlerRunner->run()
#11 /flarum/app/public/index.php(22): Flarum\Http\Server->listen()
#12 {main}

Deleting a page does not refresh the page list

After clicking on the cross and confirming deletion, the page is still listed in the admin panel until a refresh is manually performed.

The page is deleted from the store with page.delete(), but the list of pages has its own array of pages that is not affected by it.

HTTP error 500 on /api/pages: "instance of __PHP_Incomplete_Class given"

I'm experiencing an error 500 without direct evidence what's causing it

When I load the admin pages and it tries to request /api/pages?page[offset]=0&page[limit]=20&sort=-time it's returning an error 500 with {"errors":[{"status":"500","code":"unknown"}]} as the response error code.

I distinctly remember it working and me making a first 'Privacy information' page with it, and I can see that page in the database under tables pages. It looks ok, about 2500 characters of content.. no idea whats going wrong.

I'm kinda new to Flarum; what can I do to debug the issue better?

[Feature request] Add permission control

It would be great to have control over user's access to a certain page. Right now it's impossible to create a page for "users only" and keep it unavailable for guests.
Ideally extension could provide setting permissions to a page for user groups - this would eliminate guest access and also provide much more flexibility (f.e. 'moderator only' pages).

Pages not accessible for non-registered users

My flarum-forum can only be viewed by registered users.
Wanted non-registered users to be able to view 2 specific pages using the pages-extension, but pages cannot be viewed by non-registered users.
How could I fix this please?
Thanks

FOF Pages dosent follow the HTML Code.

Bug Report

Current Behavior
Want to add outlook into the forum but doesn't follow the code i wanted to.

Steps to Reproduce

  1. Go to Admin Settings.
  2. Go to FOF Pages
  3. Click Add page
  4. Add code and others informations.
  5. Check HTML Support.
  6. Test it and we still not able to size the iframe.

Expected Behavior
Adding an iFrame with a specific size doesn't follow and lock to the size. Impossible to adjust whats we wanted.

Here a simple code:
<iframe src="https://outlook.live.com/owa/calendar/00000000-0000-0000-0000-000000000000/da18d3fe-5675-4b7f-95d6-2739a0214b74/cid-15E030418AC10077/index.html" style="width: 1000px; height: 600px;"></iframe>

Screenshots
https://imgur.com/a/zuwqUT4

Environment

  • Flarum version: FreeFlarum - BUILD 16
  • Extension version: 0.7.0
  • Website URL: https://shawny43.flarum.cloud
  • Webserver: FreeFlarum
  • Hosting environment: FreeFlarum
  • PHP version: Unknown (Only FreeFlarum know.)
  • Browser: Edge Chromium - Version 91.0.864.54 (Version official) (64 bits)
Output of "php flarum info", run this in terminal in your Flarum directory.

Only FreeFlarum can have access.

Possible solution(s)

Additional Context
Can't update or install by myself if all extensions was managed by FreeFlarum by proof (Subdomain.Flarum.cloud). I can't install or update at all.

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.