IRC logs of Freenode #BZFlag for Tuesday, 2019-04-30

*** spldart <spldart!~james@bzflag/contributor/spldart> has quit IRC (Quit: Leaving)11:12
*** BulletCatcher <BulletCatcher!~bc@bzflag/developer/BulletCatcher> has quit IRC (Ping timeout: 245 seconds)16:43
*** the_map <the_map!the_map@gateway/vpn/privateinternetaccess/themap/x-38220869> has quit IRC (Read error: Connection reset by peer)18:03
*** Opus <Opus!~opus@76.202.115.164> has joined #bzflag18:13
*** the_map <the_map!~the_map@unaffiliated/the-map/x-1795707> has joined #bzflag18:50
The_NoahWhat can I do to help with the REST API?19:11
allejoare you familiar with PHP?19:48
The_NoahI know a good amount.19:48
blast007I will work on getting some sort of plan written up19:54
The_NoahOkay.19:54
blast007the intention for now is to support organizations, server hosting keys, groups, fetching of some user information (so you can add users to groups, for instance), and organization specific API keys19:58
blast007player registration will still be through for forums for the time being19:58
blast007database access will be a mix of mysql and postgresql, with all the new stuff being in postgresql19:58
blast007I'm not sure if symfony or API Platform support having connections to multiple databases in an easy way19:59
allejodepending on our needs for mixing the two dbs, symfony does have a neat way of handling multiple connections20:01
blast007postgresql also has foreign data support: https://www.postgresql.org/docs/11/ddl-foreign-data.html  https://www.percona.com/blog/2018/08/24/postgresql-accessing-mysql-as-a-data-source-using-mysql_fdw/20:02
blast007https://github.com/EnterpriseDB/mysql_fdw20:03
blast007some parts of the API will also be "private", in the sense that it will only be available for the project-run front-end for managing organizations/groups/keys20:04
blast007so, the entire server hosting keys part is likely a private API, unless there's a good reason to have it otherwise20:04
blast007organization creation will be private, as would listing all organizations20:05
blast007I've started working with API Platform, and I did have it working at an initial level with organizations and server hosting keys20:05
allejoI haven't touched API Platform yet, but does that just manage the endpoints for us? or does it magically take care of front-end stuff to some extent?20:08
blast007it *could* do front-end stuff, but it'd be React or Vue.js talking to the API from the client-side, and I'd rather talk to the API from the server-side20:14
allejoi'm all for server side rendering of these pages20:17
blast007idea with the public API parts it that you'd have organization specific API keys to manipulate that organization's data20:34
blast007So, Leagutes United would be an organization, and create an API key to manage group memberships.  Then the web interface on the LU site could add/remove users from the league group(s).20:35
allejoooooo that sounds beautiful20:35
blast007The_Noah: you could start going through their documentation and tutorials: https://api-platform.com/docs/distribution/21:24
The_NoahOkay, I'll do that.21:25
blast007I installed it the Symfony Flex way, not the docker way, and I'm using the Symfony WebServerBundle to run it for development21:25
blast007it's a pretty cool system21:26
blast007automatically exposes the API via OpenAPI and Swagger UI21:26
The_NoahNice!21:28
*** the_map <the_map!~the_map@unaffiliated/the-map/x-1795707> has quit IRC (Quit: if you see this, I'm probably restarting my computer to fix it)21:34
*** the_map <the_map!the_map@gateway/vpn/privateinternetaccess/themap/x-38220869> has joined #bzflag21:34
*** spldart <spldart!~james@2601:2c5:c600:2365::518d> has joined #bzflag22:04
*** spldart <spldart!~james@2601:2c5:c600:2365::518d> has quit IRC (Changing host)22:04
*** spldart <spldart!~james@bzflag/contributor/spldart> has joined #bzflag22:04
*** ChanServ sets mode: +v spldart22:04
*** BulletCatcher <BulletCatcher!~bc@bzflag/developer/BulletCatcher> has joined #bzflag23:02
*** ChanServ sets mode: +v BulletCatcher23:02

Generated by irclog2html.py 2.17.3.dev0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!