ryanlelek / Raneto

Markdown powered Knowledgebase Wiki for Node.js
https://raneto.com
MIT License
2.79k stars 446 forks source link

ROADMAP: v0.19 #374

Open ryanlelek opened 2 years ago

ryanlelek commented 2 years ago

Why Am I Being Notified? Unsubscribe!

You were tagged because you submitted an issue in the past for Raneto.
This is mostly for documentation reasons as we sort through the repo. Join the discussion or Unsubscribe by clicking the "Unsubscribe" button in the right sidebar =>

Goals

Here's a summary of where the project is heading based on the submitted issues.
Version 0.19 will have multiple changes and get us on the path for Version 1.0.

Have questions or a suggestion? Comment below. This post will be updated accordingly and kept current based on the discussion.

Also, if you have a better way to plan and collaborate on these roadmaps, please share. (GitHub Projects?)


Must Haves

Mailing List

Email list to send only announcements on releases, security, etc. Pending. Open to suggestions on software.

Documentation Update

See #373

Extended Testing

Expand the test suite and further break down code into smaller components

Extract example/ directory to another repo

Reporter(s) @dkebler @jrichardsz The current example/ directory has references to this repository as its parent.
This is confusing new and existing users.
We should have a separate repository for the example and not mix the two Related:

Upgrade to Bootstrap v5.x

Reporter(s) @ryanlelek @GrahamDumpleton Upgrade to keep current with the module and design trends Related:

Deployment Options

Reporter(s) @will-code-for-pizza @ryanlelek

Static files in content/

Reporter(s) @chenfengrugao @zazaji Raneto users want to upload static assets like images, and there is not a good way to do that currently.
The content/ directory contains only Markdown files. We want to allow a way to serve static files as well. Related:

Extensive Testing of Reverse Proxy

Reporter(s) @djhworld @AnkushLambdatest Reverse Proxies like HAProxy, Nginx, Caddy, etc are more common today. Raneto should fully support a base uri, path prefixes, and IP-passthrough (X-Forwarded-For and proxy-protocol-v2) Related:

Translation Fixes

Reporter(s) @jci Current: Some translation snippets are not being used correctly. The whole repo needs to be double-checked for usage. Examples "Login Button" and "Password" on Login page Desired: Translations should apply to common user interface elements Related:

Remove Extra Dependencies


Nice to Haves

Pending - Let's Encrypt Automation

This can get sticky based on where things are deployed. Marking as it's an important feature in 2022

Allow redirects per-page or path prefix

Reporter(s) @ArtFlag As documents change, it may be needed to redirect a page to a new page. We can handle this on a per-page basis with metadata or on a path prefix level Related

Fine-Grained Permissions

Reporter(s) @mtaobiz @cosmosresident @fbo @BenGoodmanUK @DoctorRiceYouSee Current: Viewing is public, editing is admin/login. Viewing can also require login. Desired: Fine-grained role permissions that can be granted to users. "guest" for not logged in, etc. This will allow certain pages or categories to be blocked. Related:

LaTeX and Scientific Support

Reporter(s) @theinexplicablefuzz [unknown ghost acct] @kongxiangyan Support advanced writing notations LaTeX and scientific (Mathjax, etc) to make it easier to express math equations, scientific topics, etc. Related:

Long Shot

Adding these for discussion but will likely only be part of a future release

Automated Backup

The reason this is needed is because editing can take place on the server. Send content/ on a schedule to a remote server of some kind. Destination: Current Suggestion - Send tar file to S3-compatible storage

Shared Content

Reporter(s) @jmgilman Raneto probably wont need to be super-scalable for concurrent users but for high-availability reasons, two or more machines may need to share Raneto content files. Syncing doesn't make sense for 3+ machines, so having a shared SMB/NFS backend may be desired. Or pulling from S3-compatible storage and caching. Related:

Static Files

Current: Markdown files are rendered on page request. This increases machine work with every request and can also introduce security issues. Desired: On edit or creation, render markdown to static files. Then display and search the static files to visitors

eHonnef commented 11 months ago

Hello,

Any plans to include OpenID connect integration? So I can use my keycloak server for authentication.

Thanks :)

ryanlelek commented 9 months ago

Hi @eHonnef , No current plans for OpenID and the backlog is already pretty large so no ETA on when it would be available. We currently have normal user/pass and Google Sign In but I understand if you don't want to use those. If you're interested in working on a PR, we'll do our best to guide