gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 9ffbb353d0fda6a2aba9e67d56ac5ead12ce9047
parent bffbdeb5347d5d72ec43a46750cbe35f75699893
Author: tsmethurst <tobi.smethurst@klarrio.com>
Date:   Mon,  1 Mar 2021 15:41:43 +0100

bits n bobs

Diffstat:
M.gitignore | 6++++--
Mcmd/server/main.go | 26+++++++++++++-------------
Ainternal/ap/api.go | 20++++++++++++++++++++
Dinternal/api/api.go | 29-----------------------------
Dinternal/api/route_statuses.go | 31-------------------------------
Dinternal/api/router.go | 54------------------------------------------------------
Ainternal/client/api.go | 28++++++++++++++++++++++++++++
Ainternal/client/route_statuses.go | 31+++++++++++++++++++++++++++++++
Ainternal/client/router.go | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
9 files changed, 148 insertions(+), 129 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -1,2 +1,5 @@ # exclude the compiled binary -/server -\ No newline at end of file +/server + +# exclude built documentation, since readthedocs will build it for us anyway +/docs/_build diff --git a/cmd/server/main.go b/cmd/server/main.go @@ -1,25 +1,25 @@ /* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ package main import ( - "github.com/gotosocial/gotosocial/internal/api" + "github.com/gotosocial/gotosocial/internal/client" ) func main() { diff --git a/internal/ap/api.go b/internal/ap/api.go @@ -0,0 +1,20 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +// Package ap provides ActivityPub/federation functionality for GoToSocial +package ap diff --git a/internal/api/api.go b/internal/api/api.go @@ -1,29 +0,0 @@ -/* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -package api - -// API is the API exposed to the outside world for access by front-ends; this is distinct from the federation API -type API interface { - -} - -// api implements Api interface -type api struct { - -} diff --git a/internal/api/route_statuses.go b/internal/api/route_statuses.go @@ -1,31 +0,0 @@ -/* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -package api - -import ( - "net/http" - - "github.com/gin-gonic/gin" -) - -func statusGet(c *gin.Context) { - c.HTML(http.StatusOK, "index.tmpl", gin.H{ - "title": "Posts", - }) -} diff --git a/internal/api/router.go b/internal/api/router.go @@ -1,54 +0,0 @@ -/* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -package api - -import "github.com/gin-gonic/gin" - -// Router provides the http routes used by the API -type Router interface { - Route() -} - -// NewRouter returns a new router -func NewRouter() Router { - return &router{} -} - -// router implements the router interface -type router struct { - -} - -func (r *router) Route() { - ginRouter := gin.Default() - ginRouter.LoadHTMLGlob("web/template/*") - - apiGroup := ginRouter.Group("/api") - { - v1 := apiGroup.Group("/v1") - { - statusesGroup := v1.Group("/statuses") - { - statusesGroup.GET(":id", statusGet) - } - - } - } - ginRouter.Run() -} diff --git a/internal/client/api.go b/internal/client/api.go @@ -0,0 +1,28 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +// Package client AAAAAAAAAAAAAAA +package client + +// API is the client API exposed to the outside world for access by front-ends; this is distinct from the federation API +type API interface { +} + +// api implements Api interface +type api struct { +} diff --git a/internal/client/route_statuses.go b/internal/client/route_statuses.go @@ -0,0 +1,31 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +package client + +import ( + "net/http" + + "github.com/gin-gonic/gin" +) + +func statusGet(c *gin.Context) { + c.HTML(http.StatusOK, "index.tmpl", gin.H{ + "title": "Posts", + }) +} diff --git a/internal/client/router.go b/internal/client/router.go @@ -0,0 +1,52 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +package client + +import "github.com/gin-gonic/gin" + +// Router provides the http routes used by the API +type Router interface { + Route() +} + +// NewRouter returns a new router +func NewRouter() Router { + return &router{} +} + +// router implements the router interface +type router struct { +} + +func (r *router) Route() { + ginRouter := gin.Default() + ginRouter.LoadHTMLGlob("web/template/*") + + apiGroup := ginRouter.Group("/api") + { + v1 := apiGroup.Group("/v1", { + statusesGroup := v1.Group("/statuses") + { + statusesGroup.GET(":id", statusGet) + } + + }) + } + ginRouter.Run() +}