Plume, haskal edition https://blog.lain.faith
Go to file
Igor Galić 3d27e283ad
add enum containing all successful route returns (#614)
* add enum containing all successful route returns

This enum derives `Responder`, so it can be used as route result.
We also implement `From`, so it can be converted

* disable clippy warning about this enum

There's no use trying to chase this warning.
The next warning will be about `Redirect`, which itself is 360 byte,
according to @fdb-hiroshima (thanks for the research!)

So, if anything, we can try to get Rocket to work on that!

* refactor routes/posts to only use one level of Result

* admin settings error is not an ErrorPage, so dont use Result<>

* refactor: use early return to remove indent of main logic

This diff is absolutely atrocious.
but the resulting readability is worth it

* refactor routes/post for early returns & RespondOrRedirect

* refactor routes/session for early returns & use RespondOrRedirect

* refactor routes/user -- add another field to enum

* refactor routes/blogs for early returns & RespondOrRedirect

* refactor routes/blogs for early returns & RespondOrRedirect

This is a final refactor of `pub fn update()` for readability.
We're removing at least one indentation level.
2019-06-14 09:33:30 +02:00
.circleci Fix Crowdin upload (#576) 2019-05-12 20:14:59 +01:00
.github/ISSUE_TEMPLATE Update issue templates (#471) 2019-03-12 17:20:53 +01:00
migrations Store password reset requests in database (#610) 2019-06-04 19:55:17 +01:00
plume-api Remove Canapi (#540) 2019-04-28 22:17:21 +01:00
plume-cli update dependancies (#574) 2019-05-12 10:41:47 +02:00
plume-common refactor code to use Shrinkwraprs and diesel-derive-newtype (#598) 2019-05-25 19:23:45 +01:00
plume-front Theme update (#553) 2019-05-18 13:09:51 +01:00
plume-macro update dependancies (#574) 2019-05-12 10:41:47 +02:00
plume-models Store password reset requests in database (#610) 2019-06-04 19:55:17 +01:00
po refactor code to use Shrinkwraprs and diesel-derive-newtype (#598) 2019-05-25 19:23:45 +01:00
script Fix arm builds (#612) 2019-06-04 19:18:36 +01:00
src add enum containing all successful route returns (#614) 2019-06-14 09:33:30 +02:00
static Update textarea overflow to scroll (#609) 2019-06-02 21:35:09 +01:00
templates Store password reset requests in database (#610) 2019-06-04 19:55:17 +01:00
.codecov.yml Make Plume compile on release (#365) 2018-12-22 18:27:21 +01:00
.dockerignore Sample compose file and Dockerfile for deployment 2018-09-04 00:32:47 +02:00
.editorconfig Slightly improve the media experience (#452) 2019-03-06 14:11:36 +01:00
.gitignore Add tests for plume webserver (#513) 2019-04-06 17:41:57 +02:00
CODE_OF_CONDUCT.md Add a CoC 2018-09-18 13:59:43 +01:00
Cargo.lock refactor code to use Shrinkwraprs and diesel-derive-newtype (#598) 2019-05-25 19:23:45 +01:00
Cargo.toml refactor code to use Shrinkwraprs and diesel-derive-newtype (#598) 2019-05-25 19:23:45 +01:00
Dockerfile import migrations and don't require diesel_cli for admins (#555) 2019-04-29 16:30:20 +02:00
Dockerfile.dev Use multi step build to limit the docker image size (#416) 2019-01-09 17:48:18 +01:00
ISSUE_TEMPLATE.md Create ISSUE_TEMPLATE.md 2018-09-18 15:40:17 +01:00
LICENSE Add a license (AGPLv3) 2018-05-01 13:01:38 +01:00
README.md Update README.md 2018-12-21 19:53:09 +01:00
build.rs Theme update (#553) 2019-05-18 13:09:51 +01:00
crowdin.yml Fix Crowdin upload (#576) 2019-05-12 20:14:59 +01:00
diesel.toml add sqlite migrations 2018-09-30 14:13:52 +02:00
rust-toolchain use circleci instead of travis (#511) 2019-04-01 20:28:23 +02:00

README.md

Plume's logo Plume

Build status Code coverage

WebsiteDocumentationContributeInstances list

Plume is a federated blogging engine, based on ActivityPub. It uses the Rocket framework, and Diesel to interact with the database.

It is not yet ready for production use, but we have all the basic features (account management, blogs, articles, comments, etc) and a basic federation.

Feel free to join our Matrix room: #plume:disroot.org to discuss about the project!

We also have a Loomio group to debate and vote and features. Feel free to join it to take part in Plume's decision process.

For more informations on the different ways to contribute, check out our contribution page. We are welcoming any kind of contribution, and you can probably find a way to help.

As we want the various spaces related to the project (GitHub, Matrix, Loomio, etc) to be as safe as possible for everyone, we adopted a code of conduct. Please read it and make sure you accept it before contributing.