https://github.com/metastable-void/alarkhabil-frontend
Frontend codes for Al Arkhabil, the independent thought publication platform.
https://github.com/metastable-void/alarkhabil-frontend
cms cms-frontend frontend prerender rust web-frontend
Last synced: about 2 months ago
JSON representation
Frontend codes for Al Arkhabil, the independent thought publication platform.
- Host: GitHub
- URL: https://github.com/metastable-void/alarkhabil-frontend
- Owner: metastable-void
- License: apache-2.0
- Created: 2023-10-24T20:02:33.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-01T11:04:59.000Z (over 2 years ago)
- Last Synced: 2025-02-10T13:09:40.368Z (over 1 year ago)
- Topics: cms, cms-frontend, frontend, prerender, rust, web-frontend
- Language: TypeScript
- Homepage:
- Size: 236 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Al Arkhabil frontend server
Frontend codes for Al Arkhabil, the independent thought publication platform.
* [Backend code GitHub](https://github.com/metastable-void/alarkhabil-server)
## Notes
- This implementation does not support hosting on unsecured (not localhost nor https) sites. You will need an HTTPS-terminating reverse proxy for deploying this on the Internet.
## Routes
URL | Queries (processed by JS) | Description
----|---------|------------
/ | - | Top: a list of latest posts
/invites/ | - | JS required: create an invite
/signup/ | `?token={invite token}` | JS required: create a new account
/signin/ | - | JS required: sign in into an existing account
/account/ | - | JS required: account information and settings
/c/ | `?action=new_channel` | List of channels
/c/**:channel_handle**/ | `?action={edit,new_post}` | Channel information and latest posts of the channel
/c/**:channel_handle**/**:post_uuid**/ | `?action=edit` | A post in a channel
/authors/ | - | List of authors
/authors/**:author_uuid**/ | - | Author information and latest posts by the author
/tags/ | - | List of tags
/tags/**:tag_name**/ | - | List of posts with the tag
/meta/ | `?action=new_page` | List of meta pages
/meta/**:page_name**/ | `?action=edit` | A meta page.
### Frontend API
Method | URL | Description
-------|-----|------------
GET | /frontend/api/v1/config/get | Get site config
GET | /frontend/api/v1/timestamp/format?timestamp={u64} | Format UNIX timestamp
POST | /frontend/api/v1/markdown/parse | Parse Markdown into HTML
## Build
You will need Node.js and Rust installed.
```
npm install
npm run build
cargo build
```
## Configuration
```
cp ./example.env ./.env
# edit ./.env
cp -r ./branding-default ./branding
# edit files in ./branding
cp ./config-default.json ./config.json
# edit ./config.json
```
## License
Licensed under the Apache 2.0 license.
### Authors
- [@metastable-void](https://github.com/metastable-void)