rename geochan

This commit is contained in:
Swrup 2025-04-15 05:59:03 +02:00
parent 55d2abefb4
commit 930c49e8d6
11 changed files with 33 additions and 61 deletions

View file

@ -1,43 +1,14 @@
# Permap # Geochan
Permap is an open source geo-message-board software written in OCaml. Geochan is an open source imageboard software written in OCaml.
It's defining feature is to have geolocalized threads.
Permap was initially made to be a gardening/permaculture forum.
Permap's aim is to help people find friends with similar interests around them
and build local communities.
You can make threads with geographical coordinate, You can make threads with geographical coordinate,
this way you can find people near you doing interesting things, this way you can talk about a place or find people near you doing interesting things
socialize with them and share local knowledge. and socialize with them.
## Permap's future
- Make permap federate
- More than coordinates
Make threads on anything with a geographical position.
Instead of making threads with a simple (latitude * longitude) data,
we want to be able to make threads on any OpenStreetMap's item/ActivityPub object
that can resolve to a geographical position.
# License # License
[AGPL-or-later] [AGPL-or-later]
[AGPL-or-later]: ./LICENSE.md [AGPL-or-later]: ./LICENSE.md
# TODO
- post nb limit
- make it a web-app instead
- rework style, full screen map
- dream -> drame
- good moderation/admin system
- all of [issues](https://git.zapashcanon.fr/zapashcanon/permap/issues)
- imagemagick: WARNING: The convert command is deprecated in IMv7
- db error on login fail instead of clean login error msg
- login fail on login with email?

View file

@ -5,7 +5,7 @@
(implicit_transitive_deps false) (implicit_transitive_deps false)
(name permap) (name geochan)
(license AGPL-3.0-or-later) (license AGPL-3.0-or-later)
@ -18,18 +18,18 @@
"Léo Andrès <contact@ndrs.fr>") "Léo Andrès <contact@ndrs.fr>")
(source (source
(uri git+https://git.zapashcanon.fr/zapashcanon/permap.git)) (uri git+https://git.zapashcanon.fr/zapashcanon/geochan.git))
(homepage https://git.zapashcanon.fr/zapashcanon/permap) (homepage https://git.zapashcanon.fr/zapashcanon/geochan)
(bug_reports https://git.zapashcanon.fr/zapashcanon/permap/issues) (bug_reports https://git.zapashcanon.fr/zapashcanon/geochan/issues)
(documentation https://doc.zapashcanon.fr/permap) (documentation https://doc.zapashcanon.fr/geochan)
(package (package
(name permap) (name geochan)
(synopsis "OCaml library/executable to TODO") (synopsis "A geo-imageboard written in OCaml")
(description "permap is an OCaml library/executable to TODO.") (description "Geochan is an open source imageboard with threads pinned to a geolocation.")
(tags (tags
(imageboard forum map leaflet single-page-application functional-reactive-programming)) (imageboard forum map leaflet single-page-application functional-reactive-programming))
(depends (depends

View file

@ -1,7 +1,8 @@
# This file is generated by dune, edit dune-project instead # This file is generated by dune, edit dune-project instead
opam-version: "2.0" opam-version: "2.0"
synopsis: "OCaml library/executable to TODO" synopsis: "A geo-imageboard written in OCaml"
description: "permap is an OCaml library/executable to TODO." description:
"Geochan is an open source imageboard with threads pinned to a geolocation."
maintainer: ["swrup <swrup@protonmail.com>" "Léo Andrès <contact@ndrs.fr>"] maintainer: ["swrup <swrup@protonmail.com>" "Léo Andrès <contact@ndrs.fr>"]
authors: ["swrup <swrup@protonmail.com>" "Léo Andrès <contact@ndrs.fr>"] authors: ["swrup <swrup@protonmail.com>" "Léo Andrès <contact@ndrs.fr>"]
license: "AGPL-3.0-or-later" license: "AGPL-3.0-or-later"
@ -13,9 +14,9 @@ tags: [
"single-page-application" "single-page-application"
"functional-reactive-programming" "functional-reactive-programming"
] ]
homepage: "https://git.zapashcanon.fr/zapashcanon/permap" homepage: "https://git.zapashcanon.fr/zapashcanon/geochan"
doc: "https://doc.zapashcanon.fr/permap" doc: "https://doc.zapashcanon.fr/geochan"
bug-reports: "https://git.zapashcanon.fr/zapashcanon/permap/issues" bug-reports: "https://git.zapashcanon.fr/zapashcanon/geochan/issues"
depends: [ depends: [
"dune" {>= "3.0"} "dune" {>= "3.0"}
"bos" "bos"
@ -63,4 +64,4 @@ build: [
"@doc" {with-doc} "@doc" {with-doc}
] ]
] ]
dev-repo: "git+https://git.zapashcanon.fr/zapashcanon/permap.git" dev-repo: "git+https://git.zapashcanon.fr/zapashcanon/geochan.git"

View file

@ -350,7 +350,7 @@ let def_page_title t_s =
| New_thread -> "new thread" | New_thread -> "new thread"
| kind -> Kind.to_string kind ) | kind -> Kind.to_string kind )
in in
Fmt.str "%s | Permap" s |> String.capitalize_ascii |> Jstr.v Fmt.str "%s | Geochan" s |> String.capitalize_ascii |> Jstr.v
|> Document.set_title G.document |> Document.set_title G.document
in in
S.map (fun t -> t.page) t_s |> S.changes |> hold_endless set_title; S.map (fun t -> t.page) t_s |> S.changes |> hold_endless set_title;

View file

@ -1,12 +1,12 @@
(executable (executable
(public_name permap) (public_name geochan)
(modules permap) (modules geochan)
(package permap) (package geochan)
(libraries (libraries
config_serv_impl ; implements config_serv config_serv_impl ; implements config_serv
config_impl ; implements config config_impl ; implements config
shared shared
permap geochan
;; ;;
dream dream
fmt fmt
@ -19,9 +19,9 @@
(:standard -open Prelude))) (:standard -open Prelude)))
(library (library
(name permap) (name geochan)
(wrapped false) (wrapped false)
(modules :standard \ permap json_data syntax types err validate_str) (modules :standard \ geochan json_data syntax types err validate_str)
(libraries (libraries
config_serv ; virtual config_serv ; virtual
config ; virtual config ; virtual

View file

@ -15,7 +15,7 @@ let page_of_res res =
(* TODO have a loading animation *) (* TODO have a loading animation *)
let app_start_page = let app_start_page =
let title = "Permap" in let title = "Geochan" in
let body = El.body [] in let body = El.body [] in
let styles = let styles =
let leaflet_style = "/assets/css/leaflet.css" in let leaflet_style = "/assets/css/leaflet.css" in

View file

@ -1,9 +1,9 @@
module App_id = struct module App_id = struct
let qualifier = "org" let qualifier = "org"
let organization = "Permap" let organization = "Geochan"
let application = "permap" let application = "geochan"
end end
module Project_dirs = Directories.Project_dirs (App_id) module Project_dirs = Directories.Project_dirs (App_id)

View file

@ -138,7 +138,7 @@ let print_config_serv () =
| Error (`Msg _) -> | Error (`Msg _) ->
Fmt.error_msg "error when creating %a" Fpath.pp data_dir Fmt.error_msg "error when creating %a" Fpath.pp data_dir
in in
let db_path = Fpath.(data_dir / "permap.db") in let db_path = Fpath.(data_dir / "geochan.db") in
let s = Uri.of_string @@ Fmt.str "sqlite3://%a" Fpath.pp db_path in let s = Uri.of_string @@ Fmt.str "sqlite3://%a" Fpath.pp db_path in
print_uri "db_uri" s; print_uri "db_uri" s;
() ()

View file

@ -1,7 +1,7 @@
default_logger true default_logger true
custom_logger true custom_logger true
admin admin admin admin
source_code_url "https://git.zapashcanon.fr/swrup/permap" source_code_url "https://git.zapashcanon.fr/swrup/geochan"
hostname "localhost" hostname "localhost"
port 3696 port 3696
csrf_lifetime 3600 csrf_lifetime 3600

View file

@ -6,7 +6,7 @@
config_test ; implements config module config_test ; implements config module
shared shared
comment comment
permap geochan
;; ;;
alcotest alcotest
fmt fmt