WIP: custom wiki in golang that utilizes git and serves pages with html, markdown, and css support
Go to file
sad 147ce945c3 Merge pull request 'dynamic-pages' (#1) from dynamic-pages into main
Reviewed-on: https://git.tcp.direct/s4d/tcp-wiki/pulls/1
2024-02-10 02:53:40 +00:00
assets implement dynamic pages 2024-02-09 19:27:04 -07:00
src implement dynamic pages 2024-02-09 19:27:04 -07:00
.gitignore added better server handling and branch support 2023-04-12 16:22:36 -06:00
README.md implement dynamic pages 2024-02-09 19:36:18 -07:00
dev.sh added better server handling and branch support 2023-04-12 16:22:36 -06:00
go.mod added wip comments and breaking changes 2023-04-12 03:48:12 -06:00
go.sum added wip comments and breaking changes 2023-04-12 03:48:12 -06:00

README.md

H0wdy!!!

feel free to commit, leave suggestions/ideas, issues, or really anything <3

What is TCP.WIKI ?

https://tcp.ac/i/IFAZE

Project Goals

secure and verifiable wiki for projects, code, courses, documents, articles, tutorials, and more

Setup

For a normal user you can follow this process:

First clone the repo:

git clone https://git.tcp.direct/S4D/tcp-wiki.git

Then you have to cd into the repo's folder and run/compile:

cd tcp-wiki/src
go run .

Then you goto your browser and visit: http://127.0.0.1:8080/

For a develeper setup you can follow this process:

First clone the repo:

git clone ssh://git@git.tcp.direct:2222/S4D/tcp-wiki.git

Then cd and run dev.sh

cd tcp-wiki
bash dev.sh

Then you just have to execute this to run the server:

cd src && go run .

Then you goto your browser and visit: http://127.0.0.1:8080/

This method just adds in some handy symlinks for development purposes

Want to use with your own repo?

All you have to do is modify the following lines in the src/main.go file:

const repoURL = "https://git.tcp.direct/S4D/tcp-wiki.git"

Change https://git.tcp.direct/S4D/tcp-wiki.git to your repo link, and:

const repoBRANCH = "main"

change main to your specific repo's branch and you should be good to go!

TODO

  • config files
  • Webhook support for auto pull on push/update of the git repo
  • Git Branch support
  • add a star/upvote/like feature for pages
  • edit/version tracker
    • Author
    • last edited
    • last editor/commit [?] maybe working
    • PGP Signed & Verification
  • pgp signed intergration
  • comments using bitcask - generated in comments.db/
    • verification - no login pgp
    • captcha
    • sub rating system
    • sort by date etc
    • reply to replies
    • set security controls per page
    • auto refresh on post
  • dynamically generated links for all avaiable pages
    • sitemap
    • anti robot shit here
    • acual working pages!?
    • image support